scikit-learn - sklearn中分类数据的递归特征消除?

标签 scikit-learn categorical-data rfe

我有一个包含 8 个参数(4 个连续 4 个分类)的数据集,我正在尝试根据 Scikit 中的 RFEC 类消除特征。

这是我使用的公式:

svc = SVC(kernel="linear")
rfecv = RFECV(estimator=svc, step=1, cv=StratifiedKFold(y, 2),
          scoring='accuracy')
rfecv.fit(X, y)

由于我也有分类数据,我使用 dmatrics (Patsy) 将其更改为虚拟变量。

我想在特征选择后对数据尝试不同的分类模型,以改进模型和 SVC。

我在转换数据后运行了 RFE,我认为我做错了。
我们是在转换分类数据之前还是之后运行 RFECV?

我在任何文件中都找不到任何明确的指示。

最佳答案

这取决于您是要选择分类变量的给定值还是整个变量。
您当前正在选择分类变量的单个设置(又名级别)。
要选择整个变量,您可能需要做一些技巧,根据 SVC 定义您自己的估算器。
你可以做 make_pipeline(OneHotEncoder(categorical_features), SVC())但随后您需要设置 coef_ th 管道到反射(reflect)输入形状的东西。

关于scikit-learn - sklearn中分类数据的递归特征消除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29522991/

相关文章:

machine-learning - 分类与回归?

python - Pandas:如何将表示类别的字符串对象列转换为整数?

r - 插入符号的 rfe 函数中的下标越界错误

python - 通过应用 RFE 选择提供最佳调整 R 平方值的特征子集

python - 分类报告 : labels and target_names

python - Scikit-learn TfidfTranformer 产生错误的结果?

用于分类特征的 TensorFlow 嵌入

R插入符的rfe [错误在{: task 1 failed - "rfe is expecting 184 importance values but only has 2"]

python - 如何惩罚决策树错误分类某个类?

pandas - 如何使用 Pandas 计算分类特征的数量?