fda.usc (version 2.0.2)

# 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.

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.

class.out

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

norm

If `TRUE` the norm of eigenvectors `basis` is 1.

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.

y

Vector of response (scalar).

## Value

• `basis` basis

• `x` if `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 as create.basis and `fdata2pc`.

## Examples

```# 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)
# }
```