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

5.2 KiB

title description menu weight flux/v0/tags introduced
fill() function `fill()` replaces all null values in input tables with a non-null value.
flux_v0_ref
name parent identifier
fill universe universe/fill
101
transformations
0.14.0

fill() replaces all null values in input tables with a non-null value.

Output tables are the same as the input tables with all null values replaced in the specified column.

Function type signature
(<-tables: stream[B], ?column: string, ?usePrevious: bool, ?value: A) => stream[C] where B: Record, C: Record

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

Parameters

column

Column to replace null values in. Default is _value.

value

Constant value to replace null values with.

Value type must match the type of the specified column.

usePrevious

Replace null values with the previous non-null value. Default is false.

tables

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

Examples

Fill null values with a specified non-null value

import "sampledata"

sampledata.int(includeNull: true)
    |> fill(value: 0)

{{< 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 t1
2021-01-01T00:00:20Z 7 t1
2021-01-01T00:00:30Z t1
2021-01-01T00:00:40Z t1
2021-01-01T00:00:50Z 4 t1
_time _value *tag
2021-01-01T00:00:00Z 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 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 0 t1
2021-01-01T00:00:20Z 7 t1
2021-01-01T00:00:30Z 0 t1
2021-01-01T00:00:40Z 0 t1
2021-01-01T00:00:50Z 4 t1
_time _value *tag
2021-01-01T00:00:00Z 0 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 0 t2
2021-01-01T00:00:50Z 1 t2

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

Fill null values with the previous non-null value

import "sampledata"

sampledata.int(includeNull: true)
    |> fill(usePrevious: true)

{{< 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 t1
2021-01-01T00:00:20Z 7 t1
2021-01-01T00:00:30Z t1
2021-01-01T00:00:40Z t1
2021-01-01T00:00:50Z 4 t1
_time _value *tag
2021-01-01T00:00:00Z 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 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 -2 t1
2021-01-01T00:00:20Z 7 t1
2021-01-01T00:00:30Z 7 t1
2021-01-01T00:00:40Z 7 t1
2021-01-01T00:00:50Z 4 t1
_time _value *tag
2021-01-01T00:00:00Z 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 19 t2
2021-01-01T00:00:50Z 1 t2

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