mars.learn.utils.check_X_y#
- mars.learn.utils.check_X_y(X, y, accept_sparse=False, accept_large_sparse=True, dtype='numeric', order=None, copy=False, force_all_finite=True, ensure_2d=True, allow_nd=False, multi_output=False, ensure_min_samples=1, ensure_min_features=1, y_numeric=False, estimator=None)[来源]#
标准估计器的输入验证。
检查X和y的一致长度,强制X为二维,y为一维。默认情况下,检查X为非空并且仅包含有限值。标准输入检查也适用于y,例如检查y是否包含np.nan或np.inf目标。对于多标签y,设置multi_output=True以允许二维和稀疏y。如果X的dtype为对象,尝试转换为浮点型,如果失败则引发错误。
- Parameters
X (张量, 列表 或 稀疏张量) – 输入数据。
y (张量, 列表 或 稀疏张量) – 标签。
accept_sparse (string, boolean 或 list of string (默认=False)) – 表示允许的稀疏矩阵格式的字符串,例如‘csc’、‘csr’等。如果输入是稀疏的但不在允许的格式中,它将被转换为列出的第一个格式。True 允许输入为任何格式。False 意味着稀疏矩阵输入将引发错误。
accept_large_sparse (bool (default=True)) – 如果提供了CSR、CSC、COO或BSR稀疏矩阵并被accept_sparse接受,accept_large_sparse将使其仅在其索引以32位数据类型存储时被接受。
dtype (字符串, 类型, 类型 的 列表 或 无 (默认="numeric")) – 结果的数据类型。如果为无,则保留输入的数据类型。 如果为“numeric”,则保留 dtype,除非 array.dtype 是对象。 如果 dtype 是一个类型的列表,仅当输入的 dtype 不在列表中时才对第一个类型进行转换。
order ('F', 'C' 或 None (默认=None)) – 是否强制数组为fortran或c风格。
copy (boolean (default=False)) – 是否将强制复制触发。如果copy=False,可能会通过转换触发复制。
force_all_finite (boolean 或 'allow-nan', (default=True)) –
是否对 X 中的 np.inf 和 np.nan 引发错误。该参数 不影响 y 是否可以具有 np.inf 或 np.nan 的值。 可选值包括:
True: 强制 X 的所有值为有限值。
False: 接受 X 中的 np.inf 和 np.nan。
’allow-nan’: 仅接受 X 中的 np.nan 值。值不能是 无穷。
ensure_2d (boolean (default=True)) – 如果 X 不是 2D,是否引发值错误。
allow_nd (boolean (default=False)) – 是否允许 X.ndim > 2。
multi_output (boolean (default=False)) – 是否允许 2D y(数组或稀疏矩阵)。如果为假,y 将被验证为向量。如果 multi_output=True,则 y 不能包含 np.nan 或 np.inf 值。
ensure_min_samples (int (default=1)) – 确保X在其第一个轴上有最少的样本数量(对于2D数组来说是行)。
ensure_min_features (int (default=1)) – 确保2D数组具有一些最小数量的特征(列)。默认值为1会拒绝空数据集。只有当X有效地具有2个维度或最初是1D且
ensure_2d为真时,才会强制进行此检查。将其设置为0会禁用此检查。y_numeric (boolean (default=False)) – 是否确保 y 具有数值类型。如果 y 的数据类型为对象,它将被转换为 float64。应仅用于回归算法。
估计量 (字符串 或 估计量实例 (默认为 None)) – 如果传入,将在警告消息中包含估计量的名称。
- Returns
X_converted (object) – 转换并验证后的 X。
y_converted (object) – 转换并验证后的 y。