pandas.CategoricalIndex.rename_categories#

CategoricalIndex.rename_categories(*args, **kwargs)[源代码]#

重命名类别。

Parameters:
new_categorieslist-like, dict-like or callable

将替换旧类别的新类别。

  • list-like:所有项必须是唯一的,并且新类别中的项数必须与现有类别的数量匹配。

  • dict-like:指定从旧类别到新类别的映射。未包含在映射中的类别将被保留,而映射中多余的类别将被忽略。

  • callable : 一个可调用对象,它将应用于所有旧类别项,其返回值构成新类别。

Returns:
Categorical

重命名类别的分类。

Raises:
ValueError

如果新类别是列表状的,并且其项数与当前类别不同,或者无法验证为类别

参见

reorder_categories

重新排序类别。

add_categories

添加新类别。

remove_categories

删除指定的类别。

remove_unused_categories

删除未使用的类别。

set_categories

将类别设置为指定的类别。

Examples

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

对于类似字典的 new_categories,额外的键将被忽略,而不在字典中的类别将按原样保留

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

您也可以提供一个可调用对象来创建新的类别

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