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()
Probabilistic reconciliation
MVN: *mvn()csmvn()temvn()ctmvn()
Sample-based: *smp()cssmp()tesmp()ctsmp()

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 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

314

Version

1.2.0

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Daniele Girolimetto

Last Published

March 12th, 2026

Functions in FoReco (1.2.0)

ctboot

Cross-temporal joint block bootstrap
cstools

Cross-sectional reconciliation tools
ctbu

Cross-temporal bottom-up reconciliation
ctcov

Cross-temporal covariance matrix approximation
csprojmat

Projection matrix for optimal combination cross-sectional reconciliation
cstd

Cross-sectional top-down reconciliation
ctlcc

Level conditional coherent reconciliation for cross-temporal hierarchies
csmvn

Cross-sectional Gaussian probabilistic reconciliation
csrec

Optimal combination cross-sectional reconciliation
cssmp

Cross-sectional probabilistic reconciliation (sample approach)
ctmvn

Cross-temporal Gaussian probabilistic reconciliation
cttools

Cross-temporal reconciliation tools
df2aggmat

Cross-sectional aggregation matrix of a dataframe
ctmo

Cross-temporal middle-out reconciliation
ctrec

Optimal combination cross-temporal reconciliation
ctsmp

Cross-temporal probabilistic reconciliation (sample approach)
cttd

Cross-temporal top-down reconciliation
tcsrec

Heuristic cross-temporal reconciliation
as_ctmatrix

Convert between horizon-stacked and cross-temporal layouts
ctprojmat

Projection matrix for optimal combination cross-temporal reconciliation
iterec

Iterative cross-temporal reconciliation
lcmat

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

Shrinkage of the covariance matrix using the Oracle approximation
set_bounds

Set bounds for bounded forecast reconciliation
itagdp

Italian Quarterly National Accounts
new_foreco_info

Low-level construction for reconcilied forecasts attribute foreco_info class
recoinfo

Informations on the reconciliation process
teboot

Temporal joint block bootstrap
res2matrix

One-step and multi-step residuals
shrink_estim

Shrinkage of the covariance matrix
temvn

Temporal Gaussian probabilistic reconciliation
temo

Temporal middle-out reconciliation
tetd

Temporal top-down reconciliation
tesmp

Temporal probabilistic reconciliation (sample approach)
teprojmat

Projection matrix for optimal combination temporal reconciliation
terec

Optimal combination temporal reconciliation
telcc

Level conditional coherent reconciliation for temporal hierarchies
as_tevector

Convert between horizon-stacked and temporal layouts
tebu

Temporal bottom-up reconciliation
tecov

Temporal covariance matrix approximation
vndata

Australian Tourism Demand dataset
unbalance_hierarchy

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

Temporal reconciliation tools
FoReco2matrix

Reconciled forecasts to matrix/vector
balance_hierarchy

Aggregation matrix of a (possibly) unbalanced hierarchy in balanced form
FoReco-package

FoReco: Forecast Reconciliation
csmo

Cross-sectional middle-out reconciliation
cscov

Cross-sectional covariance matrix approximation
csbu

Cross-sectional bottom-up reconciliation
cslcc

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

Commutation matrix
csboot

Cross-sectional joint block bootstrap
aggts

Non-overlapping temporal aggregation of a time series