简体   繁体   English

通过与其他数据框列映射来更改数据框列名称,Python 3.6

[英]Change Dataframe Column Name by mapping with other Dataframe Column, Python 3.6

I want to change columns name of Dataframe "Data" if column matching with XML_Data['conceptRef'], columns name contains in XML_Data['Dimension_Name_EN']如果列匹配 XML_Data['conceptRef'],列名称包含在 XML_Data['Dimension_Name_EN'] 中,我想更改 Dataframe "Data" 的列名称

Data.columns数据列

Index(['MEASURE', 'INDEX', 'STAGE', 'SOURCE', 'DESTINATION', 'FREQUENCY', 'VALUE', 'DATE'], dtype='object')

XML_Data: XML_数据:

   Order                codelist   conceptRef    Dimension_Name_EN
0      1      CL_PPI_SOP_MEASURE      MEASURE              Measure
1      2        CL_PPI_SOP_INDEX        INDEX                Index
2      3        CL_PPI_SOP_STAGE        STAGE  Stage of Production
3      4       CL_PPI_SOP_SOURCE       SOURCE               Source
4      5  CL_PPI_SOP_DESTINATION  DESTINATION          Destination

If column ('FREQUENCY', 'VALUE', 'DATE') not present in other dataframe then keep as it is.如果列 ('FREQUENCY', 'VALUE', 'DATE') 不存在于其他数据框中,则保持原样。

Use rename by dictionary created by zip columns of XML_Data DataFrame:使用由XML_Data DataFrame 的 zip 列创建的字典rename

d = dict(zip(XML_Data['conceptRef'], XML_Data['Dimension_Name_EN']))
Data = Data.rename(columns=d)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM