depth.mfdata {fda.usc} | R Documentation |
Provides the depth measure for a list of p–functional data objects
Description
This function computes the depth measure for a list of p–functional data objects. The procedure extends the Fraiman and Muniz (FM), modal, and random project depth functions from 1 functional dataset to p functional datasets.
Usage
depth.modep(
mfdata,
mfdataref = mfdata,
h = NULL,
metric,
par.metric = list(),
method = "euclidean",
scale = FALSE,
trim = 0.25,
draw = FALSE,
ask = FALSE
)
depth.RPp(
mfdata,
mfdataref = mfdata,
nproj = 50,
proj = "vexponential",
trim = 0.25,
dfunc = "mdepth.TD",
par.dfunc = list(scale = TRUE),
draw = FALSE,
ask = FALSE
)
depth.FMp(
mfdata,
mfdataref = mfdata,
trim = 0.25,
dfunc = "mdepth.MhD",
par.dfunc = list(scale = FALSE),
draw = FALSE,
ask = FALSE,
...
)
Arguments
mfdata |
A list of new curves (list of fdata ojects) to evaluate the depth. |
mfdataref |
A set of reference curves (list of fdata ojects) w.r.t. the depth of mfdata is computed. |
h |
Bandwidth, |
metric |
Metric or semi–metric function used for compute the distance
between each element in |
par.metric |
list of parameters for the metric function. |
method |
Type of the distance measure (by default |
scale |
=TRUE, scale the depth. |
trim |
The alpha of the trimming. |
draw |
=TRUE, draw the curves, the sample median and trimmed mean. |
ask |
logical. If |
nproj |
The number projection. |
proj |
if is a character: create the random projection using a covariance matrix by process indicated in the argument (by default, proj=1, sigma=diag(ncol(fdataobj))), else if is a matrix of random projection provided by the user. |
dfunc |
Type of multivariate depth (of order p) function used in
Framiman and Muniz depth,
|
par.dfunc |
list of parameters for the |
... |
Further arguments passed to or from other methods. |
Details
-
depth.FMp
, this procedure suposes that each curve of the mfdataobj have the same support [0,T] (same argvals and rangeval). The FMp depth is defined as:where
is a
–variate depth of the vector
w.r.t. the sample at
. derivatives. In this case,note solo un dato funcional se reduce depth.FM=depth.FM1
The
depth.RPp
function calculates the depth in two steps. It builds random projections for the each curve of themfdata
w.r.t. each curve of themfdataref
object. Then it applyes a multivariate depth function specified indfunc
argument to the set of random projections. This procedure is a generalization of Random Projection with derivatives (RPD) implemented indepth.RPD
function. Now, the procedure computes a p-variate depth with the projections using thefunctional dataset.
The modal depth
depth.modep
function calculates the depth in three steps. First, the function calculates a suitable metrics or semi–metricsfor each curve of the
mfdata
w.r.t. each curve in themfdataref
object using themetric
andpar.metric
arguments, seemetric.lp
orsemimetric.NPFDA
for more details. Second, the function uses the–dimensional metrics to construct a new metric, specified in
method
argument, by default ifmethod="euclidean"
, i.e.. Finally, the empirical h–depth is computed as:
where
is dataset with p observed fucntional data,
is a suitable metric or semi–metric,
is an asymmetric kernel function and
h
is the bandwidth parameter.
Value
-
lmed Index deepest element
median
. -
ltrim Index of curves with trimmed mean
mtrim
. -
dep Depth of each curve of fdataobj w.r.t. fdataori.
-
dfunc second depth function used as multivariate depth, see details section.
-
par.dfunc list of parameters for the dfunc depth function.
-
proj The projection value of each point on the curves.
-
dist Distance matrix between curves or functional data.
Author(s)
Manuel Febrero-Bande, Manuel Oviedo de la Fuente manuel.oviedo@udc.es
References
Cuevas, A., Febrero-Bande, M. and Fraiman, R. (2007). Robust estimation and classification for functional data via projection-based depth notions. Computational Statistics 22, 3, 481-496. 10: 419-440. 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/
See Also
See Also as Descriptive
.
Examples
## Not run:
data(tecator)
xx<-tecator$absorp
xx1<-fdata.deriv(xx,1)
lx<-list(xx=xx,xx=xx1)
# Fraiman-Muniz Depth
par.df<-list(scale =TRUE)
out.FM1p=depth.FMp(lx,trim=0.1,draw=TRUE, par.dfunc = par.df)
out.FM2p=depth.FMp(lx,trim=0.1,dfunc="mdepth.LD",
par.dfunc = par.df, draw=TRUE)
# Random Project Depth
out.RP1p=depth.RPp(lx,trim=0.1,dfunc="mdepth.TD",
draw=TRUE,par.dfunc = par.df)
out.RP2p=depth.RPp(lx,trim=0.1,dfunc="mdepth.LD",
draw=TRUE,par.dfunc = par.df)
#Modal Depth
out.mode1p=depth.modep(lx,trim=0.1,draw=T,scale=T)
out.mode2p=depth.modep(lx,trim=0.1,method="manhattan",
draw=T,scale=T)
par(mfrow=c(2,3))
plot(out.FM1p$dep,out.FM2p$dep)
plot(out.RP1p$dep,out.RP2p$dep)
plot(out.mode1p$dep,out.mode2p$dep)
plot(out.FM1p$dep,out.RP1p$dep)
plot(out.RP1p$dep,out.mode1p$dep)
plot(out.FM1p$dep,out.mode1p$dep)
## End(Not run)