从列表中更改 Pandas Dataframe 中的列名

新手上路,请多包涵

是否可以使用列表中的数据更改列名?

 df = pd.DataFrame([[1, 1.0, 2.3,0.2,0.53], [2, 3.35, 2.0,0.2,0.65], [2,3.4,
       2.0,0.25,0.55], [3,3.4,2.0,0.25,0.55], [1,3.4,2.0,0.25,0.55],
       [3,3.4,2.0,0.25,0.55]],
       columns=["ID", "A", "B","C","D"])\
       .set_index('ID')

我的新标签如下:

 New_Labels=['NaU', 'MgU', 'AlU', 'SiU']

是否可以使用上面列表中的数据更改名称?我的原始数据集有 100 列,我不想为每一列手动完成。

我正在使用 df.rename 尝试以下操作,但不断出现错误。谢谢!

原文由 Suresh Raja 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 607
2 个回答

使用 重命名 是一种形式上更正确的方法。您只需要提供一个字典,将您当前的列名映射到新的列名(即使列放错位置也能保证预期结果)

 new_names = {'A':'NaU', 'B':'MgU', 'C':'Alu', 'D':'SiU'}
df.rename(index=str, columns=new_names)

请注意,您可以为要替换的唯一名称提供条目,其余名称将保持不变。

原文由 5agado 发布,翻译遵循 CC BY-SA 3.0 许可协议

你可以使用这个:

 df.columns = New_Labels

原文由 Spandan Brahmbhatt 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题