当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pyspark CategoricalIndex.set_categories用法及代码示例


本文简要介绍 pyspark.pandas.CategoricalIndex.set_categories 的用法。

用法:

CategoricalIndex.set_categories(new_categories: Union[pandas.core.indexes.base.Index, List], ordered: Optional[bool] = None, rename: bool = False, inplace: bool = False) → Optional[pyspark.pandas.indexes.category.CategoricalIndex]

将类别设置为指定的new_categories。

new_categories 可以包含新类别(这将导致未使用的类别)或删除旧类别(这将导致值设置为 NaN)。如果 rename==True ,类别将被简单地重命名(比旧类别中的项目更少或更多将导致值分别设置为 NaN 或未使用的类别)。

此方法可用于同时执行多个添加、删除和重新排序操作,因此比通过更专业的方法执行单个步骤更快。

另一方面,此方法不进行检查(例如,旧类别是否包含在重新排序的新类别中),这可能会导致令人惊讶的变化,例如在使用不考虑 S1 字符串的特殊字符串 dtypes 时等于单个 char python 字符串。

参数

new_categoriesIndex-like

新顺序的类别。

ordered布尔值,默认为 False

分类是否被视为有序分类。如果未给出,请勿更改排序信息。

rename布尔值,默认为 False

new_categories 是否应被视为旧类别的重命名或重新排序的类别。

inplace布尔值,默认为 False

是否就地重新排序类别或返回此分类的副本以及重新排序的类别。

自版本 3.2.0 起已弃用。

返回

CategoricalIndex 具有重新排序的类别或无(如果已到位)。

抛出

ValueError

如果 new_categories 不作为类别验证

例子

>>> idx = ps.CategoricalIndex(list("abbccc"))
>>> idx  
CategoricalIndex(['a', 'b', 'b', 'c', 'c', 'c'],
                 categories=['a', 'b', 'c'], ordered=False, dtype='category')
>>> idx.set_categories(['b', 'c'])  
CategoricalIndex([nan, 'b', 'b', 'c', 'c', 'c'],
                 categories=['b', 'c'], ordered=False, dtype='category')
>>> idx.set_categories([1, 2, 3], rename=True)
CategoricalIndex([1, 2, 2, 3, 3, 3], categories=[1, 2, 3], ordered=False, dtype='category')
>>> idx.set_categories([1, 2, 3], rename=True, ordered=True)
CategoricalIndex([1, 2, 2, 3, 3, 3], categories=[1, 2, 3], ordered=True, dtype='category')

相关用法


注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 pyspark.pandas.CategoricalIndex.set_categories。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。