pandas.Series.cat.rename_categories#
- Series.cat.rename_categories(*args, **kwargs)[源代码]#
重命名类别。
- 参数:
- new_categories类似列表、类似字典或可调用
将取代旧类别的新类别。
类似列表:所有项目必须是唯一的,并且新类别的项目数量必须与现有类别的数量匹配。
类似字典:指定从旧类别到新类别的映射。未包含在映射中的类别将直接传递,映射中多余的类别将被忽略。
callable : 一个在所有旧类别项上调用的可调用对象,其返回值构成新类别。
- 返回:
- Categorical
重命名类别后的分类数据。
- 引发:
- ValueError
如果新的类别是列表式的,并且与当前类别的项目数量不同或未验证为类别
参见
reorder_categories
重新排序类别。
add_categories
添加新类别。
remove_categories
移除指定的类别。
remove_unused_categories
移除未使用的分类。
set_categories
将类别设置为指定的类别。
例子
>>> 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']