Numpy 如何使用熊猫随机森林的特征重要性?

Numpy 如何使用熊猫随机森林的特征重要性?,numpy,scikit-learn,neural-network,random-forest,feature-selection,Numpy,Scikit Learn,Neural Network,Random Forest,Feature Selection,我是新来的。我很高兴知道你对我的问题的建议。我需要知道我的数据集的哪些特征最重要。因此,我使用了SelectFromModel(RandomForestClassifier(n_estimators=100)),但问题是我无法选择数据库中最重要的列。 我应该使用selected\u feat=X\u train.columns[(sel.get\u support())]但问题是numpy;numpy不允许我使用X\u train.columns[]。我曾尝试使用selected\u feat=

我是新来的。我很高兴知道你对我的问题的建议。我需要知道我的数据集的哪些特征最重要。因此,我使用了
SelectFromModel(RandomForestClassifier(n_estimators=100))
,但问题是我无法选择数据库中最重要的列。 我应该使用
selected\u feat=X\u train.columns[(sel.get\u support())]
但问题是numpy;numpy不允许我使用
X\u train.columns[]
。我曾尝试使用
selected\u feat=pd.DataFrame(columns=[(sel.get\u support())])
,但它不能正常工作

有人能修好它吗? 数据集有84列,所有列都是数字。

这是我的python代码。

get_support方法返回一个掩码,即应用于列的TRUE和FALSE值数组:
因此,您正在创建一个名为true和false的列的空数据帧
如果需要包含重要列名称的列表,请运行:

[elem for elem in X_train.columns[sel.get_support]]

希望有帮助

get_support方法返回一个掩码,即应用于列的真值和假值数组:
因此,您正在创建一个名为true和false的列的空数据帧
如果需要包含重要列名称的列表,请运行:

[elem for elem in X_train.columns[sel.get_support]]

希望有帮助

X\u列[sel.get\u support]]
如何从总要素中仅选择真列。即get_support方法返回一个掩码,即应用于列的真值和假值数组:

X_train.columns[sel.get_support]]
如何从总要素中仅选择真列。即get_support方法返回一个掩码,即应用于列的真值和假值数组:

谢谢Davide,但是如果我使用X_train.columns[],我会遇到一个问题。错误如下:AttributeError:'numpy.ndarray'对象没有属性'columns',请将其设置为DFs。在使用train\u test\u split之后,运行
X\u train=pd.DataFrame(X\u train,columns=X.columns)
,依此类推。如果对X_train(/y/test)的任何后续调用需要一个数组,只需调用.values即可使用hank you Davide访问ndarray,但如果使用X_train.columns[],我会遇到问题。错误如下:AttributeError:'numpy.ndarray'对象没有属性'columns',请将其设置为DFs。在使用train\u test\u split之后,运行
X\u train=pd.DataFrame(X\u train,columns=X.columns)
,依此类推。如果对X_train(/y/test)的任何后续调用都需要数组,只需调用.values以访问ndarray,请尝试更好地解释您自己。少用“i.e.”。奥菲卡米:我同意纳贾姆应该格式化他的答案。无论如何,这不是一场拼写竞赛,复习第一篇文章并不是为了让你讲授诸如“i-e”之类的写作风格。有时我觉得人们在复习时忘记了这是为了更好地回答问题,而不是指出你不喜欢的写作风格。请试着更好地解释你自己。少用“i.e.”。奥菲卡米:我同意纳贾姆应该格式化他的答案。无论如何,这不是一场拼写竞赛,复习第一篇文章并不是为了让你讲授诸如“i-e”之类的写作风格。有时我觉得人们在复习的时候忘记了,这种感觉是为了更好地找到答案,而不是指出你不喜欢的写作风格。