Pandas是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。Pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。本文主要介绍一下Pandas中pandas.DataFrame.rename方法的使用。

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

更改轴标签。

Function/dict值必须唯一(1对1)。dict/Series中未包含的标签将保持原样。列出的其他标签不会引发错误。

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

参数:

mapper: 类似字典或函数

类似Dict或函数的转换,以应用于该轴的值。

二者必选其一mapper

axis与指定轴的目标mapper

index和 columns

index: 类似字典或函数

指定axis (mapper, 

axis=0相当于index=mapper)的替代方法。

columns: 类似字典或函数

指定axis (mapper, axis=1等同于columns=mapper)的替代方法。

axis:intstr

轴到目标与mapper

可以是轴名(' index ', ' columns ')或数字(0,1)

默认为' index '

copy:bool, 默认 True

还要复制底层数据。

inplace:bool, 默认为 False

是否返回一个新的DataFrame。如果为真,

则忽略copy的值。

level:intlevel name, 默认 None

对于多索引,只能在指定的级别重命名标签。

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

如果‘raise’,则在类似于dict的映射器、

索引或列包含正在转换的索引中不存在的标签时引发键错误。

如果 ‘ignore’,现有的键将被重命名,

额外的键将被忽略。

返回值:

SeriesDataFrame

与调用者相同的类型,

但每个轴上的索引均已更改。

Raises:

KeyError

如果在选定的轴中找不到任何标签,

则为“errors=’raise’”

例子,

DataFrame.rename 支持两种调用约定:

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

2) (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

使用轴样式参数:

>>> 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


推荐文档

相关文档

大家感兴趣的内容

随机列表