Wie man die Werte der jeweiligen Funktion aus sklearn.feature_selection.SelectKBest?

Ich versuche, die Punkte aller features von my data set.

file_data = numpy.genfromtxt(input_file)
y = file_data[:,-1]
X = file_data[:,0:-1]

x_new = SelectKBest(chi2, k='all').fit_transform(X,y)

Bevor die erste Zeile von X hatte die "Feature-Namen" im string-format, aber ich war immer "Eingabe enthält NaN, infinity oder ein Wert zu groß für dtype('float64')" Fehler. So, jetzt X enthält nur die Daten und y enthält die Ziel-Werte(1,-1).

Wie kann ich die Punktzahl von jeder Funktion aus SelectKBest(versucht die Uni-variate Funktion Auswahl)?

Dank

  • Sieht aus wie Sie tun können x_new = SelectKBest(chi2, k='all') gefolgt von x_new.scores_
  • Du meinst wie diese: x_new = SelectKBest(chi2, k='alle').fit_transform(X,y) print(x_new.scores_)? Es gibt mir "'numpy.ndarray' - Objekt hat kein Attribut 'scores_'" Fehler. Ich entschuldige mich, ich bin ein bisschen neu auf Python.
  • x_new = SelectKBest(chi2, k='all') dann x_new.fit_transform(X,y) dann print x_new.scores_
  • Das klappte! Danke! Warum hat es nicht funktioniert, wenn ich mit x_new = SelectKBest(chi2, k='alle').fit_transform(X,y)?
  • Die scores_ zugänglich sind, von der SelectKBest Objekt. Wenn Sie fit_transform das Objekt, das zurückgegeben wird, ist ein numpy array
  • Danke @Ryan. Leider hat die voting-option wird nicht angezeigt, derzeit. Ich Stimme Ihrem Kommentar bis so bald wie möglich.
  • Mit x_new als Variablenname für eine schätzfunktion-Objekt (das ist nicht eine neue version von X) macht Ihre Erklärung verwirrend. Vielleicht nenne es einfach-Selektor? Die OP war mit x_new zu finden, um die transformierten X.

InformationsquelleAutor Black Dragon | 2015-09-21
Schreibe einen Kommentar