gpt4 book ai didi

python - 按国家分组的计数操作,在python中返回数据框

转载 作者:行者123 更新时间:2023-12-04 08:01:57 25 4
gpt4 key购买 nike

数据:


国家
操作


印度
一种

马来西亚


克罗地亚
C

印度
C

印度
C

马来西亚
D

马来西亚
一种


期望输出:{ "India" :{"A":1,"C":2},"Malaysia":{"B":1,"A":1,"D":1},"Croatia":{"C":1}}我试过了 :


arrays = [countrylist, opslist]

index = pd.MultiIndex.from_arrays(arrays, names=('Country', 'Ops'))

df=pd.DataFrame(index)

count = list(df[0].value_counts())

clist = list(df[0].unique())

csdict = dict()

for country,service in clist:

csdict.setdefault(country, []).append(service)

country_list = list(csdict.keys())

service_list = list(csdict.values())

fdict = { "country" : country_list, "services" : service_list}

dataf = pd.DataFrame(fdict)

最佳答案

使用字典理解 Series.value_counts 每组:

d = {k: v.value_counts(sort=False).to_dict() 
for k, v in df.groupby('country', sort=False)['operations']}

print (d)
{'India': {'A': 1, 'C': 2}, 'Malaysia': {'B': 1, 'A': 1, 'D': 1}, 'Croatia': {'C': 1}}

关于python - 按国家分组的计数操作,在python中返回数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66423313/

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