dask_ml.preprocessing.DummyEncoder

dask_ml.preprocessing.DummyEncoder

class dask_ml.preprocessing.DummyEncoder(columns: Optional[Sequence[Any]] = None, drop_first: bool = False)[源代码]

对分类列进行虚拟(独热)编码。

参数
序列,可选

要进行虚拟编码的列。必须是分类数据类型。默认情况下,所有分类数据类型的列都会进行虚拟编码。

drop_firstbool, 默认 False

是否在每一列中删除第一个类别。

属性
columns_索引

在虚拟编码之前的训练数据中的列

transformed_columns_索引

训练数据在虚拟编码后的列

categorical_columns_索引

训练数据中的分类列

noncategorical_columns_索引

训练数据中的其余列

categorical_blocks_dict

从列名到切片对象的映射。这些切片表示分类列在转换后的数组中最终所在的位置。

dtypes_dict

字典映射列名到任一

  • CategoricalDtype 的实例(pandas >= 0.21.0)

  • 元组 (categories, ordered)

注释

此转换器仅适用于 dask 和 pandas DataFrame。对于 dask DataFrame,您的所有分类变量都应该是已知的。

可以在数据框或数组上使用逆变换。

示例

>>> data = pd.DataFrame({"A": [1, 2, 3, 4],
...                      "B": pd.Categorical(['a', 'a', 'a', 'b'])})
>>> de = DummyEncoder()
>>> trn = de.fit_transform(data)
>>> trn
A  B_a  B_b
0  1    1    0
1  2    1    0
2  3    1    0
3  4    0    1
>>> de.columns_
Index(['A', 'B'], dtype='object')
>>> de.non_categorical_columns_
Index(['A'], dtype='object')
>>> de.categorical_columns_
Index(['B'], dtype='object')
>>> de.dtypes_
{'B': CategoricalDtype(categories=['a', 'b'], ordered=False)}
>>> de.categorical_blocks_
{'B': slice(1, 3, None)}
>>> de.fit_transform(dd.from_pandas(data, 2))
Dask DataFrame Structure:
                A    B_a    B_b
npartitions=2
0              int64  uint8  uint8
2                ...    ...    ...
3                ...    ...    ...
Dask Name: get_dummies, 4 tasks

方法

fit(X[, y])

确定要进行虚拟编码的分类列。

fit_transform(X[, y])

拟合数据,然后进行转换。

get_metadata_routing()

获取此对象的元数据路由。

get_params([deep])

获取此估计器的参数。

inverse_transform(X)

X 中的列进行反哑编码

set_output(*[, transform])

设置输出容器。

set_params(**params)

设置此估计器的参数。

transform(X[, y])

对 X 中的分类列进行虚拟编码

__init__(columns: Optional[Sequence[Any]] = None, drop_first: bool = False)[源代码]