Scikit学习分类特征排名



我的数据包含了很多分类数据,例如年龄、肤色、体型、种族、性别等。问题是在scikit-learn中,我们无法像R那样将特征设置为因子,因此我们必须将分类数据转换为虚拟列。如

color size
green  M
red    L
blue   XL

转换为

color_blue  color_green  color_red  size_L  size_M  size_XL
0.0          1.0        0.0         0.0     1.0      0.0
0.0          0.0        1.0         1.0     0.0      0.0
1.0          0.0        0.0         0.0     0.0      1.0

但是,我想将功能按颜色或大小进行排名,而不是color_blue或size_M。有什么可能的方法可以做到这一点吗?或者我可以从每个相关功能的排名分数中总结值?(喜欢颜色列的分数应该是(绿蓝红分数)的总和)

请注意,我使用ExtraTreesClassifier进行排名分数计算。

如果我理解正确,您想要的是能够按列上的值对列进行排序。也许试试 OrdinalEncoder()?它采用列并按学习顺序分配一个数字(或者您可以按所需顺序向其传递列表)。

相关内容

  • 没有找到相关文章

最新更新