【发布时间】:2013-08-14 08:15:44
【问题描述】:
如果我有一个名为 ts 的 pandas.core.series.Series 是 1 或 NaN,如下所示:
3382 NaN
3381 NaN
...
3369 NaN
3368 NaN
...
15 1
10 NaN
11 1
12 1
13 1
9 NaN
8 NaN
7 NaN
6 NaN
3 NaN
4 1
5 1
2 NaN
1 NaN
0 NaN
我想计算这个系列的 cumsum,但它应该在 NaN 的位置重置(设置为零),如下所示:
3382 0
3381 0
...
3369 0
3368 0
...
15 1
10 0
11 1
12 2
13 3
9 0
8 0
7 0
6 0
3 0
4 1
5 2
2 0
1 0
0 0
理想情况下,我想要一个矢量化解决方案!
我曾在 Matlab 中看到过类似的问题: Matlab cumsum reset at NaN?
但是我不知道怎么翻译这行d = diff([0 c(n)]);
【问题讨论】:
标签: python numpy pandas cumsum