lcmat | R Documentation |
This function transforms a general (possibly redundant) zero constraints matrix into a
linear combination (aggregation) matrix \mathbf{A}_{cs}
.
When working with a general linearly constrained multiple (n
-variate)
time series, getting a linear combination matrix \mathbf{A}_{cs}
is a critical
step to obtain a structural-like representation such that
\mathbf{C}_{cs} = [\mathbf{I} \quad -\mathbf{A}],
where \mathbf{C}_{cs}
is the full rank zero constraints matrix (Girolimetto and
Di Fonzo, 2023).
lcmat(cons_mat, method = "rref", tol = sqrt(.Machine$double.eps),
verbose = FALSE, sparse = TRUE)
cons_mat |
A ( |
method |
Method to use: " |
tol |
Tolerance for the " |
verbose |
If |
sparse |
Option to return a sparse matrix (default is |
A list with two elements: (i) the linear combination (aggregation) matrix
(agg_mat
) and (ii) the vector of the column permutations (pivot
).
Girolimetto, D. and Di Fonzo, T. (2023), Point and probabilistic forecast reconciliation for general linearly constrained multiple time series, Statistical Methods & Applications, in press. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1007/s10260-023-00738-6")}.
Strang, G. (2019), Linear algebra and learning from data, Wellesley, Cambridge Press.
Utilities:
FoReco2matrix()
,
aggts()
,
balance_hierarchy()
,
commat()
,
csprojmat()
,
cstools()
,
ctprojmat()
,
cttools()
,
df2aggmat()
,
recoinfo()
,
res2matrix()
,
shrink_estim()
,
teprojmat()
,
tetools()
,
unbalance_hierarchy()
## Two hierarchy sharing the same top-level variable, but not sharing the bottom variables
# X X
# |-------| |-------|
# A B C D
# |---|
# A1 A2
# 1) X = C + D,
# 2) X = A + B,
# 3) A = A1 + A2.
cons_mat <- matrix(c(1,-1,-1,0,0,0,0,
1,0,0,-1,-1,0,0,
0,0,0,1,0,-1,-1), nrow = 3, byrow = TRUE)
obj <- lcmat(cons_mat = cons_mat, verbose = TRUE)
agg_mat <- obj$agg_mat # linear combination matrix
pivot <- obj$pivot # Pivot vector
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.