有没有从SelectFromModel方法输出选定的列名?

ker*_*ero 5 python scikit-learn

我在加载为DataFrame的数据集中使用ExtraTreesClassifier和SelectFromModel执行功能选择,但是我想将这些选定的功能作为DataFrame保存到csv文件,同时保留列名.注意输出是numpy数组返回重要功能整列而不是列标题

import pandas as pd
from sklearn.ensemble import ExtraTreesClassifier
from sklearn.feature_selection import SelectFromModel
import numpy as np


df = pd.read_csv('los_10_one_encoder.csv')
y = df['LOS'] # target 
X= df.drop('LOS',axis=1) # drop LOS column 
clf = ExtraTreesClassifier()
clf = clf.fit(X, y)
print clf.feature_importances_

model = SelectFromModel(clf, prefit=True)
X_new = model.transform(X)
Run Code Online (Sandbox Code Playgroud)

小智 13

model = SelectFromModel(clf, prefit=True)
feature_idx = model.get_support()
feature_name = df.columns[feature_idx]
Run Code Online (Sandbox Code Playgroud)