derivative() function
derivative()
computes the rate of change per unit of time between subsequent
non-null records.
The function assumes rows are ordered by the _time
.
Output tables
The output table schema will be the same as the input table.
For each input table with n
rows, derivative()
outputs a table with
n - 1
rows.
Function type signature
(
<-tables: stream[A],
?columns: [string],
?initialZero: bool,
?nonNegative: bool,
?timeColumn: string,
?unit: duration,
) => stream[B] where A: Record, B: Record
Parameters
unit
Time duration used to calculate the derivative. Default is 1s
.
nonNegative
Disallow negative derivative values. Default is false
.
When true
, if a value is less than the previous value, the function
assumes the previous value should have been a zero.
columns
List of columns to operate on. Default is ["_value"]
.
timeColumn
Column containing time values to use in the calculation.
Default is _time
.
initialZero
Use zero (0) as the initial value in the derivative calculation
when the subsequent value is less than the previous value and nonNegative
is
true
. Default is false
.
tables
Input data. Default is piped-forward data (<-
).
Examples
- Calculate the non-negative rate of change per second
- Calculate the rate of change per second with null values
Calculate the non-negative rate of change per second
import "sampledata"
sampledata.int()
|> derivative(nonNegative: true)
Calculate the rate of change per second with null values
import "sampledata"
sampledata.int(includeNull: true)
|> derivative()
Was this page helpful?
Thank you for your feedback!
Support and feedback
Thank you for being part of our community! We welcome and encourage your feedback and bug reports for Flux and this documentation. To find support, use the following resources:
Customers with an annual or support contract can contact InfluxData Support.