我有一个大型数据集的多维数据(240维)。
我是执行数据挖掘的初学者,我想使用Matlab应用线性判别分析。但是,我已经看到网上有很多功能,但我不明白它们应该如何应用。
基本上,我想申请LDA。
在此步骤之后,我希望能够对我的数据进行重建。
我可以手动执行此操作,但我想知道是否有任何可以执行此操作的预定义函数,因为它们应该已经过优化。
我的初始数据类似于:size(x)= [2000 240]。所以基本上我有240个功能(维度)和2000个数据点。我想在这个数据集上执行LDA。
任何帮助或暗示都可以。
感谢您的帮助。
答案 0 :(得分:3)
统计工具箱中的函数classify
执行线性(如果设置了一些选项,则为二次方)判别分析。文档中有几个工作示例说明了如何使用它:键入doc classify
或showdemo classdemo
以查看它们。
240个功能非常多,因为您只有2000个观察值,即使您只有两个类。您可能希望在LDA之前应用降维方法,例如PCA(请参阅doc princomp
)或使用特征选择方法(有关此类方法,请参阅doc sequentialfs
)。
答案 1 :(得分:1)
你可以在matlab 2014中使用fitcdiscr进行分类