pandas.CategoricalIndex.rename_categories — pandas 2.2.3 documentation (original) (raw)
CategoricalIndex.rename_categories(*args, **kwargs)[source]#
Rename categories.
Parameters:
new_categorieslist-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.
Returns:
Categorical
Categorical with renamed categories.
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
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']