如何从dataframe的列中获取唯一名称

2024-10-06 19:29:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个列(在数据框中)包含多个城市名称,我需要知道城市的唯一名称

        city
0      Dallas,Columbus,Portland,LasVegas
1      Columbus,Dallas,LasVegas
2      Dallas
3      Portland,Columbus,LosAngeles
4      Columbus

我想得到一份这样的城市名单:达拉斯、哥伦布、波特兰、拉斯维加斯、洛杉矶

我试着使用countVectorize函数和pandas unique()方法,但我不知道怎么做


Tags: 数据方法函数名称citypandasuniqueportland
2条回答

可以将str.split.stack()unique一起使用

df['city'].str.split(',',expand=True).stack().unique()

array(['Dallas', 'Columbus', 'Portland', 'LasVegas', 'LosAngeles'],
      dtype=object)
df.city.str.split(",").explode().unique().tolist()

split","上的字符串,这将在每行中给出一个list。然后explode这些列表得到一个长序列,其中每行现在有一个城市名称。然后对它们进行unique运算以获得不同的城市名称。最后转换tolist以获得:

['Dallas', 'Columbus', 'Portland', 'LasVegas', 'LosAngeles']

相关问题 更多 >