Python 从决策树中提取解、算法
有五个随机生成的特征。如果第三列(中间列)的值为5,则输出为1,否则为0。我测试了DecisionTreeClassifier,它似乎有效。我也做了一些预测,它似乎是有效的。现在我的问题是:如何得到一个解的算法?让我们假设这是真实的数据,我不知道输入和输出是如何相互关联的,但是DecisionTreeClassifier将在这个数据集上工作。谢谢您想从您的Python 从决策树中提取解、算法,python,algorithm,scikit-learn,Python,Algorithm,Scikit Learn,有五个随机生成的特征。如果第三列(中间列)的值为5,则输出为1,否则为0。我测试了DecisionTreeClassifier,它似乎有效。我也做了一些预测,它似乎是有效的。现在我的问题是:如何得到一个解的算法?让我们假设这是真实的数据,我不知道输入和输出是如何相互关联的,但是DecisionTreeClassifier将在这个数据集上工作。谢谢您想从您的DecisionTreeClassifier获取决策路径吗?听起来你应该用。是的,我见过。但我真的不明白这告诉我什么?我收到元组(int,in
DecisionTreeClassifier
获取决策路径吗?听起来你应该用。是的,我见过。但我真的不明白这告诉我什么?我收到元组(int,int)和1。。。如何理解这一点?您可能需要阅读并相应地重新格式化您的问题。
import numpy as np
from sklearn.tree import DecisionTreeClassifier as DTS
from sklearn.cross_validation import train_test_split as tts
np.random.seed(0)
a = np.random.randint(20,size=1000).reshape(200,5)
b = []
for i in a:
if i[2] == 5:
b.append(1)
else:
b.append(0)
b = np.array(b).reshape(200,1)
t1,t2,y1,y2 = tts(a,b)
l = DTS()
l.fit(t1,y1)
print(l.score(t2,y2))