Error using cross validation with plsregress

5 vues (au cours des 30 derniers jours)
bruno ebel
bruno ebel le 23 Sep 2020
Commenté : bruno ebel le 29 Sep 2020
Hi everyone,
I am running a PLS regression and try to perform cross validation (k-fold) with matlab data.
load spectra
X = NIR;
y = octane;
[XL,yl,XS,YS,beta,PCTVAR,MSE] = plsregress(X,y,10,'CV',10);
Unfortunately, this error appear:
Could you explain to me how to solve it please?
Thank you in advance for your help.
Bruno
  4 commentaires
bruno ebel
bruno ebel le 24 Sep 2020
Ok, i've changed the order of the folder in the set up. Thanks again :-)
bruno ebel
bruno ebel le 24 Sep 2020
But errors are still here...

Connectez-vous pour commenter.

Réponse acceptée

Adam Danz
Adam Danz le 24 Sep 2020
Modifié(e) : Adam Danz le 28 Sep 2020
Based on the results of
which crossval -all
a function with the same name from a 3rd party toolbox (pls toolbox) is shadowing Matlab's crossval function which is called by plsregress.
If you are not using the pls toolbox, remove it from your Matlab path using
rmpath('C:\Program Files\MATLAB\R2017a\toolbox\pls_toolbox_862')
% or
rmpath([matlabroot, '\toolbox\pls_toolbox_862'])
If you are using the pls toolbox, you can use Julian's answer explained here
It grabs the function handle from Matlab's crossval function and assigns it to a variable that you can use in addition to the crossval version in pls toolbox.
  3 commentaires
Adam Danz
Adam Danz le 25 Sep 2020
Modifié(e) : Adam Danz le 28 Sep 2020
In the past when I faced the same problem I used Julian's answer explained here
I'll update my answer to include this.
bruno ebel
bruno ebel le 29 Sep 2020
ok thank you!

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by