谁能帮助我从pandas文档中提供的示例中了解滚动功能和扩展功能之间的区别。
df = DataFrame({'B': [0, 1, 2, np.nan, 4]})
df
B
0 0.0
1 1.0
2 2.0
3 NaN
4 4.0
df.expanding(2).sum()
B
0 NaN # 0 + NaN
1 1.0 # 1 + 0
2 3.0 # 2 + 1
3 3.0 # ??
4 7.0 # ??
df.rolling(2).sum()
B
0 NaN # 0 + NaN
1 1.0 # 1 + 0
2 3.0 # 2 + 1
3 NaN # NaN + 2
4 NaN # 4 + NaN
Run Code Online (Sandbox Code Playgroud)
我对每一行都发表评论,以表明我对计算的理解。rolling功能是真的吗?那expanding呢 第三和第四行中的3和7来自哪里?
中的2expanding不是min_periodswindow
df.expanding(min_periods=1).sum()
Out[117]:
B
0 0.0
1 1.0
2 3.0
3 3.0
4 7.0
Run Code Online (Sandbox Code Playgroud)
如果您想要相同的结果,rolling window则将等于数据帧的长度
df.rolling(window=len(df),min_periods=1).sum()
Out[116]:
B
0 0.0
1 1.0
2 3.0
3 3.0
4 7.0
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
743 次 |
| 最近记录: |