gpt4 book ai didi

python - 获取每个元素出现的最快方法

转载 作者:太空宇宙 更新时间:2023-11-03 14:53:27 26 4
gpt4 key购买 nike

我有一个像这样的大数据框

                                             name     Country   ... 
1 Paul Germany
2 Paul Germany
3 George Italy
3 George Italy
3 George Italy
...
N John USA

我正在寻找名称列中每个元素的出现情况,例如

                                             name     Country   Count 
1 Paul Germany 2000
2 George Italy 500
...
N John USA 40000

知道什么是最好的方法吗?

因为这很长

df['count'] = df.groupby(['name'])['name'].transform(pd.Series.value_counts)

最佳答案

你可以这样做:

df.groupby(['name', 'Country']).size()

示例:

import pandas as pd

df = pd.DataFrame.from_dict({'name' : ['paul', 'paul', 'George', 'George', 'George'],
'Country': ['Germany', 'Italy','Germany','Italy','Italy']})

df

输出:

    Country name
0 Germany paul
1 Italy paul
2 Germany George
3 Italy George
4 Italy George

分组并获取计数:

df.groupby(['name', 'Country']).size()

输出:

name    Country
George Germany 1
Italy 2
paul Germany 1
Italy 1

关于python - 获取每个元素出现的最快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45762034/

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