Robust Analysis of High Dimensional Data

A collection of methods for the robust analysis of univariate and multivariate functional data, possibly in high-dimensional cases, and hence with attention to computational efficiency and simplicity of use. See the R Journal publication of Ieva et al. (2019) for an in-depth presentation of the 'roahd' package. See Aleman-Gomez et al. (2021) for details about the concept of depthgram.

Build Status codecov

Package roahd (Robust Analysis of High-dimensional Data) allows to use a set of statistical tools for the exploration and robustification of univariate and multivariate functional datasets through the use of depth-based statistical methods.

In the implementation of functions special attention was put to their efficiency, so that they can be profitably used also for the analysis of high-dimensional datasets.

(For a full-featured description of the package, please turn to the Vignette)

fData and mfData objects

A simple S3 representation of functional data object, fData, allows to encapsulate the important features of univariate functional datasets (like the grid of the dependent variable, the pointwise observations etc.):

# Grid representing the dependent variable
grid = seq( 0, 1, length.out = 100 )
# Pointwise-measurements of the functional dataset
Data = matrix( c( sin( 2 * pi * grid ),
                  cos ( 2 * pi * grid ),
                  sin( 2 * pi * grid + pi / 4 ) ), ncol = 100, byrow = TRUE )
# S3 object encapsulating the univariate functional dataset            
fD = fData( grid, Data )
# S3 representation of a multivariate functional dataset
mfD = mfData( grid, list( 'comp1' = Data, 'comp2' = Data ) )

Also, this allows to exploit simple calls to customised functions which simplify the exploratory analysis:

# Algebra of fData objects
fD + 1 : 100
fD * 4
fD_1 + fD_2
# Subsetting fData objects (providing other fData objects)
fD[ 1, ]
fD[ 1, 2 : 4]
# Smaple mean and (depth-based) median(s)
mean( fD )
mean( fD[ 1, 10 : 20 ] )
median_fData( fD, type = 'MBD' )
# Plotting functions
plot( fD )
plot( mean( fD ), add = TRUE )
plot( fD[ 2:3, :] )

Robust methods for functional data analysis

A part of the package is specifically devoted to the computation of depths and other statistical indexes for functional data:

  • Band Dephts and Modified Band Depths,
  • Modified band depths for multivariate functional data,
  • Epigraph and Hypograph indexes,
  • Spearman and Kendall's correlation indexes for functional data.
  • Confidence intervals and tests on Spearman's correlation coefficients for univariate andmultivariate functional data.

These also are the core of the visualization/robustification tools like functional boxplot (fbplot) and outliergram (outliergram), allowing the visualization and identification of amplitude/shape outliers.

Thanks to the functions for the simulation of synthetic functional datasets, both fbplot and outliergram procedures can be auto-tuned to the dataset at hand, in order to control the true positive outliers rate.



Here's a list of what is changed in this update of roahd:


Major upgrades

Minor updates


Fixed dependency error on a new version of scales package that breaks the use of multivariate fbplot in the corner-case of zero outliers.

Major fixes

Minor fixes

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


1.4.3 by Aymeric Stamm, 3 months ago,

Report a bug at

Browse source code at

Authors: Nicholas Tarabelloni [aut] , Ana Arribas-Gil [aut] , Francesca Ieva [aut] , Anna Maria Paganoni [aut] , Juan Romo [aut] , Francesco Palma [ctb] , Aymeric Stamm [ctb, cre] , Antonio Elias-Fernandez [ctb]

Documentation:   PDF Manual  

Task views:

GPL-3 license

Imports scales, robustbase, magrittr, dplyr, ggplot2, plotly

Suggests testthat, knitr, rmarkdown, withr, vdiffr

Suggested by conformalInference.fd.

See at CRAN