2013-01-16 15 views
6

Podczas używania sklearn.tree.DecisionTreeClassifier klasyfikator ma metody przewidywania prawdopodobieństwa i klasy.Scikit-learn DecisionTreeClassifier do klastrowania

Czy istnieje sposób użycia tego samego drzewa do grupowania: dla danego wektora wejściowego x, po prostu powiedz, do którego liścia x należy?

Odpowiedz

10

znalazłem odpowiedzi na moje własne pytanie - pozostawiając je tutaj jako odniesienie dla następnego razu ktoś patrzy na niego:

import numpy as np 
import sklearn.tree 
clf = sklearn.tree.DecisionTreeClassifier() 
clf.fit(X,y) 
clf.tree_.apply(np.asfortranarray(X.astype(sklearn.tree._tree.DTYPE))) 
+1

Można również zaznaczyć swoją odpowiedź jako zaakceptowany. – ogrisel

+0

Dzięki. Okazuje się, że musisz poczekać dwa dni, zanim zaakceptujesz własną odpowiedź :) –

+2

To zdecydowanie coś, czego potrzebujemy więcej dokumentów. Btw, możesz być zainteresowany RandomTreesEmbedding: http://scikit-learn.org/dev/modules/generated/sklearn.ensemble.RandomTreesEmbedding.html#sklearn.ensemble.RandomTreesEmbedding Lasy mają również bezpośrednio funkcję "apply". –

Powiązane problemy