2016-09-20 2 views
0

Ich verwendete die L1-basierte Featureauswahl von feature selection documentaion. Das transformierte Ergebnis liefert ein numpiges Array. Gibt es eine Möglichkeit, herauszufinden, welche Features in der transformierten Ausgabe ausgewählt wurden X_new.Ermitteln ausgewählter Features in der transformierten Ausgabe in Featureauswahl

from sklearn.svm import LinearSVC 
from sklearn.datasets import load_iris 
from sklearn.feature_selection import SelectFromModel 
import pandas as pd 
iris = load_iris() 
y=iris.target 
X = pd.DataFrame(iris.data,columns=['sepal_length','sepal_width','petal_length','petal_width']) 
print X.shape #(150,4)                                
lsvc = LinearSVC(C=0.01, penalty="l1", dual=False).fit(X, y) 
model = SelectFromModel(lsvc, prefit=True) 
X_new = model.transform(X) 
print X_new.shape #(150, 3) 

Antwort

0

ich von dieser Frage dachte Which features selects fit_transform? die lsvc.coef_ mir die komplette transfromed numpy Array mit ein paar Features, die alle 0's zurückkehren würde.

df=pd.DataFrame(lsvc.coef_,columns=['sepal_length','sepal_width','petal_length','petal_width']) 
print df.columns[(df == 0).all()] 
Verwandte Themen