Python中特性选择输出的列名(Scikit Learn)

2024-03-29 12:03:51 发布

您现在位置:Python中文网/ 问答频道 /正文

免责声明:我对Python非常陌生。在

我已经在python2.7scikitlearn中对我的数据集做了一个特征选择的预处理步骤。为此,我将列数从222个减少到77个。在

我的问题是特性选择的输出是一个numpy数组,它似乎已经去掉了列名。我需要知道保留了哪些列,但是如果看不到列名,我不知道如何获取这些信息。 这是我的功能选择代码,它返回一个矩阵:

 clf = ExtraTreesClassifier()
 clf = clf.fit(X, y)
 clf.feature_importances_  
 model = SelectFromModel(clf, prefit=True)
 X_new = model.transform(X)

谢谢你的帮助!在


Tags: 数据代码功能numpy信息声明model步骤
1条回答
网友
1楼 · 发布于 2024-03-29 12:03:51

使用^{}。在

get_support(indices=False)

Get a mask, or integer index, of the features selected

假设你的X中有5个特征,其中有3个被选中:第一个,第二个和第五个。在

然后model.get_support()将返回:

[True, True, False, False, True]

如果使用model.get_support(indices=True),则将得到:

^{pr2}$

希望这能澄清你的问题。在

相关问题 更多 >