Extreme Optimization™: Complexity made simple.

Math and Statistics
Libraries for .NET

  • Home
  • Features
    • Math Library
    • Vector and Matrix Library
    • Statistics Library
    • Performance
    • Usability
  • Documentation
    • Introduction
    • Math Library User's Guide
    • Vector and Matrix Library User's Guide
    • Data Analysis Library User's Guide
    • Statistics Library User's Guide
    • Reference
  • Resources
    • Downloads
    • QuickStart Samples
    • Sample Applications
    • Frequently Asked Questions
    • Technical Support
  • Blog
  • Order
  • Company
    • About us
    • Testimonials
    • Customers
    • Press Releases
    • Careers
    • Partners
    • Contact us
Introduction
Deployment Guide
Configuration
Using Parallelism
Expand Mathematics Library User's GuideMathematics Library User's Guide
Expand Vector and Matrix Library User's GuideVector and Matrix Library User's Guide
Expand Data Analysis Library User's GuideData Analysis Library User's Guide
Expand Statistics Library User's GuideStatistics Library User's Guide
Expand Data Access Library User's GuideData Access Library User's Guide
Expand ReferenceReference
  • Extreme Optimization
    • Features
    • Solutions
    • Documentation
    • QuickStart Samples
    • Sample Applications
    • Downloads
    • Technical Support
    • Download trial
    • How to buy
    • Blog
    • Company
    • Resources
  • Documentation
    • Introduction
    • Deployment Guide
    • Configuration
    • Using Parallelism
    • Mathematics Library User's Guide
    • Vector and Matrix Library User's Guide
    • Data Analysis Library User's Guide
    • Statistics Library User's Guide
    • Data Access Library User's Guide
    • Reference
  • Reference
    • Extreme
    • Extreme.Collections
    • Extreme.Data
    • Extreme.Data.Json
    • Extreme.Data.Matlab
    • Extreme.Data.R
    • Extreme.Data.Stata
    • Extreme.Data.Text
    • Extreme.DataAnalysis
    • Extreme.DataAnalysis.Linq
    • Extreme.Mathematics
    • Extreme.Mathematics.Algorithms
    • Extreme.Mathematics.Calculus
    • Extreme.Mathematics.Calculus.OrdinaryDifferentialEquations
    • Extreme.Mathematics.Curves
    • Extreme.Mathematics.Curves.Nonlinear
    • Extreme.Mathematics.Distributed
    • Extreme.Mathematics.Distributed.Cuda
    • Extreme.Mathematics.EquationSolvers
    • Extreme.Mathematics.FSharp
    • Extreme.Mathematics.Generic
    • Extreme.Mathematics.Generic.LinearAlgebra
    • Extreme.Mathematics.Generic.LinearAlgebra.Implementation
    • Extreme.Mathematics.Generic.LinearAlgebra.Providers
    • Extreme.Mathematics.Generic.SignalProcessing
    • Extreme.Mathematics.Implementation
    • Extreme.Mathematics.LinearAlgebra
    • Extreme.Mathematics.LinearAlgebra.Complex
    • Extreme.Mathematics.LinearAlgebra.Complex.Decompositions
    • Extreme.Mathematics.LinearAlgebra.Implementation
    • Extreme.Mathematics.LinearAlgebra.IO
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers.Preconditioners
    • Extreme.Mathematics.LinearAlgebra.Providers
    • Extreme.Mathematics.LinearAlgebra.Sparse
    • Extreme.Mathematics.Optimization
    • Extreme.Mathematics.Optimization.Genetic
    • Extreme.Mathematics.Optimization.LineSearches
    • Extreme.Mathematics.Random
    • Extreme.Mathematics.SignalProcessing
    • Extreme.Numerics.FSharp
    • Extreme.Statistics
    • Extreme.Statistics.Distributions
    • Extreme.Statistics.IO
    • Extreme.Statistics.Linq
    • Extreme.Statistics.Multivariate
    • Extreme.Statistics.Random
    • Extreme.Statistics.Tests
    • Extreme.Statistics.TimeSeriesAnalysis
  • Extreme.DataAnalysis
    • Accumulator Class
    • Aggregator(T, U) Class
    • Aggregator2(T, U) Class
    • Aggregator2Group Class
    • Aggregator2Group(T) Class
    • AggregatorGroup Class
    • AggregatorGroup(T) Class
    • Aggregators Class
    • BoundaryIntervalBehavior Enumeration
    • CategoricalEncoding Class
    • DataFrame Class
    • DataFrame(R, C) Class
    • DataFrameRow(R, C) Class
    • DateTimeExtensions Class
    • DateTimeUnit Enumeration
    • Direction Enumeration
    • Grouping Class
    • Grouping(TKey) Class
    • Histogram Class
    • Histogram(T) Class
    • IAccumulator(T, U) Interface
    • IAccumulator2(T, U) Interface
    • IAccumulator2(T, U, V) Interface
    • IAggregator Interface
    • IAggregator(T) Interface
    • IAggregator2 Interface
    • IAggregator2(T) Interface
    • IDataFrame Interface
    • IGrouping Interface
    • IIndex Interface
    • Index Class
    • Index(T) Class
    • IntervalIndex(T) Class
    • IPivot Interface
    • JoinIndex Class
    • JoinType Enumeration
    • MissingValueAction Enumeration
    • MissingValueException Class
    • MultipleMissingValueAction Enumeration
    • Pivot Class
    • Pivot(R, C) Class
    • RankTiebreaker Enumeration
    • Recurrence Class
    • SortOrder Enumeration
    • SpecialBins Enumeration
    • Subset Class
    • TypePreservingAggregatorGroup Class
    • VectorExtensions Class
  • DataFrame(R, C) Class
    • DataFrame(R, C) Constructor
    • Properties
    • Methods
    • Operators
  • Methods
    • AddColumn Method Overloads
    • Aggregate Method Overloads
    • AggregateBy Method Overloads
    • Append Method Overloads
    • ApplyWith(T) Method
    • Clone Method
    • CombineWith(T) Method
    • Describe Method
    • GetColumn Method Overloads
    • GetColumns Method Overloads
    • GetColumnsAt Method Overloads
    • GetEnumerator Method
    • GetNearestRow Method
    • GetNearestRowAs(T) Method
    • GetNearestRows Method
    • GetRow Method
    • GetRowAs(T) Method
    • GetRowAt Method
    • GetRowAtAs(T) Method
    • GetRows Method Overloads
    • GetRowsAt Method
    • GroupBy Method Overloads
    • GroupedBy(R1) Method
    • Head Method
    • MakeCategorical Method Overloads
    • MakeCategoricalAt Method Overloads
    • Map Method Overloads
    • MapAndAppend Method Overloads
    • MapAndInsertAfter Method Overloads
    • MapAndReplace Method Overloads
    • Pivot Method Overloads
    • PivotBy(R1, C1) Method
    • RemoveColumn Method
    • RemoveColumnAt Method
    • RemoveColumnsWithMissingValues Method
    • RemoveRowIndex Method Overloads
    • RemoveRows Method Overloads
    • RemoveRowsAt Method
    • RemoveRowsWithMissingValues Method Overloads
    • RenameColumn Method Overloads
    • RenameColumns Method
    • ReplaceMissingValues Method Overloads
    • SelectRows Method Overloads
    • SortBy Method Overloads
    • SortByIndex Method Overloads
    • Stack Method Overloads
    • Summarize Method Overloads
    • Tail Method
    • ToMatrix(T) Method
    • ToString Method
    • TransformColumns Method Overloads
    • TryGetRow Method
    • Unstack(T) Method
    • WithColumnIndex(C1) Method
    • WithRowIndex Method Overloads
  • AggregateBy Method Overloads
    • AggregateBy(R1) Method (IList(R1), AggregatorGroup[])
    • AggregateBy(R1, T) Method (IList(R1), AggregatorGroup(T))
    • AggregateBy(R1) Method (IList(R1), Tuple(C, AggregatorGroup)[])
    • AggregateBy(R1) Method (C, AggregatorGroup[])
    • AggregateBy(R1, T) Method (C, AggregatorGroup(T))
    • AggregateBy(R1, T, U) Method (C, Func(Vector(T), U))
    • AggregateBy(R1) Method (C, Tuple(C, AggregatorGroup)[])
    • AggregateBy(R1) Method (Grouping(R1), AggregatorGroup[])
    • AggregateBy(R1, T) Method (Grouping(R1), AggregatorGroup(T))
    • AggregateBy(R1) Method (Grouping(R1), IDictionary(C, AggregatorGroup))
    • AggregateBy(R1) Method (Grouping(R1), Tuple(C, AggregatorGroup)[])
    • AggregateBy(R1) Method (IGrouping, AggregatorGroup[])
    • AggregateBy(R1, T) Method (IGrouping, AggregatorGroup(T))
    • AggregateBy(R1) Method (IGrouping, Tuple(C, AggregatorGroup)[])
    • AggregateBy(R1, C1) Method (Grouping(R1), IEnumerable(Tuple(C, AggregatorGroup)), Index(C1))
  • AggregateBy(R1, T) Method (IList(R1), AggregatorGroup(T))
DataFrameR, CAggregateByR1, T Method (IListR1, AggregatorGroupT)Extreme Optimization Numerical Libraries for .NET Professional
Returns a new data frame that aggregates the columns grouped by the specified vector.

Namespace: Extreme.DataAnalysis
Assembly: Extreme.Numerics.Net40 (in Extreme.Numerics.Net40.dll) Version: 6.0.16073.0 (6.0.17114.0)
Syntax

C#
VB
C++
F#
Copy
public DataFrame<R1, C> AggregateBy<R1, T>(
	IList<R1> groupingVector,
	AggregatorGroup<T> aggregator
)
Public Function AggregateBy(Of R1, T) ( 
	groupingVector As IList(Of R1),
	aggregator As AggregatorGroup(Of T)
) As DataFrame(Of R1, C)
public:
generic<typename R1, typename T>
DataFrame<R1, C>^ AggregateBy(
	IList<R1>^ groupingVector, 
	AggregatorGroup<T>^ aggregator
)
member AggregateBy : 
        groupingVector : IList<'R1> * 
        aggregator : AggregatorGroup<'T> -> DataFrame<'R1, 'C> 

Parameters

groupingVector
Type: System.Collections.GenericIListR1
The vector that contains the group memberships.
aggregator
Type: Extreme.DataAnalysisAggregatorGroupT
The aggregator to apply to each group.

Type Parameters

R1
The element type of the grouping vector.
T
The type of the result of the aggregator.

Return Value

Type: DataFrameR1, C
A new data frame, with rows indexed by the unique elements of groupingVector, and as values the result of applying aggregator to each group of each column.
Exceptions

ExceptionCondition
ArgumentNullException

groupingVector is .

-or-

aggregator is .

Version Information

Numerical Libraries

Supported in: 6.0
See Also

Reference

DataFrameR, C Class
AggregateBy Overload
Extreme.DataAnalysis Namespace

Copyright (c) 2004-2017 ExoAnalytics Inc.

Send comments on this topic to support@extremeoptimization.com

Copyright © 2004-2018, Extreme Optimization. All rights reserved.
Extreme Optimization, Complexity made simple, M#, and M Sharp are trademarks of ExoAnalytics Inc.
Microsoft, Visual C#, Visual Basic, Visual Studio, Visual Studio.NET, and the Optimized for Visual Studio logo
are registered trademarks of Microsoft Corporation.