DecisionTreeClassifier调用fit报ValueError:Unknown label type: 'continuous'求助
报错原因
- 分类标签取值错误:A/B分类标签是数据集的行索引,不是数据矩阵的第一列。现有代码
Y = data.values[:, 0]取到的是第一列浮点型特征值,属于连续型数值,不符合分类器要求的离散分类标签输入,因此触发Unknown label type: 'continuous'报错。 - 特征取用不完整:当前代码
X = data.values[:, 1:5]只取了前4列特征,浪费了数据集自带的512个特征。
修复方案
将特征和标签的提取代码替换为如下内容即可:
# 提取全部512个浮点特征 X = data.values # 提取行索引作为分类标签 Y = data.index.values
后续数据集拆分、模型训练代码无需修改,即可正常运行。
验证方法
修改代码后可先执行如下代码确认标签取值正确:
print(set(Y))
正常输出应为{'A', 'B'},确认标签为离散分类值即可。
内容的提问来源于stack exchange,提问作者RubberDuckProducer
相关产品推荐
相关产品推荐

