Python 基于另一个数据帧中给定的值更新数据帧列名

Python 基于另一个数据帧中给定的值更新数据帧列名,python,pandas,dataframe,Python,Pandas,Dataframe,我对python非常陌生。我试图基于另一个数据帧重命名数据帧的列 基本上我的数据看起来像 数据帧1 A B C D 1 2 3 4 我有另一个表,看起来像“DataFrame2” Col1 Col2 A E B Q C R D Z 我想根据这个表重命名我的第一个数据框的列,这样它就会出现:Note。列的名称顺序不同 E Q R Z 1 2 3 4 使用由zip创建的字典

我对python非常陌生。我试图基于另一个数据帧重命名数据帧的列

基本上我的数据看起来像

数据帧1

A    B    C   D
1    2    3   4
我有另一个表,看起来像“DataFrame2”

Col1    Col2
A       E
B       Q
C       R
D       Z
我想根据这个表重命名我的第一个数据框的列,这样它就会出现:Note。列的名称顺序不同

E    Q    R    Z
1    2    3    4
使用由zip创建的字典重命名:

使用由zip创建的字典重命名:


使用带有通过设置索引获取的映射,即

df.columns = df.columns.map(df2.set_index('Col1')['Col2'].get)

   E  Q  R  Z
0  1  2  3  4

使用带有通过设置索引获取的映射,即

df.columns = df.columns.map(df2.set_index('Col1')['Col2'].get)

   E  Q  R  Z
0  1  2  3  4

@黑暗-我被给我投票的人弄糊涂了;再加上1@Dark-给我投票的人把我弄糊涂了;所以加1