如何为现有Pandas 1.2.4 DataFrame的未命名索引设置名称
Pandas索引重命名失败问题解答
操作错误原因
DataFrame.rename()方法的index参数作用是修改索引的标签值,也就是每一行索引对应的具体内容,而非修改索引本身的名称。你传入的{'Unnamed: 0':'new column name'}映射规则,是尝试把索引里值为Unnamed: 0的行标签替换为新值,而你的索引中不存在该值,所以运行无报错也不会生效。- 你混淆了两个不同的概念:索引本身的名称对应
index.name属性,而rename的index参数操作的是索引存储的每一行的标签值,二者功能完全不同。
猜测正确性说明
你的猜测不正确。Pandas的索引是Index类或其子类(比如RangeIndex、字符串索引等),即便它的操作逻辑和Series有相似性,也不是你第一次操作失败的原因,核心问题是rename方法的用法不符合你的需求。
其他可行写法
除了你已经验证生效的no_labels.index.name = 'COUNTRY_CODE'写法外,你也可以用rename_axis方法实现索引重命名,代码如下:
no_labels.rename_axis('COUNTRY_CODE', inplace=True)
内容的提问来源于stack exchange,提问作者Jeff Crosby
相关产品推荐
相关产品推荐

