gpt4 book ai didi

python - 减去分组数据框中的行

转载 作者:行者123 更新时间:2023-12-05 08:36:08 26 4
gpt4 key购买 nike

我有一个 pandas 数据框,如果它们具有相同的组,我需要减去行。

输入数据框:

<表类="s-表"><头>AB值<正文>A1B110.0A1B15.0A1B25.0A2B13.0A2B15.0A2B21.0

预期数据框:

<表类="s-表"><头>AB值<正文>A1B15.0A1B25.0A2B1-2.0A2B21.0

逻辑:例如,数据框的第一行和第二行在组 A1 和 B1 中,因此值必须为 10.0 - 5.0 = 5.0。 4º 和 5º 行也具有相同的组,因此该值必须为 3.0 - 5.0 = -2.0。

只减去具有相同 A 和 B 值的行。

谢谢!

最佳答案

尝试:

subtract = lambda x: x.iloc[0] - (x.iloc[1] if len(x) == 2 else 0)
out = df.groupby(['A', 'B'])['Value'].apply(subtract).reset_index()
print(out)

# Output:
A B Value
0 A1 B1 5.0
1 A1 B2 5.0
2 A2 B1 -2.0
3 A2 B2 1.0

关于python - 减去分组数据框中的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70438208/

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