计算变化率
此页面记录了 InfluxDB OSS 的早期版本。 InfluxDB OSS v2 是最新的稳定版本。 请参阅等效的 InfluxDB v2 文档: 计算变化率。
使用 derivative()
函数 计算后续值之间的变化率,或使用 aggregate.rate()
函数 计算每个时间窗口的平均变化率。如果点之间的时间间隔不同,这些函数会将点归一化到共同的时间间隔,从而使值易于比较。
后续值之间的变化率
使用 derivative()
函数 计算后续非空值之间每单位时间的变化率。
data
|> derivative(unit: 1s)
默认情况下,derivative()
仅返回正导数值,并将负值替换为 null。计算值以 浮点数 形式返回。
给定以下输入
_time | _value |
---|---|
2020-01-01T00:00:00Z | 250 |
2020-01-01T00:04:00Z | 160 |
2020-01-01T00:12:00Z | 150 |
2020-01-01T00:19:00Z | 220 |
2020-01-01T00:32:00Z | 200 |
2020-01-01T00:51:00Z | 290 |
2020-01-01T01:00:00Z | 340 |
derivative(unit: 1m)
返回
_time | _value |
---|---|
2020-01-01T00:04:00Z | |
2020-01-01T00:12:00Z | |
2020-01-01T00:19:00Z | 10.0 |
2020-01-01T00:32:00Z | |
2020-01-01T00:51:00Z | 4.74 |
2020-01-01T01:00:00Z | 5.56 |
结果表示后续值之间每分钟的变化率,负值设置为 null。
返回负导数值
要返回负导数值,请将 nonNegative
参数设置为 false
,
给定以下输入
_time | _value |
---|---|
2020-01-01T00:00:00Z | 250 |
2020-01-01T00:04:00Z | 160 |
2020-01-01T00:12:00Z | 150 |
2020-01-01T00:19:00Z | 220 |
2020-01-01T00:32:00Z | 200 |
2020-01-01T00:51:00Z | 290 |
2020-01-01T01:00:00Z | 340 |
以下返回
|> derivative(
unit: 1m,
nonNegative: false
)
_time | _value |
---|---|
2020-01-01T00:04:00Z | -22.5 |
2020-01-01T00:12:00Z | -1.25 |
2020-01-01T00:19:00Z | 10.0 |
2020-01-01T00:32:00Z | -1.54 |
2020-01-01T00:51:00Z | 4.74 |
2020-01-01T01:00:00Z | 5.56 |
结果表示后续值之间每分钟的变化率,并包括负值。
每个时间窗口的平均变化率
使用 aggregate.rate()
函数 计算每个时间窗口的平均变化率。
import "experimental/aggregate"
data
|> aggregate.rate(
every: 1m,
unit: 1s,
groupColumns: ["tag1", "tag2"]
)
aggregate.rate()
返回由 every
定义的时间间隔内每 unit
的平均变化率(作为 浮点数)。负值被替换为 null。
aggregate.rate()
不支持 nonNegative: false
。
给定以下输入
_time | _value |
---|---|
2020-01-01T00:00:00Z | 250 |
2020-01-01T00:04:00Z | 160 |
2020-01-01T00:12:00Z | 150 |
2020-01-01T00:19:00Z | 220 |
2020-01-01T00:32:00Z | 200 |
2020-01-01T00:51:00Z | 290 |
2020-01-01T01:00:00Z | 340 |
以下返回
|> aggregate.rate(
every: 20m,
unit: 1m
)
_time | _value |
---|---|
2020-01-01T00:20:00Z | |
2020-01-01T00:40:00Z | 10.0 |
2020-01-01T01:00:00Z | 4.74 |
2020-01-01T01:20:00Z | 5.56 |
结果表示每 20 分钟间隔 的 每分钟平均变化率,负值设置为 null。时间戳表示用于平均值的时间窗口的右边界。
此页面是否对您有帮助?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一份子!我们欢迎并鼓励您提供关于 InfluxDB 和本文档的反馈和错误报告。要获得支持,请使用以下资源
拥有年度或支持合同的客户 可以 联系 InfluxData 支持。