【问题标题】:Type of data allowed in features list in sklearn ?sklearn 功能列表中允许的数据类型?
【发布时间】:2016-03-02 10:04:30
【问题描述】:

伙计们,我正在尝试使用 sklearn(或 scikit-learn)库进行机器学习,但我一次又一次地遇到错误:

TypeError: cannot perform reduce with flexible type

我发生错误的代码行是:

X=[['SALES',2,4],['SALES',3,1],['TECHNICAL',9,1]];
Y=['NICE','NOT NICE','AWESOME']
classifier.fit(np.array(X),np.array(Y))

如果我将“销售”和“技术”分类值转换为 0 和 1 之类的数字,那么它就可以正常工作。

X=[[0,2,4],[0,3,1],[1,9,1]];
Y=['NICE','NOT NICE','AWESOME']
classifier.fit(np.array(X),np.array(Y))

我的问题是我必须将字符串类型的所有分类值转换为特征列表中的数字吗?我知道这可能是一个非常愚蠢的问题,但请帮助我......

【问题讨论】:

标签: machine-learning scikit-learn


【解决方案1】:

scikit-learn 估计模型的输入必须始终是数字 numpy 数组。

所以是的,您必须先将分类字符串特征转换为数字(序数或虚拟化),然后再将它们提供给 sklearn。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-09-14
    • 2018-04-10
    • 1970-01-01
    • 2018-10-09
    • 2012-04-25
    • 1970-01-01
    • 2011-12-04
    相关资源
    最近更新 更多