type_of_target#

sklearn.utils.multiclass.type_of_target(y, input_name='', raise_unknown=False)[源代码]#

确定目标指示的数据类型。

请注意,此类型是可以推断的最具体的类型。例如:

  • binary 更具体但兼容 multiclass .

  • multiclass 的整数更具体,但兼容 continuous .

  • multilabel-indicator 更具体但兼容 multiclass-multioutput .

参数:
y{类数组,稀疏矩阵}

目标值。如果是稀疏矩阵, y 预计将成为CSR/CSC矩阵。

input_name字符串,默认=“”

用于构造错误消息的数据名称。

Added in version 1.1.0.

raise_unknown布尔,默认=假

如果 True ,当返回的目标类型时引发错误 type_of_target"unknown" .

Added in version 1.6.

返回:
target_typestr

其中之一:

  • “继续”: y 是一个类似数组的浮点数,不全是整数,并且是1d或列载体。

  • “连续多输出”: y 是一个2d浮点数数组,不全是整数,并且两个维度的大小都> 1。

  • “二进制”: y 包含<= 2个离散值,并且是1d或列载体。

  • “多类”: y 包含两个以上的离散值,不是序列,并且是1d或列载体。

  • “多类-多输出”: y 是包含两个以上离散值的2D数组,不是序列序列,并且两个维度的大小都> 1。

  • “多标签指标”: y 是一个标签指示符矩阵,一个至少有两列的二维数组,最多有2个唯一值。

  • “未知”: y 类似于数组,但不是上述任何一种,例如3D数组、序列或非序列对象数组。

示例

>>> from sklearn.utils.multiclass import type_of_target
>>> import numpy as np
>>> type_of_target([0.1, 0.6])
'continuous'
>>> type_of_target([1, -1, -1, 1])
'binary'
>>> type_of_target(['a', 'b', 'a'])
'binary'
>>> type_of_target([1.0, 2.0])
'binary'
>>> type_of_target([1, 0, 2])
'multiclass'
>>> type_of_target([1.0, 0.0, 3.0])
'multiclass'
>>> type_of_target(['a', 'b', 'c'])
'multiclass'
>>> type_of_target(np.array([[1, 2], [3, 1]]))
'multiclass-multioutput'
>>> type_of_target([[1, 2]])
'multilabel-indicator'
>>> type_of_target(np.array([[1.5, 2.0], [3.0, 1.6]]))
'continuous-multioutput'
>>> type_of_target(np.array([[0, 1], [1, 1]]))
'multilabel-indicator'