Python DecisionTreeClassifier如何查找下一个值

Python DecisionTreeClassifier如何查找下一个值,python,machine-learning,scikit-learn,Python,Machine Learning,Scikit Learn,如何在从训练集中构建决策树后找到下一个值? 在我的示例中,当我输入B和C值时,我需要知道字段的下一个值的概率 df = pd.DataFrame(np.random.randint(low=0, high=10, size=(5, 3)), columns=['a', 'b', 'c']) >>> a b c 0 2 8 8 1 4 2 9 2 1 0 7 3 5 1 7

如何在从训练集中构建决策树后找到下一个值? 在我的示例中,当我输入B和C值时,我需要知道字段的下一个值的概率

df = pd.DataFrame(np.random.randint(low=0, high=10, size=(5, 3)),
                    columns=['a', 'b', 'c'])

>>>
    a   b   c
0   2   8   8
1   4   2   9
2   1   0   7
3   5   1   7
4   6   0   2

X = df[ ['b','c'] ]
Y = df[ ['a'] ]

clf = DecisionTreeClassifier(random_state=241)
clf.fit(X, Y)

如果B=8,C=8,如何找出字段A的下一个值的概率?

您只需使用
clf.predict\u proba()
。例如:

clf.predict_proba([[8,8]])

将返回一个浮点向量,表示数据成为列“a”中每个唯一值的概率。

谢谢您的回答。但当我做这个函数时,我看到:“array([[1,0,0.]]),但我认为它应该是数字和概率百分比,比如:示例:下一个值将是2,可能是95%?(从DOC,predict_proba应该只返回2个参数:array of shape=[n_samples,n_classes])@Miraslav这意味着输入具有第一个标签的概率为100%,这可能只是一个极端情况,因为您使用的示例非常简单。我现在明白了,谢谢!但是也可以看到标签以获得结果吗?@Miraslav您可以使用
clf.predict([[8,8]])
以最大的概率获得标签。您还可以使用
clf.classes\uuu
以与
clf.predict()。