Implementations of plsregress on 2015b and 2013a

2 views (last 30 days)
I have a trouble that plsregress of 2013a and 2015b do not return same results.
I initialized matrixes "dataMatrix" and "classArray" and called
[Xloading, Yloading, Xscore, Yscore, beta, pctvar]=plsregress(dataMatrix, classArray, 2)
The resultant matrixes such as Xloading are different from each other.
The elements of matrxies are saved into attatched files.
Is the Implementation of plsregress on 2015b different from that of 2013a?

Accepted Answer

Arnab Sen
Arnab Sen on 22 Feb 2016
Hi Yoshihiro , I have reproduced the issue at my end. However, there is no mention of any modification of this function in the documentation. I tried to execute the code in different releases and bitness of MATLAB. The difference in the result is there for MATLAB 2013a 32 bit release and MATLAB 2013a 64 bit release. From the output you observed, it seems like you are using 32 bit version of MATLAB R2013a. However, MATLAB 2013a 64 bit give the same output of that of MATLAB 2015b. The issue seems not to be there from MATLAB R2013b onwards where the outputs are same for 32 bit and 64 bit. so as a workaround you can use MATLAB 2013a 64 bit or any higher version of MATLAB.
  1 Comment
Yoshihiro Yamada
Yoshihiro Yamada on 22 Feb 2016
I appreciate your investigations. I found this issue while updating my dll. The old dll (32bit only) calls Matlab 2013a functions internally and the new dlls (32/64bit) will call Matlab 2015b functions. Considering your investigations, I do not have to stick to the old dll.
Thanks a lot, Arnab.

Sign in to comment.

More Answers (0)


Find more on Function Creation in Help Center and File Exchange



Community Treasure Hunt

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

Start Hunting!