熊猫滚动意味着逃避南斯

时间:2019-05-14 03:36:33

标签: python pandas

我想对数据框应用滚动功能,如果当前值为nan,则返回nan;否则滚动窗口W将跳过 nan值并应用于 W non-nan 值。例如:

dft = pd.DataFrame({'B': [0, 1, 2, np.nan, 4, np.nan,5]}, 
                       index=range(7))

    B
0   0.000000
1   1.000000
2   2.000000
3   nan
4   4.000000
5   nan
6   5.000000

对于窗口3的滚动平均值,所需的输出为:

    B
0   nan
1   nan
2   1.000000
3   nan
4   2.333300
5   nan
6   3.666700

通知2.333是值的平均值(1,2,4),而3.667是值的平均值(2,4,5)。

其余的行为,例如min_window,和熊猫一样。

1 个答案:

答案 0 :(得分:1)

尝试:

df['B'].dropna().rolling(3).mean().reindex(df.index)