【发布时间】:2021-04-12 21:42:39
【问题描述】:
我想创建一个名为Playercategory的新列,
Name Country
Kobe United States
John Italy
Charly Japan
Braven Japan / United States
Rocky Germany / United States
Bran Lithuania
Nick United States / Ukraine
Jonas Nigeria
如果玩家的国籍是“美国”或美国与除欧洲国家以外的任何其他国家/地区,则 Playercategory=="American"
如果玩家的国籍是欧洲国家或任何其他国家的欧洲国家,则 Playercategory=="Europe"(例如:'Italy'、'Italy / United States'、'Germany / United国家”、“立陶宛/澳大利亚”、“比利时”)
对于所有其他玩家,然后 Playercategory=="Non"
预期输出:
Name Country Playercategory
Kobe United States American
John Italy Europe
Charles Japan Non
Braven Japan / United States American
Rocky Germany / United States Europe
Bran Lithuania Europe
Nick United States / Ukraine American
Jonas Nigeria Non
我尝试了什么: 首先,我创建了一个包含欧洲国家/地区的列表:
euroCountries=['Austria', 'Belgium', 'Bulgaria', 'Croatia', 'Cyprus', 'Czechia', 'Denmark',
'Estonia', 'Finland', 'France', 'Germany', 'Greece', 'Hungary', 'Ireland',
'Italy', 'Latvia', 'Lithuania', 'Luxembourg', 'Malta', 'Netherlands',
'Poland', 'Portugal', 'Romania', 'Slovakia', 'Slovenia', 'Spain', 'Sweden']
我知道如何检查一个条件,如下所示,
df["PlayerCatagory"] = np.where(df["Country"].isin(euroCountries), "Europe", "Non")
但是不知道如何拼接以上三个条件,正确创建PlayerCategory。
非常感谢您的支持!!!!!!!
【问题讨论】:
标签: python pandas list dataframe numpy