相关疑难解决方法(0)

将分类数据传递给Sklearn决策树

关于如何将分类数据编码为Sklearn Decission树有几篇帖子,但是从Sklearn文档中我们得到了这些

决策树的一些优点是:

(......)

能够处理数字和分类数据.其他技术通常专门用于分析仅具有一种变量类型的数据集.有关更多信息,请参阅算法

但是运行以下脚本

import pandas as pd
from sklearn.tree import DecisionTreeClassifier

data = pd.DataFrame()
data['A'] = ['a','a','b','a']
data['B'] = ['b','b','a','b']
data['C'] = [0, 0, 1, 0]
data['Class'] = ['n','n','y','n']

tree = DecisionTreeClassifier()
tree.fit(data[['A','B','C']], data['Class'])
Run Code Online (Sandbox Code Playgroud)

输出以下错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/site-packages/sklearn/tree/tree.py", line 154, in fit
    X = check_array(X, dtype=DTYPE, accept_sparse="csc")
  File "/usr/local/lib/python2.7/site-packages/sklearn/utils/validation.py", line 377, in check_array
    array = np.array(array, dtype=dtype, order=order, copy=copy)
ValueError: could not convert string to float: b …
Run Code Online (Sandbox Code Playgroud)

python decision-tree scikit-learn

58
推荐指数
5
解决办法
5万
查看次数

标签 统计

decision-tree ×1

python ×1

scikit-learn ×1