how can I do PCA on a table ?

30 views (last 30 days)
LO on 30 May 2019
Commented: Star Strider on 7 Jun 2019
I have a 3000 x 18 table containing 18 variables (one per column) of both numerical and categorical type (6 categorical).
I would liket to do PCA on the whole dataset
but the command
[coeff,score]=pca(mytable) does not work.
any idea on how to proceed ?

Accepted Answer

Star Strider
Star Strider on 30 May 2019
The pca function only accepts single-precision or double-precision numerical arrays. You most likely need to use the table2array (link) function first, to get the numeric data out of your table and into a form that pca can use.
LO on 7 Jun 2019
Got it, thanks. I thought categorical PCA was also possible with MATLAB.
Perhaps the answer is no. I will try to then exclude the non numerical variables and see if it works !
Star Strider
Star Strider on 7 Jun 2019
It should work in that instance.

Sign in to comment.

More Answers (0)


Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!