gpt4 book ai didi

python - Pandas :扩展重采样窗口

转载 作者:太空宇宙 更新时间:2023-11-03 11:45:15 25 4
gpt4 key购买 nike

假设我有一个“低频”系列,每 2 小时有一个数据点,我想将其上采样到 1 小时的频率。

是否可以在下面的代码片段中让高频信号有 24 行(而不是 23 行)?更准确地说,我希望新索引的范围是从 00:00 到 23:00,具有 NaN 值(而不是在 22:00 停止)。

我已经尝试了很多选项,但我仍然找不到一个干净的方法来做到这一点。

import pandas as pd
import numpy as np

low_f = pd.Series(np.random.randn(12),
index=pd.date_range(start='01/01/2017', freq='2H', periods=12),
name='2H').cumsum()

high_f = low_f.resample('1H', ).mean()

print(high_f.tail(1).index)

#Yields DatetimeIndex(['2017-01-01 22:00:00'], dtype='datetime64[ns]', freq='H')
#I'd like DatetimeIndex(['2017-01-01 23:00:00'], dtype='datetime64[ns]', freq='H')
#(w/ 24 elements)

最佳答案

您可以使用 DateTimeIndex.shift将日期移动 1 小时(前导)的方法。乘坐union它的旧索引和新形成的移位索引。

最后,reindex他们根据这些指数集。由于在最后一个索引处不会出现 series 的值,因此它们将根据默认的 fill_value 参数由 NaN 填充。

high_f.reindex(high_f.index.union(high_f.index.shift(1, 'H')))

关于python - Pandas :扩展重采样窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41505388/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com