From Eigenvector Documentation Wiki
Revision as of 12:59, 31 August 2009 by Jeremy (Talk | contribs) (Description)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Partial Least Squares computational engine using Direct Scores algorithm.


[reg,ssq,xlds,ylds,wts,xscrs,yscrs,basis] = dspls(x,y,ncomp,options)


Performs PLS regression using Direct Scores PLS algorithm as described in Andersson, "A comparison of nine PLS1 algorithms", J. Chemometrics, (www.interscience.wiley.com) DOI: 10.1002/cem.1248

This modified SIMPLS algorithm provides improved numerical stability for high numbers of latent variables.

Note: The regression matrices are ordered in reg such that each ny (number of Y-block variables) rows correspond to the regression matrix for that particular number of latent variables.


  • x = X-block (predictor block) class "double".
  • y = Y-block (predicted block) class "double".

Optional Inputs

  • ncomp = the number of latent variables to be calculated (positive integer scalar {default = rank of X-block}.


  • reg = matrix of regression vectors.
  • ssq = the sum of squares captured.
  • xlds = X-block loadings.
  • ylds = Y-block loadings.
  • wts = X-block weights, currently returns empty.
  • xscrs = X-block scores.
  • yscrs = Y-block scores, currently returns empty.
  • basis = the basis of X-block loadings.


options = a structure array with the following fields:

  • display : [ 'off' |{'on'}] governs display to command window
  • ranktest : [ 'none' | 'data' | 'scores' | {'auto'} ] governs type of rank test to perform.
'data' = single test on X-block (faster with smaller data blocks and more components).
'scores' = test during regression on scores matrix (faster with larger data matricies).
'auto' = auto selection, or 'none' = assume sufficient rank.

See Also

nippls, pcr, pls, plsnipal, simpls