如何获得某些不同列的 Count 值的总和?

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

我已经编写了这段代码并得到了结果。现在我想要 3 个计数列的这些单独的 3 个计数值的总和。我该怎么做?

new = (pd.concat([df[x].groupby(df[x]).size().to_frame('Count').sort_values(by='Count',ascending=False).reset_index() 
               for x in df.columns],axis=1))[:10]

new

上述代码的结果: result

我想要 3 个计数列的这些单独的 3 个计数值的总和。

python pandas count sum
1个回答
0
投票

我无法重现具有相同名称的三列的 pandas 数据框,但这就是我认为您正在寻找的内容?

第一步:编一些无意义的数据

import pandas as pd

new = pd.DataFrame({'0': ['blah', 'cjgv', 'ldfjnv', 'fjgv'],
        'Count_x': [2, 6, 7, 12],
        '1': ['dkjf', 'lckn', 'ckjn', 'ckjn'],
        'Count_y': [10, 12, 3, 4],
        '2': ['qw', 'kfc', 'ed', 'ewd'],
        'Count_z': [56, 12, 13, 14]})

new

看起来像这样:

0 计数_x 1 Count_y 2 计数_z
0 废话 2 dkjf 10 qw 56
1 cjgv 6 lckn 12 肯德基 12
2 ldfjnv 7 ckjn 3 ed 13
3 fjgv 12 ckjn 4 14

第 2 步:使用以下内容获取每个“计数”列的总数:

new[['Count_x', 'Count_y', 'Count_z']].sum(axis=0)

产生:

Count_x    27
Count_y    29
Count_z    95
dtype: int64
© www.soinside.com 2019 - 2024. All rights reserved.