gpt4 book ai didi

python - 如何计算pandas中行值大于特定值的金额?

转载 作者:行者123 更新时间:2023-12-01 09:05:03 24 4
gpt4 key购买 nike

如何计算pandas中行值大于特定值的金额?例如,我有一个 Pandas DataFrame dff。我想计算大于 0 的行值。

dff = pd.DataFrame(np.random.randn(9,3),columns=['a','b','c'])
dff

a b c
0 -0.047753 -1.172751 0.428752
1 -0.763297 -0.539290 1.004502
2 -0.845018 1.780180 1.354705
3 -0.044451 0.271344 0.166762
4 -0.230092 -0.684156 -0.448916
5 -0.137938 1.403581 0.570804
6 -0.259851 0.589898 0.099670
7 0.642413 -0.762344 -0.167562
8 1.940560 -1.276856 0.361775

我正在使用一种低效的方式。如何提高效率?

dff['count'] = 0
for m in range(len(dff)):
og = 0
for i in dff.columns:
if dff[i][m] > 0:
og += 1
dff['count'][m] = og
dff

a b c count
0 -0.047753 -1.172751 0.428752 1
1 -0.763297 -0.539290 1.004502 1
2 -0.845018 1.780180 1.354705 2
3 -0.044451 0.271344 0.166762 2
4 -0.230092 -0.684156 -0.448916 0
5 -0.137938 1.403581 0.570804 2
6 -0.259851 0.589898 0.099670 2
7 0.642413 -0.762344 -0.167562 1
8 1.940560 -1.276856 0.361775 2

最佳答案

您可以为 DataFrame 创建一个 bool 掩码,只要值大于阈值(在本例中为 0),则为 True,然后使用 沿第一个轴求和

dff.gt(0).sum(1)

0    1
1 1
2 2
3 2
4 0
5 2
6 2
7 1
8 2
dtype: int64

关于python - 如何计算pandas中行值大于特定值的金额?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52133453/

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