我有一个包含13个要素的数据集和一个代表类的列。
我想基于这些功能进行二进制分类,但是我使用的方法只能使用2个功能。所以我需要将功能减少到2列。
我的问题是我的某些特征是真实有价值的,例如年龄,心率和血压,而某些是分类的,例如胸痛的类型等。
哪种降维方法适合我的工作?
PCA是个好选择吗?
如果是这样,如何使用PCA进行分类?
我和R合作。
答案 0 :(得分:0)
您只需将分类特征编码为数字,例如1代表猫,2代表狗,依此类推。 PCA是一种有用的特征选择方法,但是它用于线性数据,您可以尝试一下并查看结果。内核PCA用于非线性数据,您也可以尝试一下。 其他方法包含LLE,ISOMAP,CCA,LDA ...您可以尝试这些方法并找到更好的结果。
答案 1 :(得分:0)
检查H2O库中的GLRM模型(link to docs)。它可以处理分类变量。 如果那对您不起作用,则在应用PCA之前,目标编码技术可能会有用。
答案 2 :(得分:0)
您可以尝试使用CatBoost(https://catboost.ai,https://github.com/catboost/catboost)-一种新的梯度增强库,可以很好地处理分类特征。