fdata2pls | R Documentation |
Compute penalized partial least squares (PLS) components for functional data.
fdata2pls(fdataobj, y, ncomp = 2, lambda = 0, P = c(0, 0, 1), norm = TRUE, ...)
fdataobj |
|
y |
Scalar response with length |
ncomp |
The number of components to include in the model. |
lambda |
Amount of penalization. Default value is 0, i.e. no penalization is used. |
P |
If P is a vector: coefficients to define the penalty matrix object.
By default |
norm |
If |
... |
Further arguments passed to or from other methods. |
If norm=TRUE
, computes the PLS by
NIPALS
algorithm and the Degrees of Freedom using the Krylov
representation of PLS, see Kraemer and Sugiyama (2011).
If norm=FALSE
, computes the PLS by Orthogonal Scores Algorithm and
the Degrees of Freedom are the number of components ncomp
, see
Martens and Naes (1989).
fdata2pls
function return:
The fdata2pls
function returns:
df
: Degree of freedom.
rotation
: fdata
class object.
x
: The value of the rotated data (the centered data multiplied by the rotation matrix) is returned.
fdataobj.cen
: The centered fdataobj
object.
mean
: Mean of fdataobj
.
l
: Vector of indices of principal components.
C
: The matched call.
lambda
: Amount of penalization.
P
: Penalty matrix.
Manuel Febrero-Bande, Manuel Oviedo de la Fuente manuel.oviedo@usc.es
Kraemer, N., Sugiyama M. (2011). The Degrees of Freedom of Partial Least Squares Regression. Journal of the American Statistical Association. Volume 106, 697-705.
Febrero-Bande, M., Oviedo de la Fuente, M. (2012). Statistical Computing in Functional Data Analysis: The R Package fda.usc. Journal of Statistical Software, 51(4), 1-28. https://www.jstatsoft.org/v51/i04/
Martens, H., Naes, T. (1989) Multivariate calibration. Chichester: Wiley.
Used in:
fregre.pls
, fregre.pls.cv
.
Alternative method: fdata2pc
.
## Not run:
n= 500;tt= seq(0,1,len=101)
x0<-rproc2fdata(n,tt,sigma="wiener")
x1<-rproc2fdata(n,tt,sigma=0.1)
x<-x0*3+x1
beta = tt*sin(2*pi*tt)^2
fbeta = fdata(beta,tt)
y<-inprod.fdata(x,fbeta)+rnorm(n,sd=0.1)
pls1=fdata2pls(x,y)
pls1$call
summary(pls1)
pls1$l
norm.fdata(pls1$rotation)
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.