【发布时间】:2015-12-16 05:18:46
【问题描述】:
我有一个 Pandas 数据框 groupby 对象,如下所示:
ID
2014-11-30 1
2
3
2014-12-31 1
2
3
4
2015-01-31 2
3
4
2015-02-28 1
3
4
5
2015-03-31 1
2
4
5
6
2015-04-30 3
4
5
6
我想要做的是创建另一个数据框,其中 groupby 日期 x 中的值是每个 groupby 日期 y(x-1) 到 y(x-n) 中的值,其中 y 是前一个 groupby 的 n 周期。因此,例如,如果 n=1,那么如果 x groupby period 为“2015-04-30”,那么您将检查“2015-03-31”。如果 n=2,那么如果 groupby 日期为 '2015-02-28',那么您将检查 groupby 日期 ['2015-01-31', '2014-12-31']。
对于 n=1,上面生成的数据帧如下所示:
ID
2014-12-31 1
2
3
2015-01-31 2
3
4
2015-02-28 3
4
2015-03-31 1
4
5
2015-04-30 4
5
6
n=2 的结果数据框将是:
2015-01-31 2
3
2015-02-28 3
4
2015-03-31 4
2015-04-30 4
5
期待一些pythonic的解决方案!
【问题讨论】: