Skip to main content

Aggregate array items

Anatomy

<array:aggregate var="var" var_result="var" type="count" key="string"/>

Description: ARRAY:AGGREGATE calculates an aggregated value of the values of an array based on a given aggregation type.

A given key may specify the column of a multidimensional array to aggregate by. If however, the key is omitted, then the array is treated as an unidimensional list.

Attention:

If a key is specified and that key does not exist within the inner array, the corresponding item of the outer array will be skipped.

Array items with non-numeric values will be skipped.

Attributes

NameTypeDescriptionDefined By
varvarVariable name array:aggregate
var_resultvarResult variable name array:aggregate
typetypeAggregation type array:aggregate

Multidimensional

NameTypeDescriptionDefined By
keystringKey array:aggregate

Results:

BindingTypePredicate
var_resultN/A

Examples

Count

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="count"/>
</output>

<!-- 6 -->

Summation

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="sum"/>
</output>

<!-- 234 -->

Average

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="avg"/>
</output>

<!-- 39 -->

Product

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="product"/>
</output>

<!-- 1650180096 -->

Minimum

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="min"/>
</output>

<!-- 16 -->

Maximum

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="max"/>
</output>

<!-- 62 -->

Range

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="range"/>
</output>

<!-- 46 -->

Median

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="median"/>
</output>

<!-- 40 -->

Arithmetic mean

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="mean-arith"/>
</output>

<!-- 39 -->

Geometric mean

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="mean-geo"/>
</output>

<!-- 34.375990770947 -->

Harmonic mean

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="mean-harm"/>
</output>

<!-- 29.867417906506 -->

Square mean

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="mean-sqr"/>
</output>

<!-- 42.891335566367 -->

Population standard deviation

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="stddev-pop"/>
</output>

<!-- 17.851237118661 -->

Sample standard deviation

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="stddev-samp"/>
</output>

<!-- 19.555050498529 -->

Population variance

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="var-pop"/>
</output>

<!-- 318.66666666667 -->

Sample variance

<array var="numbers">
<item>16</item>
<item>32</item>
<item>19</item>
<item>57</item>
<item>62</item>
<item>48</item>
</array>

<output>
<array:aggregate var="numbers" type="var-samp"/>
</output>

<!-- 382.4 -->