A new, slightly upgraded but essentially different version of PRTools is now available. Its operations are identical to the last distribution of PRTools4: version 4.2.5. The changes are needed to stay in line with developments in Stats, the statistical toolbox of Matlab. Below background and consequences for the users are discussed.


Users of PRTools suffered frequently from conflicts with classes and commands defined in the statistical toolbox. For instance both have a class dataset and a command pca. It would be natural to build interface routines between classifiers and plot routines defined in Stats and PRTools. This would enlarge the possibilities significantly and facilitate comparative studies.

More conflicts may arise later, e.g. for the class mapping and the central PRTools routine map which combines mappings or feeds datasets to mappings. The only way to avoid conflicts is to rename the PRTools classes in a unique way, e.g. prdataset instead of dataset.The Stats dataset class becomes thereby available for PRTools users. It will not be necessary anymore to remove the Stats toolbox (or some parts of it) from the Matlab path.


The three PRTools classes dataset, datafile and mapping have been renamed into prdataset, prdatafile, and prmapping. In addition the command map is renamed into prmap, pca into pcam and crossval into prcrossval. In the documentation we still use the names dataset, datafile and mapping. Just the names of the commands are changed, not the concepts.

The old pca routine has been moved inside the @prdataset directory. Thereby it becomes formally an overload of the Stats routine pca for PRTools datasets. It is, however, not a proper overload as has different parameters and outputs. It operates on PRTools datasets only, not on doubles. In addition there is the new routine pcam in the main directory of PRTools (a renamed copy of the old pca), which, like before, can handle doubles as well.

The same holds for the PRTools crossval routine as Stats also contains a crossval procedure. It has been placed inside @prdatasets and a copy renamed into prcrossval is now in the PRTools main directory.

In addition there are a few minor changes for smoothing the transition between version 4 and version 5. A new routine, prload takes care of the conversion of PRTools4 mat-files into the renamed classes. This routine has also been added to the last version of PRTools4 for backward compatibility: loading of the PRTools5 variables from mat-files and conversion to their PRTools4 versions.

Transition considerations

There are no consequences for the usage of PRTools on the command line or in macros as long as based on defined datasets and mappings. In the definition of these variables by user supplied functions, the new command names prdataset, prdatafile, prmapping, pcam and prcrossval should be used. Old matfiles loaded by prload instead of load. will automatically convert old classes to the new PRTools5 classes. User functions defining PRTools4 datasets and mappings should be changed.

Existing calls to pca and crossval can stay as they are as long as they use a dataset variable as the first parameter. Calls like w = a*pca, however have to be changed into w = a*pcam as they otherwise refer to the Stats toolbox. There is a procedure prtools4to5 that may be helpful in rewriting existing routines. It automatically converts calls to the renamed routines.

New possibilities

The Stats toolbox has some interesting routines for classification and and statistical plotting. At this moment four classifiers have been fully integrated in PRTools: