Pandas 按筛选结果分组

问题描述 投票:0回答:1

我正在使用 pandas 并获取数据并使用 group by。但是我不确定如何过滤掉返回的不需要的数据。我只想要 1 的计数而不是 0 的计数。

print(df.groupby(item)['event'].apply(lambda x: (x==1).sum()).reset_index(name='count'))
hpb   count
0     55
1     36

我还使用了以下内容,它为所有列返回相同的信息。

print(patients.query("event==1 and hbp==1").groupby('hbp').count())

       age    cp    eject  ......
hbp
 1      36     36    36
pandas group-by
1个回答
0
投票

用途:

print(patients.query("event==1").groupby(item)['event'].sum())

或者:

print(patients[patients["event"].eq(1)].groupby(item)['event'].sum())
© www.soinside.com 2019 - 2024. All rights reserved.