我想为每一行添加俱乐部所在的联赛和联赛所在的国家,作为新的列
我最初尝试使用俱乐部/国家的字典,并返回一个值的键:
club_country_dict = {'La Liga':['Real Madrid','FC Barcelona'],'France Ligue 1':['Paris Saint-Germain']}
key_list=list(club_country_dict.keys())
val_list=list(club_country_dict.values())
但这遇到了问题,因为我的每个键值实际上都是一个列表,而不是一个值
然后我尝试了一些IF-then逻辑,为每个联赛设置独立变量,并检查每个变量中是否包含俱乐部值:
la_Liga = ['Real Madrid','FC Barcelona']
for row in data:
if data['Club'] in la_Liga:
data['League'] = 'La Liga'
为这个麻烦的问题道歉。基本上,我希望在我的数据集中添加两个新列,即“联赛”和“国家”,基于“俱乐部”列的值。我不确定最简单的方法是什么,但我尝试过不同的方法。提前谢谢
您可以将字典转换为数据帧,然后合并:
尝试系列的pandas
replace
功能df:
现在添加新列:
df:
下面是一个简单的解决方法。对行使用“应用”函数 https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.apply.html
输出:
相关问题 更多 >
编程相关推荐