pandas.Series.cat.rename_categories#
- Series.cat.rename_categories(*args, **kwargs)[源代码]#
重命名类别。
- 参数
- new_categories列表式、字典式或可调用
将取代旧类别的新类别。
类似列表:所有项目必须是唯一的,并且新类别中的项目数量必须与现有类别数量匹配。
类词典:指定从旧类别到新类别的映射。不包含在映射中的类别被传递,映射中的额外类别被忽略。
Callable:在旧类别中的所有项上调用且其返回值包含新类别的Callable。
- inplace布尔值,默认为False
是就地重命名类别,还是返回具有重命名类别的此类别的副本。
1.3.0 版后已移除.
- 退货
- cat明确或无
带有已删除类别的类别或无类别,如果
inplace=True
。
- 加薪
- 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']