Documentation

movingAverage() function

movingAverage() calculates the mean of non-null values using the current value and n - 1 previous values in the _values column.

Moving average rules

  • The average over a period populated by n values is equal to their algebraic mean.
  • The average over a period populated by only null values is null.
  • Moving averages skip null values.
  • If n is less than the number of records in a table, movingAverage() returns the average of the available values.
Function type signature
(<-tables: stream[{A with _value: B}], n: int) => stream[{A with _value: float}] where B: Numeric
For more information, see Function type signatures.

Parameters

n

(Required) Number of values to average.

tables

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

Examples

Calculate a three point moving average

import "sampledata"

sampledata.int()
    |> movingAverage(n: 3)

View example input and ouput

Calculate a three point moving average with null values

import "sampledata"

sampledata.int(includeNull: true)
    |> movingAverage(n: 3)

View example input and ouput


Was this page helpful?

Thank you for your feedback!


Upgrade to InfluxDB Cloud or InfluxDB 2.0!

InfluxDB Cloud and InfluxDB OSS 2.0 ready for production.