任务说明
我有df
和df1
,并希望将df
中country
列中的df1
列名称更改为{中的字符串{1}}。例如。澳大利亚成为澳大利亚。最终输出为loc
。任何帮助都将是超级!!
数据框架
df2
df
Date Argentina Australia United Kingdom United States
1983-03-31 0.001 0.053206 0.001 0.160159
1983-04-30 0.001 0.053206 0.001 0.160159
1983-05-31 0.001 0.053206 0.001 0.160159
df1
最终所需输出
country loc
Argentina AR
Australia AU
United Kingdom GB
United States US
df2
答案 0 :(得分:1)
使用pandas.DataFrame.rename
:
new_df = df.rename(columns=df2.set_index("country")["loc"])
print(new_df)
输出:
Date AR AU GB US
0 1983-03-31 0.001 0.053206 0.001 0.160159
1 1983-04-30 0.001 0.053206 0.001 0.160159
2 1983-05-31 0.001 0.053206 0.001 0.160159
答案 1 :(得分:0)
与rename
略有不同的方法,但创建dictionary
进行名称转换:
df2 = df.rename(columns=df1['loc'].to_dict())
屈服:
Date AU AR GB US
0 1983-03-31 0.001 0.053206 0.001 0.160159
1 1983-04-30 0.001 0.053206 0.001 0.160159
2 1983-05-31 0.001 0.053206 0.001 0.160159