adaptiveFTS provides tools for adaptive estimation procedures for weakly dependent functional time series. Developed by Maissoro et al. (2024, 2025), it includes:
- Estimators for local regularity parameters
- Mean function estimation
- Autocovariance function estimation
- An adaptive Best Linear Unbiased Predictor (BLUP)
This package leverages the computational efficiency of Rcpp and RcppArmadillo for high-performance functional data analysis.
- Adaptive estimators for functional time series analysis.
- Efficient computation using Rcpp and RcppArmadillo.
- Implements methodologies from cutting-edge research (2024, 2025).
- Tools for predicting functional time series via BLUP.
To install the development version of adaptiveFTS, use the devtools package:
# Install devtools if not already installed
install.packages("devtools")
# Install adaptiveFTS from GitHub
devtools::install_github("hmaissoro/adaptiveFTS")Load the package and start using its functions:
# Load adaptiveFTS
library(adaptiveFTS)
# Example of mean function estimation
## Load data
data("data_far")
## Estimate risk function for the mean
dt_mean_risk <- estimate_mean_risk(
data = data_far, idcol = "id_curve", tcol = "tobs", ycol = "X",
t = c(1/4, 1/2, 3/4), bw_grid = NULL,
kernel_name = "epanechnikov"
)(Refer to the examples section for detailed code snippets and use cases.)
Example of mean function estimation
# Load data
data("data_far")
# Estimate risk function for the mean
dt_mean_risk <- estimate_mean_risk(
data = data_far, idcol = "id_curve", tcol = "tobs", ycol = "X",
t = c(1/4, 1/2, 3/4), bw_grid = NULL,
kernel_name = "epanechnikov"
)
# Visualize mean risk at various observation points
dt_dcast <- data.table::dcast(data = dt_mean_risk, formula = h ~ t, value.var = "mean_risk")
manipulateWidget::combineWidgets(
list = list(
dygraphs::dygraph(
data = dt_dcast[, list(h, "t = 0.25" = `0.25`)],
main = "t = 0.25", xlab = "h", ylab = "Risk Function"),
dygraphs::dygraph(
data = dt_dcast[, list(h, "t = 0.5" = `0.5`)],
main = "t = 0.5", xlab = "h", ylab = "Risk Function"),
dygraphs::dygraph(
data = dt_dcast[, list(h, "t = 0.75" = `0.75`)],
main = "t = 0.75", xlab = "h", ylab = "Risk Function")
),
nrow = 3
)
# Estimate mean function with optimal bandwidths
dt_mean <- estimate_mean(
data = data_far, idcol = "id_curve", tcol = "tobs", ycol = "X",
t = c(1/4, 1/2, 3/4), bw_grid = seq(0.005, 0.15, len = 45),
kernel_name = "epanechnikov"
)
# Display rounded estimates of the mean function
DT::datatable(data = dt_mean[, lapply(.SD, function(X) round(X, 3))])
We welcome contributions! Follow these steps:
- Fork the repository: adaptiveFTS
- Clone your fork:
git clone https://github.com/your-username/adaptiveFTS.git
- Create a feature branch:
git checkout -b feature-name
- Commit your changes:
git commit -m "Add feature description" - Push the branch:
git push origin feature-name
- Submit a pull request.
This package is licensed under the AGPL (>= 3) license. See the LICENSE file for more details.
- Built using Rcpp and RcppArmadillo for efficient computation.
- Inspired by methodologies developed in Maissoro et al. (2024, 2025).
-
Hassan Maissoro, Valentin Patilea, and Myriam Vimond. Adaptive Estimation for Weakly Dependent Functional Time Series. 2024. Available at arXiv:2403.13706.
-
Hassan Maissoro, Valentin Patilea, and Myriam Vimond. Adaptive prediction for Functional Times Series. 2024. Work in progress.