pandas.Series.rename — pandas 2.2.3 documentation (original) (raw)
Series.rename(index=None, *, axis=None, copy=None, inplace=False, level=None, errors='ignore')[source]#
Alter Series index labels or name.
Function / dict values must be unique (1-to-1). Labels not contained in a dict / Series will be left as-is. Extra labels listed don’t throw an error.
Alternatively, change Series.name
with a scalar value.
See the user guide for more.
Parameters:
indexscalar, hashable sequence, dict-like or function optional
Functions or dict-like are transformations to apply to the index. Scalar or hashable sequence-like will alter the Series.name
attribute.
axis{0 or ‘index’}
Unused. Parameter needed for compatibility with DataFrame.
copybool, default True
Also copy underlying data.
Note
The copy keyword will change behavior in pandas 3.0.Copy-on-Writewill be enabled by default, which means that all methods with acopy keyword will use a lazy copy mechanism to defer the copy and ignore the copy keyword. The copy keyword will be removed in a future version of pandas.
You can already get the future behavior and improvements through enabling copy on write pd.options.mode.copy_on_write = True
inplacebool, default False
Whether to return a new Series. If True the value of copy is ignored.
levelint or level name, default None
In case of MultiIndex, only rename labels in the specified level.
errors{‘ignore’, ‘raise’}, default ‘ignore’
If ‘raise’, raise KeyError when a dict-like mapper orindex contains labels that are not present in the index being transformed. If ‘ignore’, existing keys will be renamed and extra keys will be ignored.
Returns:
Series or None
Series with index labels or name altered or None if inplace=True
.
Examples
s = pd.Series([1, 2, 3]) s 0 1 1 2 2 3 dtype: int64 s.rename("my_name") # scalar, changes Series.name 0 1 1 2 2 3 Name: my_name, dtype: int64 s.rename(lambda x: x ** 2) # function, changes labels 0 1 1 2 4 3 dtype: int64 s.rename({1: 3, 2: 5}) # mapping, changes labels 0 1 3 2 5 3 dtype: int64