fda.usc (version 1.5.0)

create.fdata.basis: Create Basis Set for Functional Data of fdata class

Description

Compute basis for functional data.

Usage

create.fdata.basis(fdataobj,l=1:5,maxl=max(l),type.basis="bspline",
rangeval=fdataobj$rangeval,class.out="fd")
create.pc.basis(fdataobj,l=1:5,norm=TRUE,basis=NULL,lambda=0,
P=c(0,0,1),...)
create.pls.basis(fdataobj, y, l = 1:5,norm=TRUE,lambda=0,
P=c(0,0,1),...)
create.raw.fdata(fdataobj, l = 1:ncol(fdataobj))

Arguments

fdataobj

fdata class object.

y

Vector of response (scalar).

l

Vector of basis index.

maxl

maximum number of basis

type.basis

Type of basis (see create.basis function).

rangeval

A vector of length 2 giving the lower and upper limits of the range of permissible values for the function argument.

norm

=TRUE the norm of eigenvectors basis is 1.

class.out

=="fd" basisfd class, =="fdata" fdata class.

basis

"fd" basis object.

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 P=c(0,0,1) penalize the second derivative (curvature) or acceleration. If P is a matrix: the penalty matrix object.

Further arguments passed to or from other methods.

Value

basis

basis

x

Is true the value of the rotated data (the centred data multiplied by the rotation matrix) is returned

mean

functional mean of fdataobj

df

degree of freedom

type

type of basis

References

Ramsay, James O. and Silverman, Bernard W. (2006), Functional Data Analysis, 2nd ed., Springer, New York.

N. Kraemer, A.-L. Boulsteix, and G. Tutz (2008). Penalized Partial Least Squares with Applications to B-Spline Transformations and Functional Data. Chemometrics and Intelligent Laboratory Systems, 94, 60 - 69. http://dx.doi.org/10.1016/j.chemolab.2008.06.009

See Also

See Also as create.basis and fdata2pc.

Examples

Run this code
# NOT RUN {
data(tecator)
basis.pc<-create.pc.basis(tecator$absorp.fdata,c(1,4,5))
plot(basis.pc$basis,col=1)
basis.pls<-create.pls.basis(tecator$absorp.fdata,y=tecator$y[,1],c(1,4,5))
lines(basis.pls$basis,col=2)

basis.fd<-create.fdata.basis(tecator$absorp.fdata,c(1,4,5),
type.basis="fourier")
plot(basis.pc$basis)
basis.fdata<-create.fdata.basis(tecator$absorp.fdata,c(1,4,5),
type.basis="fourier",class.out="fdata")
plot(basis.fd,col=2,lty=1)
lines(basis.fdata,col=3,lty=1)
# }

Run the code above in your browser using DataLab