Learn R Programming

FoReco

Forecast Reconciliation is a a post-forecasting process aimed to improve the accuracy and align forecasts for a system of linearly constrained (e.g. hierarchical/grouped) time series. The FoReco package provides a comprehensive set of classical (bottom-up, top-down and middle-out), and modern (optimal and heuristic combination) forecast reconciliation procedures in different frameworks including cross-sectional, temporal, or cross-temporal settings.

The core functions for reconciliation categorized by framework are as follows:

ReconciliationCross-sectionalTemporalCross-Temporal
Classical reconciliation
Top-down: *td()cstd()tetd()cttd()
Bottom-up: *bu()csbu()tebu()ctbu()
Middle-out: *mo()csmo()temo()ctmo()
Regression‑based reconciliation
Least squares: *rec()csrec()terec()ctrec()
LCC: *lcc()cslcc()telcc()ctlcc()

Additionally, FoReco provides various functions for different aspects of forecast reconciliation, including aggregating time series, balancing hierarchies, computing projection and covariance matrices, and more.

Installation

You can install the stable version on R CRAN

install.packages("FoReco")

You can also install the development version from Github

# install.packages("devtools")
devtools::install_github("danigiro/FoReco")

Getting Started

To get started with using the FoReco package, refer to the documentation for detailed information on how to apply different forecast reconciliation procedures to your data.

Issues and Contributions

If you encounter any bugs or have suggestions for improvements, please feel free to report them on GitHub Issues page. Contributions are also welcome!

Copy Link

Version

Install

install.packages('FoReco')

Monthly Downloads

339

Version

1.1.0

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Daniele Girolimetto

Last Published

June 7th, 2025

Functions in FoReco (1.1.0)

ctprojmat

Projection matrix for optimal combination cross-temporal reconciliation
ctbu

Cross-temporal bottom-up reconciliation
ctmo

Cross-temporal middle-out reconciliation
ctcov

Cross-temporal covariance matrix approximation
cstd

Cross-sectional top-down reconciliation
csprojmat

Projection matrix for optimal combination cross-sectional reconciliation
cstools

Cross-sectional reconciliation tools
ctlcc

Level conditional coherent reconciliation for cross-temporal hierarchies
ctboot

Cross-temporal joint block bootstrap
csrec

Optimal combination cross-sectional reconciliation
iterec

Iterative cross-temporal reconciliation
lcmat

Linear combination (aggregation) matrix for a general linearly constrained multiple time series
df2aggmat

Cross-sectional aggregation matrix of a dataframe
recoinfo

Informations on the reconciliation process
res2matrix

One-step and multi-step residuals
cttools

Cross-temporal reconciliation tools
ctrec

Optimal combination cross-temporal reconciliation
tcsrec

Heuristic cross-temporal reconciliation
cttd

Cross-temporal top-down reconciliation
itagdp

Italian Quarterly National Accounts
tebu

Temporal bottom-up reconciliation
shrink_estim

Shrinkage of the covariance matrix
telcc

Level conditional coherent reconciliation for temporal hierarchies
teprojmat

Projection matrix for optimal combination temporal reconciliation
teboot

Temporal joint block bootstrap
set_bounds

Set bounds for bounded forecast reconciliation
terec

Optimal combination temporal reconciliation
temo

Temporal middle-out reconciliation
shrink_oasd

Shrinkage of the covariance matrix using the Oracle approximation
tecov

Temporal covariance matrix approximation
tetd

Temporal top-down reconciliation
tetools

Temporal reconciliation tools
vndata

Australian Tourism Demand dataset
unbalance_hierarchy

Aggregation matrix of a balanced hierarchy in (possibly) unbalanced form
aggts

Non-overlapping temporal aggregation of a time series
csboot

Cross-sectional joint block bootstrap
commat

Commutation matrix
balance_hierarchy

Aggregation matrix of a (possibly) unbalanced hierarchy in balanced form
csbu

Cross-sectional bottom-up reconciliation
cscov

Cross-sectional covariance matrix approximation
FoReco2matrix

Reconciled forecasts to matrix/vector
FoReco-package

FoReco: Forecast Reconciliation
cslcc

Level conditional coherent reconciliation for genuine hierarchical/grouped time series
csmo

Cross-sectional middle-out reconciliation