csv 将 Dataframe 转换为包含国家/地区(按洲)的词典

zour9fqk  于 2022-12-06  发布在  其他
关注(0)|答案(2)|浏览(177)

我有一个.csv和数据框,其中有2列(国家,大陆)。我想创建一个字典,携带大陆作为关键字和所有国家的列表作为值。
.csv具有以下格式:
| 乡村|大陆|
| - -|- -|
| 阿尔及利亚Name|非洲|
| 安哥拉|非洲|
和/或其他信息。
我尝试使用:

continentsDict = dict([(con, cou) for con, cou in zip(continents.continent, continents.country)])

但这给了我以下输出:

{'Africa': 'Zimbabwe', 'Asia': 'Yemen', 'Europe': 'Vatican City', 'North America': 'United States Virgin Islands', 'Oceania': 'Wallis and Futuna', 'South America': 'Venezuela'}

这是正确的格式,但只添加了它为各个大陆找到的最后一个值。
有人有主意吗?
谢谢你,谢谢你

vlju58qv

vlju58qv1#

假设大陆是你的Pandasdf的示例,你可以这样做:

continentsDict = continents.groupby("continent")["country"].apply(list).to_dict()
t1rydlwq

t1rydlwq2#

给定:

country continent
0  Algeria    Africa
1   Angola    Africa

正在执行:

out = df.groupby('continent')['country'].agg(list).to_dict()
print(out)

输出量:

{'Africa': ['Algeria', 'Angola']}

相关问题