osc_wise: Orthogonal Signal Correction (OSC) Approach by Wise and...

View source: R/mt_osc.R

osc_wiseR Documentation

Orthogonal Signal Correction (OSC) Approach by Wise and Gallagher.

Description

Orthogonal signal correction (OSC) approach by Wise and Gallagher.

Usage

  osc_wise(x, y, center=TRUE,osc.ncomp=4,pls.ncomp=10,
           tol=1e-3,iter=20,...)

Arguments

x

A numeric data frame or matrix to be pre-processed.

y

A vector or factor specifying the class for each observation.

center

A logical value indicating whether the data set should be centred by column-wise.

osc.ncomp

The number of components to be used in the OSC calculation.

pls.ncomp

The number of components to be used in the PLS calculation.

tol

A scalar value of tolerance for OSC computation.

iter

The number of iteration used in OSC calculation.

...

Arguments passed to or from other methods.

Value

A list containing the following components:

x

A matrix of OSC corrected data set.

R2

R2 statistics. It is calculated as the fraction of variation in X after OSC correction.

angle

An angle used for checking if scores t is orthogonal to y. An angle close to 90 degree means that orthogonality is achieved in the correction process.

w

A matrix of OSC weights.

p

A matrix of OSC loadings.

t

A matrix of OSC scores.

center

A logical value indicating whether the data set has been centred by column-wise.

Author(s)

Wanchang Lin

References

Westerhuis, J. A., de Jong, S., Smilde, A, K. (2001). Direct orthogonal signal correction. Chemometrics Intell. Lab. Syst., 56: 13-25.

Wise, B. M. and Gallagher, N.B. http://www.eigenvector.com/MATLAB/OSC.html.

See Also

osc, predict.osc, osc_sjoblom, osc_wold

Examples

data(abr1)
cl   <- factor(abr1$fact$class)
dat  <- abr1$pos

## divide data as training and test data
idx <- sample(1:nrow(dat), round((2/3)*nrow(dat)), replace=FALSE) 

## construct train and test data 
train.dat  <- dat[idx,]
train.t    <- cl[idx]
test.dat   <- dat[-idx,]        
test.t     <- cl[-idx] 

## build OSC model based on the training data
res <- osc_wise(train.dat, train.t)
names(res)

## pre-process test data by OSC
test.dat.1 <- predict.osc(res,test.dat)$x


mt documentation built on June 22, 2024, 12:24 p.m.

Related to osc_wise in mt...