如何通过静态转换表修改Pandas数据框的列名?
使用Pandas按映射表批量修改列名(支持重复列名)
步骤1:定义列名映射字典
先把给定的原列名与新列名的对应关系整理为字典:
col_mapping = { 'something 1': 'else 1', 'something 2': 'else 2', 'something 3': 'else 3', 'something 4': 'else 4' }
步骤2:用rename()方法批量替换列名
直接调用Pandas数据框的rename()方法,传入映射字典即可完成替换,重复列名也会被正确处理:
import pandas as pd # 假设你的数据框为df df = df.rename(columns=col_mapping)
验证示例
如果需要测试效果,可以构造包含目标列名的测试数据框:
# 构造测试数据 test_data = { 'something 2': [1, 2, 3], 'something 4': [4, 5, 6], 'something 1': [7, 8, 9], 'something 2': [10, 11, 12] } df_test = pd.DataFrame(test_data) # 执行重命名 df_test = df_test.rename(columns=col_mapping) # 查看修改后的列名 print(df_test.columns.tolist()) # 输出结果:['else 2', 'else 4', 'else 1', 'else 2']
内容的提问来源于stack exchange,提问作者Dino
相关产品推荐
相关产品推荐

