验证数据#

sklearn.utils.validation.validate_data(_estimator, /, X='no_validation', y='no_validation', reset=True, validate_separately=False, skip_check_array=False, **check_params)[source]#

验证输入数据并设置或检查输入的特征名称和计数。

此辅助函数应用于需要输入验证的估计器。如果reset=True,则会修改估计器并设置n_features_in_feature_names_in_属性。

1.6 版本新增。

参数:
_estimator估计器实例

用于验证输入的估计器。

X形状为 (n_samples, n_features) 的 {数组、稀疏矩阵、数据框},默认为“no validation”

输入样本。如果为'no_validation',则不会对X进行验证。这对于元估计器非常有用,元估计器可以将其输入验证委托给其底层估计器。在这种情况下,必须传递y,并且唯一可接受的check_paramsmulti_outputy_numeric

y形状为 (n_samples,) 的数组,默认为“no_validation”

目标值。

  • 如果为None,则会对X调用check_array。如果估计器的requires_y标记为 True,则会引发错误。

  • 如果为'no_validation',则会对X调用check_array,并且忽略估计器的requires_y标记。这是一个默认占位符,决不应显式设置。在这种情况下,必须传递X

  • 否则,仅使用y_check_y,或者使用Xy进行检查,具体取决于validate_separately,使用check_arraycheck_X_y

reset布尔值,默认为 True

是否重置n_features_in_属性。如果为 False,则会检查输入与上次重置为 True 时提供的数据的一致性。

注意

建议在fit和第一次调用partial_fit时调用reset=True。所有其他验证X的方法都应设置reset=False

validate_separatelyFalse 或字典元组,默认为 False

仅当y不为None时使用。如果为False,则调用check_X_y。否则,它必须是一个关键字参数元组,用于对Xy分别调用check_array

estimator=self会自动添加到这些字典中,以便在输入数据无效时生成更具信息量的错误消息。

skip_check_array布尔值,默认为 False

如果为True,则Xy保持不变,只检查feature_names_in_n_features_in_。否则,对Xy调用check_array

**check_params关键字参数

传递给check_arraycheck_X_y的参数。如果validate_separately不为False,则忽略。

estimator=self会自动添加到这些参数中,以便在输入数据无效时生成更具信息量的错误消息。

返回:
out{ndarray, 稀疏矩阵}或这些类型的元组

经验证的输入。如果同时验证了Xy,则返回一个元组。