I have a PLS model made in R with
plsr() function (from package
pls); I have chosen the right number of components with cross validation and it runs fine, with high levels of
R^2_predicted (>0,85 which is reasonably good for my application).
I was trying to check if the model built under R it's the same I can get with Minitab when analyzing the same data set with the
PLS regression tool
(Menu Stat -> Regression -> PLS).
I'm using exactly the same data set in R and in Minitab but no way to obtain the same model: when I compare the coefficients in the R model using
coef(PLS_model, ncomp = N_selected, intercept = TRUE)
with the output from Minitab (
Coefficents table) I get different results.
I have tried several algorithms (
oscorespls which all can be used in function
plsr()) and also different functions (like
pls1_nipals() from package
chemometrics) but they all give very similar answers and none of them goes close the Minitab output.
According to the manuals, Minitab should use the NIPALS algorithm, as
oscorespls also does.
The models are built with the following syntax for package
PLS_model_a = plsr(Y~., data=train_data, n_comp_max=20, validation="LOO", method="kernelpls")
and this one for package "chemometrics":
PLS_model_b = pls1_nipals(X, Y, 20,)
The model generated in these two ways are identical but for both of them the coefficients differ significantly from the Minitab output. Please note that also the Minitab model is a good one with high
Anyone tried to do the same comparison? Any suggestion? Thanks for your help!