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


Python sklearn SimpleImputer用法及代码示例


本文简要介绍python语言中 sklearn.impute.SimpleImputer 的用法。

用法:

class sklearn.impute.SimpleImputer(*, missing_values=nan, strategy='mean', fill_value=None, verbose=0, copy=True, add_indicator=False)

用于完成缺失值的插补转换器。

在用户指南中阅读更多信息。

参数

missing_valuesint、float、str、np.nan 或 None,默认=np.nan

缺失值的占位符。所有出现的missing_values 都将被估算。对于带有缺失值的可空整数 dtype 的 pandas 数据帧,应将 missing_values 设置为 np.nan ,因为 pd.NA 将转换为 np.nan

strategystr,默认='平均值'

插补策略。

  • 如果“mean”,则使用每列的平均值替换缺失值。只能用于数值数据。
  • 如果“median”,则使用沿每列的中值替换缺失值。只能用于数值数据。
  • 如果“most_frequent”,则使用每列中出现频率最高的值替换缺失值。可用于字符串或数字数据。如果有多个这样的值,则只返回最小值。
  • 如果“constant”,则用fill_value 替换缺失值。可用于字符串或数字数据。
fill_valuestr 或数值,默认=None

当 strategy == “constant” 时,fill_value 用于替换所有出现的 missing_values。如果保留默认值,则在输入数值数据时fill_value 将为 0,而对于字符串或对象数据类型,“missing_value” 将为。

verbose整数,默认=0

控制 imputer 的详细程度。

copy布尔,默认=真

如果为 True,将创建 X 的副本。如果为 False,则将尽可能就地进行插补。请注意,在以下情况下,将始终制作新副本,即使 copy=False

  • 如果X 不是浮点值数组;
  • 如果X被编码为CSR矩阵;
  • 如果 add_indicator=True
add_indicator布尔,默认=假

如果为真, MissingIndicator 变换将叠加到 imputer 变换的输出上。这允许预测估计器解释缺失,尽管有插补。如果某个特征在拟合/训练时没有缺失值,则即使在变换/测试时存在缺失值,该特征也不会出现在缺失指示器上。

属性

statistics_形状数组(n_features,)

每个特征的插补填充值。计算统计数据可能会产生np.nan 值。在transform期间,与np.nan统计对应的特征将被丢弃。

indicator_sklearn.impute.MissingIndicator

用于为缺失值添加二元指标的指标。 None 如果 add_indicator=False

n_features_in_int

拟合期间看到的特征数。

feature_names_in_ndarray 形状(n_features_in_,)

拟合期间看到的特征名称。仅当 X 具有全为字符串的函数名称时才定义。

注意

如果策略不是 "constant" ,则仅在 fit 处包含缺失值的列将在 transform 上被丢弃。

例子

>>> import numpy as np
>>> from sklearn.impute import SimpleImputer
>>> imp_mean = SimpleImputer(missing_values=np.nan, strategy='mean')
>>> imp_mean.fit([[7, 2, 3], [4, np.nan, 6], [10, 5, 9]])
SimpleImputer()
>>> X = [[np.nan, 2, 3], [4, np.nan, 6], [10, np.nan, 9]]
>>> print(imp_mean.transform(X))
[[ 7.   2.   3. ]
 [ 4.   3.5  6. ]
 [10.   3.5  9. ]]

相关用法


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