我需要獲取循環(huán)中第 n 行的總和 + 1,例如,在下面的數(shù)據(jù)集中: x y z0 2 3 41 5 6 72 8 9 103 11 12 0我需要的是將第0行和第1行的值相加,并將其分配給第0行本身,將第1行和第2行的值相加并將其分配給第1行,將第2行和第3行的值分配給2,然后第 3 行保留其值。結(jié)果 df 將是: x y z0 7 9 111 13 15 172 19 21 103 11 12 0想象一下我有很多行,比如 10k,并且需要通用地執(zhí)行它
1 回答

largeQ
TA貢獻(xiàn)2039條經(jīng)驗(yàn) 獲得超8個(gè)贊
通過(guò)DataFrame.rolling
在 中建立索引來(lái)反轉(zhuǎn)行的順序DataFrame.iloc
:
df = df.iloc[::-1].rolling(2, min_periods=0).sum().iloc[::-1]
print (df)
? ? ? x? ? ?y? ? ?z
0? ?7.0? ?9.0? 11.0
1? 13.0? 15.0? 17.0
2? 19.0? 21.0? 10.0
3? 11.0? 12.0? ?0.0
添加回答
舉報(bào)
0/150
提交
取消