我有一个包含“城市”和“国家”列的数据集。一些国家/地区栏被错误地标记为“其他”。我之所以知道这一点,是因为一些城市值包含诸如鞍湖(加拿大)之类的标签。是否有一种方法可以搜索城市中的值子集以更改国家/地区中的值。IE搜索任何包含单词“Canada”的城市值,并将country更改为“Canada”。我想为包括美国和英国在内的多个国家做这件事。这可能意味着我的搜索将需要一个'或'元素和搜索美国,美国,美国等
当前数据集:
City - Country
Saddle(Canada) - Other
Dublin - Other
Detroit - USA
Vancouver - Canada
NYC: US - Other
输出:
Saddle(Canada) - Canada
Dublin -Other
Detroit - USA
Vancouver - Canada
NYC: US - USA
我尝试了一些示例代码,但不起作用:
for index, row in df.iterrows():
if row['city'].str.contains("anada"):
df.loc[index, 'country'] = "Canada"
这是一种您可以尝试的高级方法。根据数据集的脏程度,它可能有用,但归根结底,这是一个NLP/AI问题
您必须创建自己的正则表达式,这可能会成为它自己的一个难题
相关问题 更多 >
编程相关推荐