Follow

# Basic Aggregation Methods

You have already been introduced to Flow Aggregation Methods.  Let's look at how each of the standard Aggregation Methods that Flow provides transforms (i.e. aggregates) data points within a single time period.  The sample data introduced earlier is shown here again.

 Point Timestamp Raw Value 1 05:55:03 1.6 2 06:03:23 2.3 3 06:07:30 2.5 4 06:10:22 3 5 06:15:52 2.1 6 06:20:40 1.9 7 06:25:13 2.5 8 06:29:44 2.3 9 06:35:14 1.6 10 06:41:14 1.8 11 06:46:03 2.3 12 06:52:35 2.9 13 06:55:26 2.2 14 07:05:40 1.4

### Sum

When using the “Sum” aggregation method, Flow will calculate the sum of points 2 to 13. It will exclude the “boundary” value, since point 1 before the “boundary”, would have been used in the previous time period’s calculation.

For the above data points, and for the period from 06:00 to 07:00, Sum = 27.4

### Average

When using the “Average” aggregation method, Flow calculates a time weighted average. The “boundary” value is included in the calculation.

For the above data points, and for the period from 06:00 to 07:00, Average = 2.213722222

See the article on time weighted averages for a detailed explanation on how this is calculated.

### Minimum

When using the “Minimum” aggregation method, Flow determines the minimum value of all the points within the time period, including the “boundary” value.

For the above data points, and for the period from 06:00 to 07:00, Minimum = 1.6

While Point 14 has a value of 1.4, it is not included in the minimum aggregation because it is outside the time period.

### Maximum

When using the “Maximum” aggregation method, Flow determines the maximum value of all the points within the time period, including the “boundary” value.

For the above data points, and for the period from 06:00 to 07:00, Maximum = 3

### Range

When using the “Range” aggregation method, Flow determines the maximum and the minimum values of all the points within the time period, including the “boundary” value, and then returns the difference between the maximum and the minimum.

With the above data points, Range = Maximum - Minimum = 3 - 1.6 = 1.4

### First

When using the “First” aggregation method, Flow will return the “boundary” value.

For the above data points, and for the period from 06:00 to 07:00, First = 1.6

### Last

When using the “Last” aggregation method, Flow will return the value of the last point before the end of the time period.

If a point falls exactly on the end of the time period (i.e. 07:00:00), it will be excluded from the evaluation.

For the above data points, and for the period from 06:00 to 07:00, Last = 2.2

### Delta

When using the “Delta” aggregation method, Flow will sum the difference between each consecutive point, including the “boundary” point.

For the above data points, and for the period from 06:00 to 07:00, Delta = 0.6, the sum of all the values in the Delta column in the table below.

 Point Timestamp Raw Value Delta 1 05:55:03 1.6 N/A 2 06:03:23 2.3 0.7 3 06:07:30 2.5 0.2 4 06:10:22 3 0.5 5 06:15:52 2.1 -0.9 6 06:20:40 1.9 -0.2 7 06:25:13 2.5 0.6 8 06:29:44 2.3 -0.2 9 06:35:14 1.6 -0.7 10 06:41:14 1.8 0.2 11 06:46:03 2.3 0.5 12 06:52:35 2.9 0.6 13 06:55:26 2.2 -0.7 14 07:05:40 1.4 N/A

### Count

When using the “Count” aggregation method, Flow will return the number of points within the time period, excluding the “boundary” point.

For the above data points, and for the period from 06:00 to 07:00, Count = 12.

### Time in State

When configuring Flow to return a “Time in State” summary, you will need to specify the “State” setting and condition. Flow will return the total duration (in milliseconds) that the “Stair Step” interpolation evaluates to the specified “State” setting and condition.

 Point Timestamp Raw Value Duration (seconds) 1 05:55:03 1.6 203 2 06:03:23 2.3 247 3 06:07:30 2.5 172 4 06:10:22 3 330 5 06:15:52 2.1 288 6 06:20:40 1.9 273 7 06:25:13 2.5 271 8 06:29:44 2.3 330 9 06:35:14 1.6 360 10 06:41:14 1.8 289 11 06:46:03 2.3 392 12 06:52:35 2.9 171 13 06:55:26 2.2 274 14 07:05:40 1.4 N/A

For example, in the above scenario, if the “State” setting is specified as “=” 1.6, Flow will sum the duration between the “boundary” point and point 2, and the duration between point 9 and point 10.

So, Time In State = 563000ms

Remember that Flow does all its time-related calculations in milliseconds and not seconds

### Variance

When using the “Variance” aggregation method, Flow will calculate the statistical population variance for all the data points within the time period, including the “boundary” point.

For the above data points, and for the period from 06:00 to 07:00, Variance = 0.17751479

### Standard Deviation

When using the “Standard Deviation” aggregation method, Flow will calculate the statistical population standard deviation for all the data points within the time period, including the “boundary” point.

For the above data points, and for the period from 06:00 to 07:00, Standard Deviation = 0.42132504.