【发布时间】:2022-01-04 20:46:18
【问题描述】:
我有一个包含每日值的 8 年时间序列,我想每两周重新采样一次。但是,我只需要每年第 18 周到第 30 周的双周值(即 W18、W20、W22、...、W30)。这种方法有时会给我“奇数”双周值(即 W19、W21、W23、...、W29)。我如何确保始终获得“偶数”双周值?
df = df.resample("2W").mean()
df["Week"] = df.index.map(lambda dt: dt.week)
df = df.loc[df.Week.isin(range(18,31))]
2010-01-01 至 2018-12-31 的每日数据示例:(短版)
Date value_1 value_2
... ... ...
2010-05-03 10 1
2010-05-04 79 66
2010-05-05 40 16
2010-05-06 13 76
2010-05-07 2 36
2010-05-08 31 98
2010-05-09 96 3
2010-05-10 66 18
2010-05-11 99 9
... ... ...
第 18 周和第 30 周之间的预期双周数据:
Date value_1 value_2 Week
2010-05-03 14 1 18
2010-05-17 33 89 20
2010-05-31 21 31 22
2010-06-14 33 56 24
2010-06-28 12 43 26
2010-07-12 21 72 28
2010-07-26 76 13 30
2011-05-02 60 28 18
2011-05-16 82 2 20
2011-05-30 30 15 22
... ... ... ...
【问题讨论】:
标签: python pandas time-series pandas-resample