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


Python dask.dataframe.reshape.get_dummies用法及代码示例


用法:

dask.dataframe.reshape.get_dummies(data, prefix=None, prefix_sep='_', dummy_na=False, columns=None, sparse=False, drop_first=False, dtype=<class 'numpy.uint8'>, **kwargs)

将分类变量转换为虚拟/指标变量。

数据必须具有类别 dtype 才能推断结果的 columns

参数

data系列或 DataFrame

对于 Series,dtype 必须是分类的。对于 DataFrame,至少有一列必须是分类的。

prefix字符串、字符串列表或字符串字典,默认无

附加 DataFrame 列名的字符串。在 DataFrame 上调用 get_dummies 时,传递一个长度等于列数的列表。或者,prefix 可以是将列名映射到前缀的字典。

prefix_sep字符串,默认 ‘_’

如果附加前缀,则使用分隔符/定界符。或者像 prefix. 一样传递一个列表或字典

dummy_na布尔值,默认为 False

如果忽略 False NaN,则添加一列以指示 NaN。

columnslist-like,默认无

要编码的 DataFrame 中的列名。如果 columns 为 None 则所有具有 category dtype 的列都将被转换。

sparse布尔值,默认为 False

虚拟列是否应该稀疏。如果data 是一个系列或者如果包含所有列,则返回 SparseDataFrame。否则返回带有一些 SparseBlocks 的 DataFrame。

drop_first布尔值,默认为 False

是否通过删除第一级从 k 个分类级别中取出 k-1 个虚拟变量。

dtypedtype,默认 np.uint8

新列的数据类型。只允许使用一个 dtype。

返回

dummies DataFrame

例子

Dask 的版本仅适用于分类数据,因为这是在不计算所有数据的情况下了解输出形状的唯一方法。

>>> import pandas as pd
>>> import dask.dataframe as dd
>>> s = dd.from_pandas(pd.Series(list('abca')), npartitions=2)
>>> dd.get_dummies(s)
Traceback (most recent call last):
    ...
NotImplementedError: `get_dummies` with non-categorical dtypes is not supported...

使用分类数据:

>>> s = dd.from_pandas(pd.Series(list('abca'), dtype='category'), npartitions=2)
>>> dd.get_dummies(s)  
Dask DataFrame Structure:
                   a      b      c
npartitions=2
0              uint8  uint8  uint8
2                ...    ...    ...
3                ...    ...    ...
Dask Name: get_dummies, 4 tasks
>>> dd.get_dummies(s).compute()  
   a  b  c
0  1  0  0
1  0  1  0
2  0  0  1
3  1  0  0

相关用法


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