如何从两行获取值的总和并将其分配给行本身pandas

我需要获取循环中第 n 行的总和 + 1,例如,在下面的数据集中:


     x    y    z

0    2    3    4

1    5    6    7

2    8    9    10

3    11   12   0

我需要的是将第0行和第1行的值相加,并将其分配给第0行本身,将第1行和第2行的值相加并将其分配给第1行,将第2行和第3行的值分配给2,然后第 3 行保留其值。结果 df 将是:


     x    y    z

0    7    9    11

1    13   15   17

2    19   21   10

3    11   12   0

想象一下我有很多行,比如 10k,并且需要通用地执行它


手掌心
浏览 108回答 1
1回答

largeQ

通过DataFrame.rolling在 中建立索引来反转行的顺序DataFrame.iloc:df = df.iloc[::-1].rolling(2, min_periods=0).sum().iloc[::-1]print (df)      x     y     z0   7.0   9.0  11.01  13.0  15.0  17.02  19.0  21.0  10.03  11.0  12.0   0.0
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python