【发布时间】:2018-07-20 16:12:12
【问题描述】:
我有几个月度、日期时间索引的累积 Pandas 系列,我想对它们进行反累积,这样我就可以自己获取特定月份的值。
因此,对于每一年,一月是一月,二月是一月+二月,三月是一月+二月+三月,依此类推,直到下一年再次从一月开始。
尴尬的是,这些系列中的一些从二月开始。
这是一个示例系列:
2016-02-29 112.3
2016-03-31 243.0
2016-04-30 360.1
2016-05-31 479.5
2016-06-30 643.0
2016-07-31 757.6
2016-08-31 874.5
2016-09-30 1051.8
2016-10-31 1203.4
2016-11-30 1358.3
2016-12-31 1573.5
2017-01-31 75.0
2017-02-28 140.5
2017-03-31 290.4
2017-04-30 416.6
2017-05-31 548.2
2017-06-30 746.6
2017-07-31 863.5
2017-08-31 985.4
2017-09-30 1160.1
2017-10-31 1302.5
2017-11-30 1465.7
2017-12-31 1694.1
2018-01-31 74.0
2018-02-28 146.3
2018-03-31 300.9
2018-04-30 421.9
2018-05-31 564.1
2018-06-30 771.4
我认为一种方法是使用 df.diff() 来获取除 Jan 之外的所有内容的大部分差异,用 NaN 替换不正确的 Jan 值,然后执行 df.update(original df) 来填写具有正确值的 NaN。
我在尝试用 NaN 替换 Jan 数据时遇到问题。任何人都可以帮助解决这个问题或提出其他解决方案吗?
【问题讨论】:
-
发布您的代码。
标签: python pandas time-series