gpt4 book ai didi

python - 使用 df.apply 返回满足条件的行数

转载 作者:行者123 更新时间:2023-12-04 07:33:28 25 4
gpt4 key购买 nike

我有一个给定的数据框:
Initial Dataframe
现在从数据帧中可以看出,玩家 x 输了 6 次,玩家 y 输了 9 次。我想制作一个数据框来招募玩家以及他们输了多少次。因此最终的数据帧应该是这样的
Final Dataframe
我发现的一种选择是使用 dataframe.apply,其中我可以返回保持条件的行数。相同的代码是:

import pandas as pd

df=pd.read_csv('C:/Users/sadik/Desktop/Data.csv')

df = df.apply(lambda x : True
if x['Result'] == "Lost" else False, axis = 1)
num_rows = len(df[df == True].index)
print('Number of Rows in dataframe in which Condition is met: ',
num_rows )
这给了我输出
runfile('C:/Users/sadik/untitled0.py', wdir='C:/Users/sadik')
Number of Rows in dataframe in which Condition is met: 15
我的问题是如何使用相同的逻辑按预期输出中显示的玩家姓名输出计数

最佳答案

您可以按 Name 分组然后 agg总人数Lost s:

out = df.groupby("Name").Result.agg(lambda s: s.eq("Lost").sum()).to_frame("Count")
我们最后将其转换为一个名为 "Count" 的计数的数据帧。 ,
要得到
>>> out

Count
Name
x 6
y 9

关于python - 使用 df.apply 返回满足条件的行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67847244/

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