scikit Mixtypes的Y错误

use*_*528 3 python scikit-learn

嗨,我是一个scikit新手在这里.我正在尝试训练计算机给出一系列浮动决定在3个类之间.我把类分类为0,0.5和1.我也试过0,1.0和2.0.我仍然收到以下错误:

File "/Library/Python/2.7/site-packages/sklearn/utils/multiclass.py", line 85, in     unique_labels
raise ValueError("Mix type of y not allowed, got types %s" % ys_types)
ValueError: Mix type of y not allowed, got types set(['continuous', 'multiclass'])
Run Code Online (Sandbox Code Playgroud)

我不知道那个错误意味着什么

ely*_*ely 6

尝试使用整数类型作为目标标签.或者,或许更好,使用字符串标签,['a', 'b', 'c']但更具描述性的名称.

如果你检查这个文件的代码multiclass.py(代码在这里)并查找该函数type_of_target,你会发现这个案例有详细记录.

由于某些数据被视为float类型(0.5包含时),因此它会相信您具有连续值输出,这对多类离散分类无效.

另一方面,它看起来[0, 1.0, 2.0]像是一个整数和两个floats,这就是为什么你得到两个continuousmulticlass.切换最后一个示例[0, 1, 2]应该工作.文档也让它听起来像切换到[0.0, 1.0. 2.0]也可以工作,但要小心并首先测试.