如何将X_train,X_test,y_train,y_test用于特征重要性和返回质量指标?

我正在尝试在数据集中测试一些功能重要性模型。我正在使用过滤器方法,嵌入式方法和包装器方法。我有以下问题:

  1. 过滤方法(卡方,皮尔逊相关):由于火车和测试分开的概念不适用于过滤方法,我只应使用X和y是否正确?
  2. 对于嵌入式和包装方法,我只发现了在模型中使用X_train,y_train的示例,但未使用X_test,y_test(包括交叉验证)以及功能的质量或重要性度量的示例。这是一个例子:

X = df.drop(['id','target'],轴= 1) y = df ['target']

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

#Random Forest for FEATURE IMPORTANCE
from sklearn.feature_selection import SelectFromModel
from sklearn.ensemble import RandomForestClassifier

embeded_rf_selector = SelectFromModel(RandomForestClassifier(n_estimators=100))
embeded_rf_selector.fit(X_train, y_train)
embeded_rf_support = embeded_rf_selector.get_support()
embeded_rf_feature = X_train.loc[:,embeded_rf_support].columns.tolist()

如何将具有重要特征的模型与特征的质量或权重一起应用于TEST数据集(具有交叉验证)?另外,到目前为止,我将逐一介绍“要素重要性”模型。因此,如果有人可以为此类任务引用出色的管道脚本,我将非常感激。

谢谢!

评论