我有一个X
矩阵,其中1000
个要素(列)和100
个浮点元素行,y
个向量目标有两个类0和1,维度y
的{{1}}是(100,1)
。我想计算这个矩阵中区分2
类的10个最佳特征。我试图使用scikit-learn
中定义的卡方,但X
是浮点元素。
你能帮助我并告诉我一个我可以使用的功能。
谢谢。
答案 0 :(得分:1)
我不确定X
是什么意思是浮点元素。 Chi2适用于非负直方图数据(即l1归一化)。如果数据不满足此要求,则必须使用其他方法。
scikit-learn中有whole module个特征选择算法。你读过文档吗?最简单的就是使用SelectKBest。
答案 1 :(得分:0)
递归特征消除(RFE)对我来说非常有效。此方法最初为所有要素指定权重,并删除权重最小的要素。重复应用此步骤,直到我们达到所需数量的功能(在您的情况下为10)。
http://scikit-learn.org/stable/modules/feature_selection.html#recursive-feature-elimination
据我所知,如果您的数据是相关的,L1惩罚选择可能不是最佳选择。如果我错了,请纠正我。