我有一个包含国家和流量列的数据框:
Country | Traffic
US 8687
Italy 902834
Germany 2343
Brazil 4254
France 23453
我想向该数据框中添加名为“Region”的第三列。它看起来像这样:
Country | Traffic | Region
US 8687 US
Italy 902834 EU
Germany 2343 EU
Brazil 4254 LA
France 23453 EU
如果我只有两个区域,则以下代码有效。我正在寻找更多的 if/else
、map
或 lambda
语句:
df['Region'] = np.where(df['Country'] == 'US', 'US', 'EU')
谢谢。
最佳答案
一个简单的方法是这样的:
dict ={'US':'US','Italy':'EU','Germany':'EU','Brazil':'LA','France':'EU'}
df['Region']=df['Country'].apply(lambda x : dict[x])
关于python - 根据其他列中的分类值创建新的 Pandas 列(python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42123847/