В пандах скользящее окно может быть рассчитано по столбцу типа даты и времени со смещенным окном.
В официальной документации приведен пример:
>>> df = pd.DataFrame({'B': [0, 1, 2, np.nan, 4]},
... index = [pd.Timestamp('20130101 09:00:00'),
... pd.Timestamp('20130101 09:00:02'),
... pd.Timestamp('20130101 09:00:03'),
... pd.Timestamp('20130101 09:00:05'),
... pd.Timestamp('20130101 09:00:06')])
>>> df.rolling('2s').sum()
B
2013-01-01 09:00:00 0.0
2013-01-01 09:00:02 1.0
2013-01-01 09:00:03 3.0
2013-01-01 09:00:05 NaN
2013-01-01 09:00:06 4.0
В DolphinDB,движущиеся функции, такие как mavg, msum и т. д., могут быть рассчитаны только на основе числа строк столбцов, а не периодов времени.Поэтому, когда я запускаю следующий код:
t = table(09:00:00 09:00:02 09:00:03 09:00:05 09:00:06 as time, 0 1 2 NULL 4 as B)
select msum(B, 2) from t
, я получаю:
msum_B
------
NULL
1
3
2
4
И результат остается неизменным, независимо от того, какой столбец времени.
Iхотел бы знать, можно ли рассчитать скользящие окна на основе временного столбца в DolphinDB.