eFun | R Documentation |
This function calculates M
(orthonormal) basis functions on a given
interval, that can be interpreted as the first M
eigenfunctions of an
appropriate data generating process of functional data.
eFun(argvals, M, ignoreDeg = NULL, type)
argvals |
A vector of numerics, defining a (fine) grid on the interval for which the basis functions are computed. |
M |
An integer, specifying the number of functions that are calculated. |
ignoreDeg |
A vector of numerics, specifying the degrees to be ignored
for type |
type |
A character string, specifying the type of functions that are calculated. See Details. |
The function implements three families of orthonormal basis functions plus
variations of them. The parameter type
, that specifies the functions
to be calculated, can have the following values:
"Poly"
: Calculate orthonormal Legendre polynomials of degree
0,...,M-1.
"PolyHigh"
: Calculate M
orthonormal Legendre
Polynomials of higher degree. The vector of indices ignoreDeg
specifies the functions to be ignored. If ignoreDeg
is not specified,
the function returns an error.
"Fourier"
: Calculate the first
M
Fourier basis functions.
"FourierLin"
: Calculate the
first M-1
Fourier basis functions plus the linear function,
orthonormalized to the previous functions via Gram-Schmidts method. This type
is currently implemented for functions on the unit interval [0,1]
only.
If the function is called with other argvals
, an error is thrown.
"Wiener"
: Calculate the first M
orthonormal eigenfunctions
of the Wiener process.
A univariate functional data object of class
funData
containing the basis functions on the given
interval.
funData
, simFunData
,
simMultiFunData
oldPar <- par(no.readonly = TRUE)
argvals <- seq(0,1,0.01)
par(mfrow = c(3,2))
plot(eFun(argvals, M = 4, type = "Poly"), main = "Poly", ylim = c(-3,3))
plot(eFun(argvals, M = 4, ignoreDeg = 1:2, type = "PolyHigh"), main = "PolyHigh", ylim = c(-3,3))
plot(eFun(argvals, M = 4, type = "Fourier"), main = "Fourier", ylim = c(-3,3))
plot(eFun(argvals, M = 4, type = "FourierLin"), main = "FourierLin", ylim = c(-3,3))
plot(eFun(argvals, M = 4, type = "Wiener"), main = "Wiener", ylim = c(-3,3))
par(oldPar)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.