2013-01-16 7 views
6

Wenn Sie sklearn.tree.DecisionTreeClassifier verwenden, verfügt der Klassifikator über Methoden zur Vorhersage von Wahrscheinlichkeit und Klasse.Verwenden von scikit-learn DecisionTreeClassifier zum Cluster

Gibt es eine Möglichkeit, den gleichen Baum für das Clustering zu verwenden: Für einen gegebenen Eingabevektor x einfach sagen, zu welchem ​​Blatt x gehört?

Antwort

10

fand ich die Antwort auf meine eigene Frage - hier als Referenz für die nächste Zeit verlassen jemand danach sucht:

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

Sie können als akzeptiert auch Ihre eigene Antwort markieren. – ogrisel

+0

Danke. Stellt sich heraus, dass Sie zwei Tage warten müssen, bevor Sie Ihre eigene Antwort annehmen können :) –

+2

Dies ist definitiv etwas, für das wir mehr Dokumente benötigen. Übrigens, Sie könnten an RandomTreesEmbedding interessiert sein: http://scikit-learn.org/dev/modules/generated/sklearn.ensemble.RandomTreesEmbedding.html#sklearn.ensemble.RandomTreesEmbedding Die Gesamtstrukturen haben auch direkt eine "Anwenden" -Funktion. –

Verwandte Themen