Last updated on 2018-06-02 by Fabian Scheipl

Functional data analysis (FDA) deals with data that "provides information about curves, surfaces or anything else varying over a continuum." This task view catalogues available packages in this rapidly developing field.

**General functional data analysis**

- fda provides functions to enable all aspects of functional data analysis: It includes object-types for functional data with corresponding functions for smoothing, plotting and regression models. The package includes data sets and script files for working examples from the book: Ramsay, J. O., Hooker, Giles, and Graves, Spencer (2009) "Data Analysis with R and Matlab" (Springer).
- fdasrvf performs alignment, PCA, and regression of multidimensional or unidimensional functions using the square-root velocity framework (Srivastava et al., 2011). This framework allows for elastic analysis of functional data through phase and amplitude separation.
- fdapace provides functional principal component based methods for sparsely or densely sampled random trajectories and time courses for functional regression and correlation, for longitudinal data analysis, the analysis of stochastic processes from samples of realized trajectories, and for the analysis of underlying dynamics.
- fda.usc provides routines for exploratory and descriptive analysis of functional data such as depth measurements, outlier detection, as well as unsupervised and supervised classification, (univariate, nonparametric) regression models with a functional covariate and functional analysis of variance.
- funData provides S4 classes for univariate and multivariate functional and image data and utility functions.
- fds contains 19 data sets with functional data.
- rainbow contains functions and data sets for functional data display, exploratory analysis and outlier detection.
- roahd provides 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.

**Regression and classification for functional data**

- denseFLMM estimates functional linear mixed models for densely sampled data based on functional principal component analysis.
- GPFDA uses functional regression as the mean structure and Gaussian processes as the covariance structure.
- growfunctions estimates a collection of time-indexed functions under either of Gaussian process (GP) or intrinsic Gaussian Markov random field (iGMRF) prior formulations where a Dirichlet process mixture allows sub-groupings of the functions to share the same covariance or precision parameters. The GP and iGMRF formulations both support any number of additive covariance or precision terms, respectively, expressing either or both of multiple trend and seasonality.
- refund provides spline-based methods for roughness penalized function-on-scalar, scalar-on-function, and function-on-function regression as well as methods for functional PCA. Some of the functions are applicable to image data.
- refund.wave provides methods for regressing scalar responses on functional or image predictors, via transformation to the wavelet domain and back.
- refund.shiny provides interactive plots for functional data analyses.
- FDboost implements flexible additive regression models and variable selection for scalar-on-function, function-on-scalar and function-on-function regression models that are fitted by a component-wise gradient boosting algorithm.
- fdaPDE contains an implementation of regression models with partial differential regularizations.
- flars implements variable selection for the functional linear regression with scalar response variable and mixed scalar/functional predictors based on the least angle regression approach.
- sparseFLMM implements functional linear mixed models for irregularly or sparsely sampled data based on functional principal component analysis.
- dbstats provides prediction methods where explanatory information is coded as a matrix of distances between individuals. It includes distance based versions of
`lm`and`glm,`as well as nonparametric versions of both, based on local estimation. To apply these methods to functional data it is sufficient to calculate a distance matrix between the observed functional data. - classiFunc provides nearest neighbor and kernel-based estimation based on semimetrics for supervised classification of functional data.

**Clustering functional data**

- Funclustering implements a model-based clustering algorithm for multivariate functional data.
- funFEM's algorithm (Bouveyron et al., 2014) allows to cluster functional data by modeling the curves within a common and discriminative functional subspace.
- funHDDC provides the funHDDC algorithm (Bouveyron & Jacques, 2011) which allows to cluster functional data by modeling each group within a specific functional subspace.
- fdakma performs clustering and alignment of a multidimensional or unidimensional functional dataset by means of k-mean alignment.

**Registering and aligning functional data**

- fdasrvf performs alignment, PCA, and regression of multidimensional or unidimensional functions using the square-root velocity framework (Srivastava et al., 2011). This framework allows for elastic analysis of functional data through phase and amplitude separation.
- warpMix implements warping (alignment) for functional data using B-spline based mixed effects models.
- fdakma performs clustering and alignment of a multidimensional or unidimensional functional dataset by means of k-mean alignment.

**Time series of functional data**

- ftsa provides functions for visualizing, modeling, forecasting and hypothesis testing of functional time series.
- ftsspec provides functions for estimating the spectral density operator of functional time series (FTS) and comparing the spectral density operator of two functional time series, in a way that allows detection of differences of the spectral density operator in frequencies and along the curve length.
- freqdom provides frequency domain methods for multivariate and functional time series and implements dynamic functional principal components and functional regression in the presence of temporal dependence.
- freqdom.fda provides a wrapper for functionality of freqdom for objects from fda
- pcdpca extends multivariate dynamic principal components to periodically correlated multivariate and functional time series.

**Other**

- ddalpha implements depth-based classification and calculation of data depth, also for functional data.
- fpca implements functional principal components for sparsely observed data in a geometric approach to MLE for functional principal components.
- fdatest provides an implementation of the Interval Testing Procedure for functional data in different frameworks (i.e., one or two-population frameworks, functional linear models) by means of different basis expansions (i.e., B-spline, Fourier, and phase-amplitude Fourier).
- fdadensity implements Petersen and Mueller (2016) (doi:10.1214/15-AOS1363) for the analysis of samples of density functions via specialized Functional Principal Components Analysis.
- geofd provides Kriging based methods for predicting functional data (curves) with spatial dependence.
- RFgroove implements variable selection tools for groups of variables and functional data based on a new grouped variable importance with random forests, implementing Gregorutti, B., Michel, B. and Saint Pierre, P. (2015). Grouped variable importance with random forests and application to multiple functional data analysis,
*Computational Statistics and Data Analysis***90**, 15-35. - switchnpreg provides functions for estimating the parameters from the latent state process and the functions corresponding to the J states as proposed by De Souza and Heckman (2013).
- fdcov provides a variety of tools for the analysis of covariance operators.
- covsep provides functions for testing if the covariance structure of 2-dimensional data is separable.

The Functional Data Analysis Task View is written by Fabian Scheipl, Sonja Greven and Tore Erdmann (LMU München, Germany). Please contact Fabian Scheipl with suggestions, additions and improvements.

6 months ago by Shahin Tavakoli

Tests for Determining if the Covariance Structure of 2-Dimensional Data is Separable

4 months ago by Oleksii Pokotylo

Depth-Based Classification and Calculation of Data Depth

6 months ago by Jona Cederbaum

Functional Linear Mixed Models for Densely Sampled Data

8 months ago by Alexander Petersen

Functional Data Analysis for Density Functions by Transformation to a Hilbert Space

8 months ago by Pantelis Z. Hadjipantelis

Functional Data Analysis and Empirical Dynamics

2 years ago by Eardi Lila

Functional Data Analysis and Partial Differential Equations; Statistical Analysis of Functional and Spatial Data, Based on Regression with Partial Differential Regularizations

8 months ago by Manuel Oviedo de la Fuente

Functional Data Analysis and Utilities for Statistical Computing

a year ago by Kidzinski L.

Functional Time Series: Dynamic Functional Principal Components

3 years ago by Shahin Tavakoli

Spectral Density Estimation and Comparison for Functional Time Series

15 days ago by Charles Bouveyron

Univariate and Multivariate Model-Based Clustering in Group-Specific Functional Subspaces

7 months ago by Terrance Savitsky

Bayesian Non-Parametric Dependent Models for Time-Indexed Functional Data

a year ago by Lukasz Kidzinski

Dynamic Principal Components for Periodically Correlated Functional Time Series

3 years ago by Baptiste Gregorutti

Importance Measure and Selection for Groups of Variables with Random Forests

7 months ago by Jona Cederbaum

Functional Linear Mixed Models for Irregularly or Sparsely Sampled Data

5 years ago by Davor Cubranic

Switching nonparametric regression models for a single curve and functional data

2 years ago by Emilie Devijver

Mixed Effects Modeling with Warping for Functional Data Using B-Spline