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

发布于 2021-01-29 15:57:48

我在使用作为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)
关注者
0
被浏览
137
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。
    model = SelectFromModel(clf, prefit=True)
    feature_idx = model.get_support()
    feature_name = df.columns[feature_idx]
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看