mars.learn.utils.check_array#

mars.learn.utils.check_array(array, accept_sparse=False, accept_large_sparse=True, dtype='numeric', order=None, copy=False, force_all_finite=True, ensure_2d=True, allow_nd=False, ensure_min_samples=1, ensure_min_features=1, estimator=None) Tensor[来源]#

对张量、列表、稀疏矩阵或类似内容进行输入验证。

默认情况下,输入被检查为一个非空的二维数组,仅包含有限值。如果张量的dtype是对象,则尝试转换为浮点数,失败时引发错误。

Parameters
  • array (object) – 输入对象以进行检查 / 转换。

  • accept_sparse (字符串, 布尔值字符串的列表/元组 (默认=False)) – 表示允许的稀疏矩阵格式的字符串,例如‘csc’,‘csr’等。如果输入是稀疏的但不在允许的格式中,它会被转换为第一个列出的格式。True允许输入为任何格式。False意味着稀疏矩阵输入将引发错误。

  • accept_large_sparse (bool (default=True)) – 如果提供并被accept_sparse接受的是CSR、CSC、COO或BSR稀疏矩阵,则accept_large_sparse=False将导致仅在其索引使用32位数据类型存储时才被接受。

  • dtype (字符串, 类型, 类型列表 (默认="numeric")) – 结果的数据类型。如果为无,则保留输入的数据类型。 如果为“numeric”,则保留 dtype,除非 array.dtype 是对象。 如果 dtype 是一个类型的列表,仅当输入的 dtype 不在列表中时才对第一个类型进行转换。

  • order ('F', 'C'None (默认=None)) – 是否强制音阶为Fortran或C风格。 当order为None(默认)时,如果copy=False,则无法确保输出张量的内存布局;否则(copy=True)返回的张量的内存布局将尽可能保持与原始张量一致。

  • copy (boolean (default=False)) – 是否将强制复制触发。如果copy=False,可能会通过转换触发复制。

  • force_all_finite (boolean or 'allow-nan', (default=True)) –

    是否在张量中对 np.inf 和 np.nan 报错。可能的选项有:

    • True: 强制张量中的所有值为有限值。

    • False: 接受张量中的 np.inf 和 np.nan。

    • ’allow-nan’: 仅接受张量中的 np.nan 值。值不能为无限。

    对于对象类型数据,仅检查 np.nan,而不检查 np.inf。

  • ensure_2d (boolean (default=True)) – 如果张量不是二维的,是否引发值错误。

  • allow_nd (boolean (default=False)) – 是否允许 tensor.ndim > 2。

  • ensure_min_samples (int (default=1)) – 确保张量在其第一个轴(对于二维张量为行)上具有最少的样本数。将其设置为0将禁用此检查。

  • ensure_min_features (int (default=1)) – 确保2D张量具有一些最小特征数量(列)。默认值为1,拒绝空数据集。当输入数据有效地具有2个维度或最初为1D并且 ensure_2d 为真时,会强制执行此检查。设置为0会禁用此检查。

  • 估计量 (字符串估计量实例 (默认为 None)) – 如果传入,将在警告消息中包含估计量的名称。

Returns

array_converted – 转换和验证后的张量。

Return type

object