Faq any PLS Toolbox functions conflict with the Mathworks Toolboxes

From Eigenvector Research Documentation Wiki
Jump to navigation Jump to search

Issue:

Do any PLS_Toolbox functions conflict with the Mathworks Toolboxes?

Possible Solutions:

There are several files in PLS_Toolbox which are named the same as files in some of Mathwork's toolbox products. When such conflicts exist, Matlab will only be able to use the file located earliest in the Matlab Path (type pathtool to view and edit the Matlab path). In the case of such conflicts, you can switch between which file is used by editing the path and moving the desired folder (i.e. toolbox) to above the conflicting folder.

Question: How do I know if I have this problem? Check this related FAQ item.

The following conflicts have been identified between PLS_Toolbox function and some of Mathworks' toolboxes. Note that although the functions are named the same, the action of the functions are not usually the same. The following PLS_Toolbox commands were used to create this list. See the output from the 'ver' command below for a list of the toolboxes available at the time this list was created:

>> evrimovepath bottom
>> evridebug
  Shadowed file(s):                                                                                       
     boxplot.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/stats/stats )           
     cluster.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/stats/stats )           
     crossval.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/stats/stats )          
     dbscan.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/stats/stats )            
     gram.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/control/ctrlobsolete )     
     mcr.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/compiler )                  
     pca.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/stats/stats )               
     rescale.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/matlab/datafun )        
     ridge.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/stats/stats )             
     rmse.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/matlab/datafun )           
     tsne.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/stats/stats )              
     dataset2table.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/shared/statslib ) 
     dendrogram.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/stats/stats )        
     doc.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/matlab/helptools )          
     encode.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/comm/comm )              
     minmax.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/nnet/nnet/nndatafun )    
     range.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/stats/stats )             
     struct2dataset.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/shared/statslib )
     table2dataset.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/shared/statslib ) 
     kstest.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/stats/stats )            
     kurtosis.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/stats/stats )          
     signtest.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/stats/stats )          
     skewness.m   (duplicate file in  /Applications/MATLAB_R2022b_Beta.app/toolbox/stats/stats ) 
>> ver
--------------------------------------------------------------------------------------------
MATLAB Version: 9.13.0.2116060 (R2022b) Platform Beta
Operating System: macOS  Version: 13.2 Build: 22D49 
Java Version: Java 1.8.0_342-b07 with Azul Systems, Inc. OpenJDK 64-Bit Server VM mixed mode
--------------------------------------------------------------------------------------------
MATLAB                                                Version 9.13        (R2022b)
Simulink                                              Version 10.6        (R2022b)
5G Toolbox                                            Version 2.5         (R2022b)
Communications Toolbox                                Version 7.8         (R2022b)
Control System Toolbox                                Version 10.12       (R2022b)
Curve Fitting Toolbox                                 Version 3.8         (R2022b)
DSP System Toolbox                                    Version 9.15        (R2022b)
Deep Learning Toolbox                                 Version 14.5        (R2022b)
Image Processing Toolbox                              Version 11.6        (R2022b)
LTE Toolbox                                           Version 3.8         (R2022b)
MATLAB Compiler                                       Version 8.5         (R2022b)
MATLAB Compiler SDK                                   Version 7.1         (R2022b)
MIA_Toolbox                                           Version 3.1.0       (trunk) 
PLS_Toolbox                                           Version 9.2         (Trunk) 
Parallel Computing Toolbox                            Version 7.7         (R2022b)
Signal Processing Toolbox                             Version 9.1         (R2022b)
Statistics and Machine Learning Toolbox               Version 12.4        (R2022b)
Symbolic Math Toolbox                                 Version 9.2         (R2022b)

Also note that the Statistics and Machine Learning Toolbox contains an object named the dataset object which conflicts with Eigenvector's DataSet object. You can only use one of the two objects at any one time. If you wish to use the Mathworks' dataset object instead of the Eigenvector object, you must first move PLS_Toolbox to the bottom of the path (or remove it completely), then type the command:

>> clear classes 

(Note that this command will clear all variables from memory, but this is the only way to switch between the Eigenvector and Mathworks' DataSet objects.)


For newer versions of Matlab, if you are compiling code that uses the PLS_Toolbox you may need to uninstall the Statistics and Machine Learning Toolbox before compiling:

https://www.mathworks.com/matlabcentral/answers/94283-how-do-i-uninstall-a-toolbox-without-uninstalling-matlab

In general you may use our evrimovepath command to move PLS_Toolbox to the bottom of your path:

>> evrimovepath('bottom') 

When you intend to use PLS_Toolbox again, move it to the top of your path so the correct version of the DataSet Object is used:

>> evrimovepath('top') 

Also note that TMW is deprecating their DataSet Object in favor of their core table object.


Still having problems? Please contact our helpdesk at helpdesk@eigenvector.com