缺失值指示器#
- class sklearn.impute.MissingIndicator(*, missing_values=nan, features='missing-only', sparse='auto', error_on_new=True)[source]#
缺失值的二元指示器。
请注意,此组件通常不应在由变换器和分类器组成的普通
Pipeline
中使用,而应使用FeatureUnion
或ColumnTransformer
添加。更多信息请参阅用户指南。
0.20版本新增。
- 参数:
- missing_valuesint, float, str, np.nan 或 None,默认值为 np.nan
缺失值的占位符。所有
missing_values
的出现都将被估算。对于具有可空整数类型的 pandas 数据框以及缺失值,missing_values
应设置为np.nan
,因为pd.NA
将被转换为np.nan
。- features{'missing-only', 'all'},默认值为'missing-only'
估算器掩码是否应表示所有特征或特征的子集。
如果为
'missing-only'
(默认值),则填充器掩码仅在拟合期间表示包含缺失值的特征。如果为
'all'
,则填充器掩码将表示所有特征。
- sparse布尔值或 ‘auto’,默认值为’auto’
填充器掩码格式是否应为稀疏或密集。
如果为
'auto'
(默认值),则填充器掩码将与输入类型相同。如果为
True
,则填充器掩码将为稀疏矩阵。如果为
False
,则填充器掩码将为NumPy数组。
- error_on_new布尔值,默认值为True
如果为
True
,则transform
在存在在fit
中没有缺失值但在转换时却出现缺失值的特征时,将引发错误。这仅在features='missing-only'
时适用。
- 属性:
另请参阅
SimpleImputer
缺失值的单变量插补。
IterativeImputer
缺失值的多变量插补。
示例
>>> 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)[source]#
在
X
上拟合转换器。- 参数:
- X形状为 (n_samples, n_features) 的{数组、稀疏矩阵}
输入数据,其中
n_samples
是样本数,n_features
是特征数。- y忽略
未使用,根据约定存在以保持API一致性。
- 返回:
- self对象
拟合的估计器。
- fit_transform(X, y=None)[source]#
为
X
生成缺失值指示符。- 参数:
- X形状为 (n_samples, n_features) 的{数组、稀疏矩阵}
要完成的输入数据。
- y忽略
未使用,根据约定存在以保持API一致性。
- 返回:
- Xt形状为 (n_samples, n_features) 或 (n_samples, n_features_with_missing) 的{ndarray,稀疏矩阵}
输入数据的缺失值指示符。
Xt
的数据类型将为布尔值。
- get_feature_names_out(input_features=None)[source]#
获取转换后的特征名称。
- 参数:
- input_features字符串类型的数组或None,默认值为None
输入特征。
如果
input_features
为None
,则使用feature_names_in_
作为输入特征名称。如果feature_names_in_
未定义,则生成以下输入特征名称:["x0", "x1", ..., "x(n_features_in_ - 1)"]
。如果
input_features
是数组,则如果feature_names_in_
已定义,则input_features
必须与feature_names_in_
匹配。
- 返回:
- feature_names_out字符串对象的ndarray
转换后的特征名称。
- get_metadata_routing()[source]#
获取此对象的元数据路由。
请查看用户指南,了解路由机制的工作原理。
- 返回:
- routingMetadataRequest
一个
MetadataRequest
,封装了路由信息。
- get_params(deep=True)[source]#
获取此估计器的参数。
- 参数:
- deep布尔值,默认为True
如果为 True,则将返回此估计器及其包含的子对象(也是估计器)的参数。
- 返回:
- params字典
参数名称与其值的映射。
- set_output(*, transform=None)[源代码]#
设置输出容器。
参见 介绍 set_output API,了解如何使用此 API 的示例。
- 参数:
- transform{"default", "pandas", "polars"}, 默认值=None
配置
transform
和fit_transform
的输出。"default"
:转换器的默认输出格式"pandas"
:DataFrame 输出"polars"
:Polars 输出None
:转换配置保持不变
1.4 版本中新增:
"polars"
选项已添加。
- 返回:
- self估计器实例
估计器实例。