报错解决:“ValueError: Supported target types are: (‘binary‘, ‘multiclass‘). Got ‘unknown‘ instead.”

一、报错显示

  1. ValueError: Supported target types are: ('binary', 'multiclass'). Got 'unknown' instead.
  2. 在这里插入图片描述

二、报错原因

  1. 原因:target(即输入的标签)类型不正确

  2. 错误定位:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  3. 涉及知识点:python中type(), dtype(),astype()
    (1)type():返回的是数据结构的类型(list, dict, numpy.ndarry),是python的内置函数
    (2)dtype():返回的是数据元素的类型(int, float)
    (3)astype():改变np.array中所有数据元素数据类型

三、问题解决

  1. 方法一:
    (1)将for fold_num, (train_index, test_index) in enumerate(skf.split(X, y)):中的y,使用astype()函数改变数据类型。即:加入一行代码:y = y.astype(float),则原来的dtype=object变成dtype=float,报错解决!!^ _ ^
    (2)对应到自己的代码中可以使用print(y.dtype)语句输出查看
    在这里插入图片描述

  2. 方法二:
    (1)加入三行代码:

	from sklearn.preprocessing import LabelEncoder
    label_encoder = LabelEncoder()
    interactions = label_encoder.fit_transform(interactions)

(2)方法修改参考:
link1
link2

四、参考博文:

  1. 链接: type和dtype
  • 7
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值