如何更改数据,以使某些熊猫df 列中的每个条目现在都显示最后说的4个条目的总和? 前3个条目可以保留为累计总和,但是在前3个条目之后,我希望每个 条目的值为原始列中最后4个值的总和。
例如1,2,3,4,5,2将变成1,3(2 + 1)6(3 + 2 + 1),10(4 + 3 + 2 + 1),14(5 + 4 + 3 + 2 ),14(2 + 5 + 4 + 3)
谢谢。
答案 0 :(得分:0)
您可以使用大小为rolling()
,最小大小为4
的{{1}}(移动窗口),然后使用1
sum()
结果
import pandas as pd
df = pd.DataFrame({"A":[1, 2, 3, 4, 5, 2]})
df['B'] = df.rolling(4, min_periods=1).sum()
print(df)