1
$\begingroup$

I have a very big data which have 210k variables and 90 samples. Among the supervised classification methods, partial least squares discriminant analysis(PLS-DA) provided me the best separation. However, not all the variables contribute to this classification and I also would like to see which variables distinguishes a class from another.

As far as I know, orthogonal partial least squares discriminant analysis(O-PLS-DA) aims to maximize the co-variance between X and Y on the first latent variable. Compared to conventional PLS-DA, I believe this procedure provides better visualization while it can also be used for feature selection according to an R-bloggers post.

Since there is no package in Matlab for O-PLS-DA, is it possible to convert PLS-DA results to O-PLS-DA ones? If so, how can should I use O-PLS-DA results for feature selection? The options on my mind are using the final regression coefficents(beta vector) and loadings.

Edit: As it's asked in the comments, Y is multi-column(in my case 3) matrix of categorical variables and the number of rows equals to the number of samples. Below there is a simplified scenerio of Y where there are 3 classes each having 2 samples:

1 0 0
1 0 0
0 1 0
0 1 0
0 0 1
0 0 1
$\endgroup$
  • $\begingroup$ Also, please clarify "separation" of what with what you are talking about. Are your 90 samples split into classes? What is your Y? $\endgroup$ – amoeba says Reinstate Monica Aug 26 '16 at 21:47
  • $\begingroup$ I have updated my answer. @amoeba by seperation I mean the classification performance. $\endgroup$ – theGD Aug 29 '16 at 7:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.