pandas.DataFrame.rename_axis # 数据框。rename_axis ( mapper = _NoDefault.no_default , * , index = _NoDefault.no_default , columns = _NoDefault.no_default , axis = 0 , copy = None , inplace = False ) [来源] # 设置索引或列的轴名称。 参数: 映射器标量,类似列表,可选设置轴名称属性的值。 索引、列标量、类列表、类字典或函数,可选应用于该轴值的标量、列表式、字典式或函数转换。请注意,columns如果对象是系列,则不允许使用该参数。该参数仅适用于DataFrame类型对象。 使用mapper和指定要通过、 或 和/或axis定位的轴。mapperindexcolumns 轴{0 或 'index', 1 或 'columns'}, 默认 0要重命名的轴。对于系列,此参数未使用,默认为 0。 复制布尔值,默认无同时复制基础数据。 笔记 copy关键字将改变 pandas 3.0 中的行为 。默认情况下会启用Copy-on-Write ,这意味着所有带有 copy关键字的方法都将使用惰性复制机制来推迟复制并忽略copy关键字。 copy关键字将在 pandas 的未来版本中删除。 您已经可以通过启用写入时复制来获得未来的行为和改进pd.options.mode.copy_on_write = True inplace布尔值,默认 False直接修改对象,而不是创建新的Series或DataFrame。 返回: 系列、数据帧或无与调用者的类型相同或 None if inplace=True。 也可以看看 Series.rename更改系列索引标签或名称。 DataFrame.rename更改 DataFrame 索引标签或名称。 Index.rename在索引上设置新名称。 笔记 DataFrame.rename_axis支持两种调用约定 (index=index_mapper, columns=columns_mapper, ...) (mapper, axis={'index', 'columns'}, ...) 第一个调用约定将仅修改索引的名称和/或作为列的索引对象的名称。在这种情况下,该参数copy将被忽略。 如果映射器是列表或标量,第二个调用约定将修改相应索引的名称。但是,如果映射器类似于字典或函数,它将使用修改轴标签的已弃用行为。 我们强烈建议使用关键字参数来阐明您的意图。 例子 系列 >>> s = pd.Series(["dog", "cat", "monkey"]) >>> s 0 dog 1 cat 2 monkey dtype: object >>> s.rename_axis("animal") animal 0 dog 1 cat 2 monkey dtype: object 数据框 >>> df = pd.DataFrame({"num_legs": [4, 4, 2], ... "num_arms": [0, 0, 2]}, ... ["dog", "cat", "monkey"]) >>> df num_legs num_arms dog 4 0 cat 4 0 monkey 2 2 >>> df = df.rename_axis("animal") >>> df num_legs num_arms animal dog 4 0 cat 4 0 monkey 2 2 >>> df = df.rename_axis("limbs", axis="columns") >>> df limbs num_legs num_arms animal dog 4 0 cat 4 0 monkey 2 2 多重索引 >>> df.index = pd.MultiIndex.from_product([['mammal'], ... ['dog', 'cat', 'monkey']], ... names=['type', 'name']) >>> df limbs num_legs num_arms type name mammal dog 4 0 cat 4 0 monkey 2 2 >>> df.rename_axis(index={'type': 'class'}) limbs num_legs num_arms class name mammal dog 4 0 cat 4 0 monkey 2 2 >>> df.rename_axis(columns=str.upper) LIMBS num_legs num_arms type name mammal dog 4 0 cat 4 0 monkey 2 2