MissingIndicator#
- class sklearn.impute.MissingIndicator(*, missing_values=nan, features='missing-only', sparse='auto', error_on_new=True)#
二进制指示器用于缺失值。
请注意,此组件通常不应在由转换器和分类器组成的普通
Pipeline
中使用,而应通过FeatureUnion
或ColumnTransformer
添加。更多信息请参阅 用户指南 。
Added in version 0.20.
- Parameters:
- missing_valuesint, float, str, np.nan 或 None, default=np.nan
缺失值的占位符。所有出现的
missing_values
将被插补。对于带有 可空整数类型和缺失值的 pandas 数据框,missing_values
应设置为np.nan
,因为pd.NA
将被转换为np.nan
。- features{‘missing-only’, ‘all’}, default=’missing-only’
插补器掩码是否应表示所有特征或特征的子集。
如果
'missing-only'
(默认),插补器掩码将仅表示在拟合期间包含缺失值的特征。如果
'all'
,插补器掩码将表示所有特征。
- sparsebool 或 ‘auto’, default=’auto’
插补器掩码格式应为稀疏还是密集。
如果
'auto'
(默认),插补器掩码将与输入类型相同。如果
True
,插补器掩码将是一个稀疏矩阵。如果
False
,插补器掩码将是一个 numpy 数组。
- error_on_newbool, default=True
如果为
True
,当在fit
中没有缺失值的特征在transform
中出现缺失值时,transform
将引发错误。这仅在features='missing-only'
时适用。
- Attributes:
- features_ndarray of shape (n_missing_features,) 或 (n_features,)
调用
transform
时将返回的特征索引。它们在fit
期间计算。如果features='all'
,features_
等于range(n_features)
。- n_features_in_int
在 fit 期间看到的特征数量。
Added in version 0.24.
- feature_names_in_ndarray of shape (
n_features_in_
,) 在 fit 期间看到的特征名称。仅当
X
的特征名称均为字符串时定义。Added in version 1.0.
See also
SimpleImputer
单变量缺失值插补。
IterativeImputer
多变量缺失值插补。
Examples
>>> import numpy as np >>> from sklearn.impute import MissingIndicator >>> X1 = np.array([[np.nan, 1, 3], ... [4, 0, np.nan], ... [8, 1, 0]]) >>> X2 = np.array([[5, 1, np.nan], ... [np.nan, 2, 3], ... [2, 4, 0]]) >>> indicator = MissingIndicator() >>> indicator.fit(X1) MissingIndicator() >>> X2_tr = indicator.transform(X2) >>> X2_tr array([[False, True], [ True, False], [False, False]])
- fit(X, y=None)#
拟合转换器在
X
上。- Parameters:
- X{array-like, sparse matrix},形状为 (n_samples, n_features)
输入数据,其中
n_samples
是样本的数量,n_features
是特征的数量。- y忽略
未使用,为了保持 API 一致性而存在。
- Returns:
- selfobject
拟合的估计器。
- fit_transform(X, y=None)#
生成
X
的缺失值指示器。- Parameters:
- X{array-like, sparse matrix},形状为 (n_samples, n_features)
要补全的输入数据。
- y忽略
未使用,为了API一致性而存在。
- Returns:
- Xt{ndarray, sparse matrix},形状为 (n_samples, n_features) 或 (n_samples, n_features_with_missing)
输入数据的缺失指示器。
Xt
的数据类型将为布尔型。
- get_feature_names_out(input_features=None)#
获取变换后的输出特征名称。
- Parameters:
- input_features字符串的数组或None,默认=None
输入特征。
如果
input_features
是None
,则使用feature_names_in_
作为输入特征名称。如果feature_names_in_
未定义,则生成以下输入特征名称:["x0", "x1", ..., "x(n_features_in_ - 1)"]
。如果
input_features
是数组,则input_features
必须与feature_names_in_
匹配(如果feature_names_in_
已定义)。
- Returns:
- feature_names_out字符串对象的ndarray
变换后的特征名称。
- get_metadata_routing()#
获取此对象的元数据路由。
请查看 用户指南 以了解路由机制的工作原理。
- Returns:
- routingMetadataRequest
MetadataRequest
封装的 路由信息。
- get_params(deep=True)#
获取此估计器的参数。
- Parameters:
- deepbool, 默认=True
如果为True,将返回此估计器和包含的子对象(也是估计器)的参数。
- Returns:
- paramsdict
参数名称映射到它们的值。
- set_output(*, transform=None)#
设置输出容器。
请参阅 介绍 set_output API 以了解如何使用API的示例。
- Parameters:
- transform{“default”, “pandas”, “polars”}, 默认=None
配置
transform
和fit_transform
的输出。"default"
: 转换器的默认输出格式"pandas"
: DataFrame 输出"polars"
: Polars 输出None
: 转换配置不变
Added in version 1.4:
"polars"
选项已添加。
- Returns:
- self估计器实例
估计器实例。
- set_params(**params)#
设置此估计器的参数。
该方法适用于简单估计器以及嵌套对象(例如
Pipeline
)。后者具有形式为<component>__<parameter>
的参数,以便可以更新嵌套对象的每个组件。- Parameters:
- **paramsdict
估计器参数。
- Returns:
- selfestimator instance
估计器实例。
- transform(X)#
生成
X
的缺失值指示器。- Parameters:
- X{array-like, sparse matrix},形状为 (n_samples, n_features)
要完成输入数据。
- Returns:
- Xt{ndarray, sparse matrix},形状为 (n_samples, n_features) 或 (n_samples, n_features_with_missing)
输入数据的缺失指示器。
Xt
的数据类型将为布尔型。