sopls: Sequential and Orthogonalized PLS (SO-PLS)

View source: R/sopls.R

soplsR Documentation

Sequential and Orthogonalized PLS (SO-PLS)

Description

Function for computing standard SO-PLS based on the interface of the pls package.

Usage

sopls(
  formula,
  ncomp,
  max_comps = min(sum(ncomp), 20),
  data,
  subset,
  na.action,
  scale = FALSE,
  validation = c("none", "CV", "LOO"),
  sequential = FALSE,
  segments = 10,
  sel.comp = "opt",
  progress = TRUE,
  ...
)

Arguments

formula

Model formula accepting a single response (block) and predictor block names separated by + signs.

ncomp

Numeric vector of components per block or scalar of overall maximum components.

max_comps

Maximum total number of components from all blocks combined (<= sum(ncomp)).

data

The data set to analyse.

subset

Expression for subsetting the data before modelling.

na.action

How to handle NAs (no action implemented).

scale

Logical indicating if variables should be scaled.

validation

Optional cross-validation strategy "CV" or "LOO".

sequential

Logical indicating if optimal components are chosen sequentially or globally.

segments

Optional number of segments or list of segments for cross-validation. (See [pls::cvsegments()]).

sel.comp

Character indicating if sequential optimal number of components should be chosen as minimum RMSECV ('opt', default) or by Chi-square test ('chi').

progress

Logical indicating if a progress bar should be displayed while cross-validating.

...

Additional arguments to underlying methods.

Details

SO-PLS is a method which handles two or more input blocks by sequentially performing PLS on blocks against a response and orthogonalising the remaining blocks on the extracted components. Component number optimisation can either be done globally (best combination across blocks) or sequentially (determine for one block, move to next, etc.).

Value

An sopls, mvr object with scores, loadings, etc. associated with printing (sopls_results) and plotting methods (sopls_plots).

References

Jørgensen K, Mevik BH, Næs T. Combining designed experiments with several blocks of spectroscopic data. Chemometr Intell Lab Syst. 2007;88(2): 154–166.

See Also

SO-PLS result functions, sopls_results, SO-PLS plotting functions, sopls_plots, SO-PLS Måge plot, maage, and SO-PLS path-modelling, SO_TDI. Overviews of available methods, multiblock, and methods organised by main structure: basic, unsupervised, asca, supervised and complex.

Examples

data(potato)
so <- sopls(Sensory ~ Chemical + Compression, data=potato, ncomp=c(10,10), 
            max_comps=10, validation="CV", segments=10)
summary(so)

# Scatter plot matrix with two first components from Chemical block
# and 1 component from the Compression block.
scoreplot(so, comps=list(1:2,1), ncomp=2, block=2)

# Result functions and more plots for SO-PLS 
# are found in ?sopls_results and ?sopls_plots.

multiblock documentation built on Nov. 18, 2023, 5:06 p.m.