大熊猫滚动平均值移动结果

时间:2018-11-20 21:06:37

标签: python pandas mean

在下面的(前5行)结果中,您可以看到Freq列和使用熊猫计算的滚动平均值(3)列MMeans

    Freq      MMeans
0    215         NaN
1    453         NaN
2    277  315.000000
3     38  256.000000
4      1  105.333333

我期望MMeans从索引1开始,因为1是(0-1-2)的平均值。 rolling方法是否缺少我选择的选项?

编辑1

print(pd.DataFrame({
    'Freq':eff,
    'MMeans': dF['Freq'].rolling(3).mean()}))

编辑2 抱歉@Yuca不够清晰。接下来是我希望熊猫返回的列:

    Freq      MMeans
0    215         NaN
1    453  315.000000
2    277  256.000000
3     38  105.333333
4      1   29.666667

不是用min_periods=2返回的结果

1 个答案:

答案 0 :(得分:3)

使用min_periods =1

df['rol_mean'] = df['Freq'].rolling(3,min_periods=1).mean()

输出:

   Freq      MMeans    rol_mean
0   215         NaN  215.000000
1   453         NaN  334.000000
2   277  315.000000  315.000000
3    38  256.000000  256.000000
4     1  105.333333  105.333333