gpt4 book ai didi

python - 将偶数行列的值添加到Python中的奇数行

转载 作者:太空宇宙 更新时间:2023-11-04 00:25:07 25 4
gpt4 key购买 nike

我在 Python 中有一个 pandas DataFrame,看起来像这样:

enter image description here

我想将偶数行(alpha2 和 beta2)的 col2 的值添加到相应的奇数行(alpha 和 beta)。因此,我想删除偶数行以获得以下 DataFrame:

enter image description here

我的代码(添加值)目前看起来像这样:

for i in range(0, len(df), 2):
df.loc[df.index[i], 'col2'] += df.loc[df.index[i+1], 'col2']

有没有更聪明的方法来做到这一点?

最佳答案

选项 1
您可以执行 groupby 并重新分配索引 -

v = df.groupby(df.index // 2).col2.sum()
v.index = df.col1[::2]
v.reset_index()

col1 col2
0 alpha 30
1 beta 70

礼貌 MaxU,更好的方法是将 np.arange 传递给 groupby -

df.groupby(np.arange(len(df)) // 2).col2.sum()

选项 2
另一种方法是切片和分配 -

y = df.col2.values
v = pd.DataFrame({'col1' : df.col1.values[::2], 'col2' : y[::2] + y[1::2]})
v

col1 col2
0 alpha 30
1 beta 70

关于python - 将偶数行列的值添加到Python中的奇数行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47775664/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com