當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。