Ich habe einen Datensatz mit kategorischen und numerischen Spalten und meine Zielspalte ist auch kategorisch. Ich benutze Scikit Bibliothek in Python34. Ich weiß, dass Scikit alle kategorischen Werte benötigt, um in numerische Werte umgewandelt zu werden, bevor irgendein maschinelles Lernverfahren durchgeführt wird.Kategorische & Numerische Merkmale - Kategorisches Ziel - Scikit Lernen - Python
Wie soll ich meine kategorischen Spalten in numerische Werte umwandeln? Ich habe viel versucht, aber ich bekomme verschiedene Fehler wie "str" Objekt hat keine "numpy.darray" Objekt hat keine Attribute "Elemente".
Here is an example of my data:
UserID LocationID AmountPaid ServiceID Target
29876 IS345 23.9876 FRDG JFD
29877 IS712 135.98 WERS KOI
Meine Daten-Set in einer CSV-Datei gespeichert wird, hier ist der kleine Code, den ich schrieb Ihnen eine Vorstellung zu geben, was ich tun möchte:
#reading my csv file
data_dir = 'C:/Users/davtalab/Desktop/data/'
train_file = data_dir + 'train.csv'
train = pd.read_csv(train_file)
#numeric columns:
x_numeric_cols = train['AmountPaid']
#Categrical columns:
categorical_cols = ['UserID' + 'LocationID' + 'ServiceID']
x_cat_cols = train[categorical_cols].as_matrix()
y_target = train['Target'].as_matrix()
I x_cat_cols müssen numerisch umgewandelt werden Werte und die addieren sie zu x_numeric_cols und so haben meine vollständigen Eingabe (x) Werte.
Dann muss ich meine Zielfunktion auch in numerischen Wert konvertieren und das als meine endgültige Ziel (y) -Spalte machen.
Dann möchte ich als ein Zufalls Wald mit diesen beiden Garnituren zu tun:
rf = RF(n_estimators=n_trees,max_features=max_features,verbose =verbose, n_jobs =n_jobs)
rf.fit(x_train, y_train)
Vielen Dank für Ihre Hilfe!
Für das Klassifizierungsziel müssen Sie tatsächlich keine Transformation verwenden. Alle Klassifikatoren können mit beliebigen Labels umgehen. –