python group by和count()多列
我有这样一个数据框:python group by和count()多列,python,pandas-groupby,Python,Pandas Groupby,我有这样一个数据框: Country A B C UK 1 0 1 US 1 1 1 GB 0 1 1 UK 1 1 1 US 0 1 1 GB 0 1 1 我需要按国家分组,并在值为1的所有列中计数。我一直坚持为所有列设置列==1的条件 结果应该是: Country A B C UK 2 0 2 US 1 2 2 GB 0 2 2 因为您正在计算1,所以只需groupby([])
Country A B C
UK 1 0 1
US 1 1 1
GB 0 1 1
UK 1 1 1
US 0 1 1
GB 0 1 1
我需要按国家分组,并在值为1的所有列中计数。我一直坚持为所有列设置列==1的条件
结果应该是:
Country A B C
UK 2 0 2
US 1 2 2
GB 0 2 2
因为您正在计算1,所以只需
groupby([]).sum()
df['country']=df.index#生成新列
结果=df.groupby(['country']).sum()
这将为您提供以下结果:
abc
国家
GB 02 2
英国2112
美国12
更多信息
我不理解您的条件,所有行都是1的列求和?为什么
UK
2,0,2而不是2,1,2?这将返回2,1,2
列UK
而不是OP要求的2,0,2
。我假设这是一个输入错误