【发布时间】:2012-11-28 21:41:20
【问题描述】:
我想通过时间戳执行移动平均。 我有两列:温度和时间戳(时间-日期),我想根据每 15 分钟的连续温度观测值执行移动平均值。换句话说,选择数据以基于 15 分钟的时间间隔执行平均。此外,对于不同的时间序列,可以有不同数量的观察。我的意思是所有窗口大小都相等(15 分钟),但每个窗口中可能有不同数量的观察值。 例如: 对于第一个窗口,我们必须计算 n 次观察的平均值,对于第二个窗口,我们必须计算 n+5 次观察的平均值。
数据样本:
ID时间戳温度 1 2007-09-14 22:56:12 5.39 2 2007-09-14 22:58:12 5.34 3 2007-09-14 23:00:12 5.16 4 2007-09-14 23:02:12 5.54 5 2007-09-14 23:04:12 5.30 6 2007-09-14 23:06:12 5.20 7 2007-09-14 23:10:12 5.39 8 2007-09-14 23:12:12 5.34 9 2007-09-14 23:20:12 5.16 10 2007-09-14 23:24:12 5.54 11 2007-09-14 23:30:12 5.30 12 2007-09-14 23:33:12 5.20 13 2007-09-14 23:40:12 5.39 14 2007-09-14 23:42:12 5.34 15 2007-09-14 23:44:12 5.16 16 2007-09-14 23:50:12 5.54 17 2007-09-14 23:52:12 5.30 18 2007-09-14 23:57:12 5.20主要挑战:
我如何学习代码以每 15 分钟进行一次区分,而由于采样频率不同,没有准确的 15 分钟时间间隔。
【问题讨论】:
-
如果新的 15 分钟窗口开始,滚动平均值是否会“重新开始”?还是应该计算“最后”15 分钟的平均值?
-
@a_horse_with_no_name,实际上,数据集包括 4 周的历史数据,我需要移动平均结果作为新数据集。
-
这不能回答我的问题。
标签: sql postgresql timestamp moving-average