docs-v2/content/flux/v0/stdlib/universe/cumulativesum.md

3.1 KiB

title description menu weight flux/v0/tags introduced
cumulativeSum() function `cumulativeSum()` computes a running sum for non-null records in a table.
flux_v0_ref
name parent identifier
cumulativeSum universe universe/cumulativeSum
101
transformations
0.7.0

cumulativeSum() computes a running sum for non-null records in a table.

The output table schema will be the same as the input table.

Function type signature
(<-tables: stream[A], ?columns: [string]) => stream[B] where A: Record, B: Record

{{% caption %}} For more information, see Function type signatures. {{% /caption %}}

Parameters

columns

List of columns to operate on. Default is ["_value"].

tables

Input data. Default is piped-forward data (<-).

Examples

Return the running total of values in each table

import "sampledata"

sampledata.int()
    |> cumulativeSum()

{{< expand-wrapper >}} {{% expand "View example input and output" %}}

Input data

_time _value *tag
2021-01-01T00:00:00Z -2 t1
2021-01-01T00:00:10Z 10 t1
2021-01-01T00:00:20Z 7 t1
2021-01-01T00:00:30Z 17 t1
2021-01-01T00:00:40Z 15 t1
2021-01-01T00:00:50Z 4 t1
_time _value *tag
2021-01-01T00:00:00Z 19 t2
2021-01-01T00:00:10Z 4 t2
2021-01-01T00:00:20Z -3 t2
2021-01-01T00:00:30Z 19 t2
2021-01-01T00:00:40Z 13 t2
2021-01-01T00:00:50Z 1 t2

Output data

_time _value *tag
2021-01-01T00:00:00Z -2 t1
2021-01-01T00:00:10Z 8 t1
2021-01-01T00:00:20Z 15 t1
2021-01-01T00:00:30Z 32 t1
2021-01-01T00:00:40Z 47 t1
2021-01-01T00:00:50Z 51 t1
_time _value *tag
2021-01-01T00:00:00Z 19 t2
2021-01-01T00:00:10Z 23 t2
2021-01-01T00:00:20Z 20 t2
2021-01-01T00:00:30Z 39 t2
2021-01-01T00:00:40Z 52 t2
2021-01-01T00:00:50Z 53 t2

{{% /expand %}} {{< /expand-wrapper >}}