Mah*_*esh 10 python missing-data pandas rolling-computation
我想对丢失的数据进行滚动计算.
示例代码:( 为了简单起见,我给出了滚动总和的示例,但我想做一些更通用的事情.)
foo = lambda z: z[pandas.notnull(z)].sum()
x = np.arange(10, dtype="float")
x[6] = np.NaN
x2 = pandas.Series(x)
pandas.rolling_apply(x2, 3, foo)
Run Code Online (Sandbox Code Playgroud)
产生:
0 NaN
1 NaN
2 3
3 6
4 9
5 12
6 NaN
7 NaN
8 NaN
9 24
Run Code Online (Sandbox Code Playgroud)
我认为在"滚动"期间,计算中忽略了缺少数据的窗口.我希望得到一个结果:
0 NaN
1 NaN
2 3
3 6
4 9
5 12
6 9
7 12
8 15
9 24
Run Code Online (Sandbox Code Playgroud)
Cha*_*She 10
In [7]: pandas.rolling_apply(x2, 3, foo, min_periods=2)
Out[7]:
0 NaN
1 1
2 3
3 6
4 9
5 12
6 9
7 12
8 15
9 24
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6957 次 |
| 最近记录: |