当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pandas.DataFrame.rename用法及代码示例


用法:

DataFrame.rename(mapper=None, *, index=None, columns=None, axis=None, copy=True, inplace=False, level=None, errors='ignore')

更改轴标签。

函数/字典值必须是唯一的(一对一)。字典/系列中未包含的标签将保留 as-is。列出的额外标签不会引发错误。

有关更多信息,请参阅用户指南。

参数

mapperdict-like 或函数

Dict-like 或函数转换以应用于该轴的值。使用 mapperaxis 指定要使用 mapperindexcolumns 定位的轴。

indexdict-like 或函数

替代指定轴(mapper, axis=0 等效于 index=mapper)。

columnsdict-like 或函数

替代指定轴(mapper, axis=1 等效于 columns=mapper)。

axis{0 或 ‘index’,1 或 ‘columns’},默认 0

使用 mapper 定位的轴。可以是轴名称 (‘index’, ‘columns’) 或编号 (0, 1)。默认值为‘index’。

copy布尔值,默认为真

同时复制基础数据。

inplace布尔值,默认为 False

是否返回一个新的 DataFrame。如果为 True,则忽略副本的值。

levelint 或级别名称,默认无

在 MultiIndex 的情况下,仅重命名指定级别的标签。

errors{‘ignore’, ‘raise’},默认 ‘ignore’

如果 ‘raise’,当 dict-like mapper , indexcolumns 包含正在转换的索引中不存在的标签时,引发 KeyError。如果‘ignore’,现有的键将被重命名,额外的键将被忽略。

返回

DataFrame 或无

带有重命名轴标签的 DataFrame 或 None 如果 inplace=True

抛出

KeyError

如果在所选轴和“errors=’raise’” 中未找到任何标签。

例子

DataFrame.rename 支持两种调用约定

  • (index=index_mapper, columns=columns_mapper, ...)

  • (mapper, axis={'index', 'columns'}, ...)

我们强烈建议使用关键字参数来阐明您的意图。

使用映射重命名列:

>>> df = pd.DataFrame({"A": [1, 2, 3], "B": [4, 5, 6]})
>>> df.rename(columns={"A": "a", "B": "c"})
   a  c
0  1  4
1  2  5
2  3  6

使用映射重命名索引:

>>> df.rename(index={0: "x", 1: "y", 2: "z"})
   A  B
x  1  4
y  2  5
z  3  6

将索引标签转换为不同的类型:

>>> df.index
RangeIndex(start=0, stop=3, step=1)
>>> df.rename(index=str).index
Index(['0', '1', '2'], dtype='object')
>>> df.rename(columns={"A": "a", "B": "b", "C": "c"}, errors="raise")
Traceback (most recent call last):
KeyError: ['C'] not found in axis

使用 axis-style 参数:

>>> df.rename(str.lower, axis='columns')
   a  b
0  1  4
1  2  5
2  3  6
>>> df.rename({1: 2, 2: 4}, axis='index')
   A  B
0  1  4
2  2  5
4  3  6

相关用法


注:本文由纯净天空筛选整理自pandas.pydata.org大神的英文原创作品 pandas.DataFrame.rename。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。