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


Python dask_ml.preprocessing.Categorizer用法及代码示例


用法:

class dask_ml.preprocessing.Categorizer(categories: Optional[dict] = None, columns: Optional[pandas.core.indexes.base.Index] = None)

将 DataFrame 的列转换为分类 dtype。

对于虚拟、one-hot 或分类编码,这是一个有用的预处理步骤。

参数

categories映射,可选

将列名映射到 pandas.api.types.CategoricalDtype 实例的字典。或者,列名到(categories, ordered) 元组的映射。

columns顺序,可选

用于限制分类的列名序列。指定categories 时忽略此参数。

属性

columns_pandas.Index

已分类的列。当 categories 为 None 时很有用,我们检测分类和对象列

categories_dict

将列名映射到 dtypes 的字典。对于 pandas>=0.21.0,这些值是 pandas.api.types.CategoricalDtype 的实例。对于较旧的 pandas,这些值是 (categories, ordered) 的元组。

注意

此转换器仅适用于 dask.DataFramepandas.DataFrame 。默认情况下,所有object-type 列都转换为分类。类别集将是列中存在的值,并且类别将是无序的。通过 dtypes 来控制此行为。

所有其他列都包含在未触及的转换输出中。

对于 dask.DataFrame ,任何未知的分类都将变为已知。

例子

>>> df = pd.DataFrame({"A": [1, 2, 3], "B": ['a', 'a', 'b']})
>>> ce = Categorizer()
>>> ce.fit_transform(df).dtypes
A       int64
B    category
dtype: object
>>> ce.categories_
{'B': CategoricalDtype(categories=['a', 'b'], ordered=False)}

使用 CategoricalDtypes 指定类别:

>>> from pandas.api.types import CategoricalDtype
>>> ce = Categorizer(categories={"B": CategoricalDtype(['a', 'b', 'c'])})
>>> ce.fit_transform(df).B.dtype
CategoricalDtype(categories=['a', 'b', 'c'], ordered=False)

相关用法


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