gpt4 book ai didi

值 > 0 的 Pandas 行总和

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

我有以下格式的数据框

ROW   Value1    Value2  Value3    Value4
1 10 10 -5 -2
2 50 20 -10 -7
3 10 5 0 -1

我希望计算每一行的正数总和和负数总和。所以本质上,生成的框架应该看起来像

ROW   Post_Total    Neg_Total
1 20 -7
2 70 -17
3 15 -1

我的数据集中有一件事,一列只能有正值或负值。

关于如何做到这一点的任何想法。我尝试用 >0 进行子集化,但没有成功。谢谢!

最佳答案

由于所有列都可以全部为正数或全部为负数,您可以使用 all() 来检查列的条件,然后进行分组:

df.groupby(df.gt(0).all(), axis=1).sum()

输出:

      False  True 
ROW
1 -7 20
2 -17 70
3 -1 15

一般来说,我只是子集/剪辑和求和:

out = pd.DataFrame({'pos': df.clip(lower=0).sum(1),
'neg': df.clip(upper=0).sum(1)
})

关于值 > 0 的 Pandas 行总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70957385/

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