pandas.Series.cat.rename_categories

Series.cat.rename_categories(*args, **kwargs)[source]

Rename categories.

Parameters
new_categories:list-like, dict-like or callable

New categories which will replace old categories.

  • list-like: all items must be unique and the number of items in the new categories must match the existing number of categories.

  • dict-like: specifies a mapping from old categories to new. Categories not contained in the mapping are passed through and extra categories in the mapping are ignored.

  • callable : a callable that is called on all items in the old categories and whose return values comprise the new categories.

inplace:bool, default False

Whether or not to rename the categories inplace or return a copy of this categorical with renamed categories.

Deprecated since version 1.3.0.

Returns
cat:Categorical or None

Categorical with removed categories or None if inplace=True.

Raises
ValueError

If new categories are list-like and do not have the same number of items than the current categories or do not validate as categories

See also

reorder_categories

Reorder categories.

add_categories

Add new categories.

remove_categories

Remove the specified categories.

remove_unused_categories

Remove categories which are not used.

set_categories

Set the categories to the specified ones.

Examples

>>> c = pd.Categorical(['a', 'a', 'b'])
>>> c.rename_categories([0, 1])
[0, 0, 1]
Categories (2, int64): [0, 1]

For dict-like new_categories, extra keys are ignored and categories not in the dictionary are passed through

>>> c.rename_categories({'a': 'A', 'c': 'C'})
['A', 'A', 'b']
Categories (2, object): ['A', 'b']

You may also provide a callable to create the new categories

>>> c.rename_categories(lambda x: x.upper())
['A', 'A', 'B']
Categories (2, object): ['A', 'B']

© 2008–2021, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/1.3.4/reference/api/pandas.Series.cat.rename_categories.html