【问题标题】:Updating dataframe column names based on values given in another dataframe根据另一个数据框中给出的值更新数据框列名称
【发布时间】:2017-12-07 11:20:09
【问题描述】:

我对 python 很陌生。我正在尝试根据另一个数据框重命名数据框的列。

基本上我的数据看起来像

数据帧1

A    B    C   D
1    2    3   4

我有另一个看起来像这样的表'DataFrame2

Col1    Col2
A       E
B       Q
C       R
D       Z

我想根据此表重命名我的第一个数据框的列,以便它出现:注意。列名顺序不同。

E    Q    R    Z
1    2    3    4

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:

    通过zip创建的字典使用rename

    d = dict(zip(df1['Col1'], df1['Col2']))
    df = df.rename(columns=d)
    print (df)
       E  Q  R  Z
    0  1  2  3  4
    

    【讨论】:

    • @Dark - 我很困惑谁给我投票;)所以加 1
    【解决方案2】:

    通过设置索引来使用地图,即

    df.columns = df.columns.map(df2.set_index('Col1')['Col2'].get)
    
       E  Q  R  Z
    0  1  2  3  4
    

    【讨论】:

      猜你喜欢
      • 2019-11-23
      • 1970-01-01
      • 2019-10-14
      • 2023-01-18
      • 2017-11-11
      • 2018-12-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多