Ich möchte ein decision tree classifier
verwenden, um etwas vorherzusagen.Wie trainiert man einen Klassifikator mit einem Array von Arrays?
Wie Sie hier sehen können:
from sklearn import tree
sample1 = [120,1]
sample2 = [123,3]
features = [sample1,sample2]
labels = [0,1]
clf = tree.DecisionTreeClassifier()
clf = clf.fit(features, labels)
Ich habe zwei Proben:
Probe ein:
[120,1]
, die ich als0
gekennzeichnetProbe zwei:
[123,3]
was ich labe gefüllte als1
So weit so gut.
Aber jetzt, statt dieser Proben, ich möchte eine Reihe trainieren verwenden, so etwas wie:
features = [[120,120.2][1, 1.2]]
und dem jeweiligen Etikett für diese Probe ist:
label = [1]
So sollte mein Code sein:
from sklearn import tree
features = [[120,120.2][1, 1.2]]
labels = [1]
clf = tree.DecisionTreeClassifier()
clf = clf.fit(features, labels)
ich erhalte die folgende error
:
Typeerror: Liste Indizes müssen ganze Zahlen sein, nicht
tuple Ich verstehe, dass der Klassifikator eine Liste von ganzen Zahlen will, und nicht Tupel. und eine Lösung kann sein:
features = [[120, 120.2, 1, 1.2]]
labels = [1]
Aber ich möchte die Daten nicht zu verwechseln, da ich es separat in Arrays haben.
Gibt es eine Möglichkeit, meinen Classifier mit Arrays von Datenfeldern zu trainieren?
Dank
Ich würde persönlich gehen für 'features = [[120, 120.2, 1, 1.2]]'. Habe noch nie ein Tupel als Feature gesehen und ich sehe in der vorgeschlagenen Lösung nichts falsches. –