Introduction to Hierarchial Forecasting using HierarchialForecast
BottomUp
,
TopDown
,
MiddleOut
,
MinTrace
,
ERM
.
Among its probabilistic coherent methods we have
Normality
,
Bootstrap
,
PERMBU
.
ds | top_level | middle_level | bottom_level | y | |
---|---|---|---|---|---|
0 | 2000-01-01 | Australia | State1 | r1 | 10 |
1 | 2000-02-01 | Australia | State1 | r1 | 20 |
8 | 2000-01-01 | Australia | State1 | r2 | 10 |
9 | 2000-02-01 | Australia | State1 | r2 | 20 |
16 | 2000-01-01 | Australia | State2 | r3 | 100 |
17 | 2000-02-01 | Australia | State2 | r3 | 200 |
24 | 2000-01-01 | Australia | State2 | r4 | 100 |
25 | 2000-02-01 | Australia | State2 | r4 | 200 |
Y_hier_df
dataframe.
The aggregation constraints matrix is captured
within the S_df
dataframe.
Finally the tags
contains a list within Y_hier_df
composing each
hierarchical level, for example the tags['top_level']
contains
Australia
βs aggregated series index.
unique_id | ds | y | |
---|---|---|---|
0 | Australia | 2000-01-01 | 220 |
1 | Australia | 2000-02-01 | 440 |
8 | Australia/State1 | 2000-01-01 | 20 |
9 | Australia/State1 | 2000-02-01 | 40 |
16 | Australia/State2 | 2000-01-01 | 200 |
17 | Australia/State2 | 2000-02-01 | 400 |
24 | Australia/State1/r1 | 2000-01-01 | 10 |
25 | Australia/State1/r1 | 2000-02-01 | 20 |
32 | Australia/State1/r2 | 2000-01-01 | 10 |
33 | Australia/State1/r2 | 2000-02-01 | 20 |
40 | Australia/State2/r3 | 2000-01-01 | 100 |
41 | Australia/State2/r3 | 2000-02-01 | 200 |
48 | Australia/State2/r4 | 2000-01-01 | 100 |
49 | Australia/State2/r4 | 2000-02-01 | 200 |
unique_id | Australia/State1/r1 | Australia/State1/r2 | Australia/State2/r3 | Australia/State2/r4 | |
---|---|---|---|---|---|
0 | Australia | 1.0 | 1.0 | 1.0 | 1.0 |
1 | Australia/State1 | 1.0 | 1.0 | 0.0 | 0.0 |
2 | Australia/State2 | 0.0 | 0.0 | 1.0 | 1.0 |
3 | Australia/State1/r1 | 1.0 | 0.0 | 0.0 | 0.0 |
4 | Australia/State1/r2 | 0.0 | 1.0 | 0.0 | 0.0 |
5 | Australia/State2/r3 | 0.0 | 0.0 | 1.0 | 0.0 |
6 | Australia/State2/r4 | 0.0 | 0.0 | 0.0 | 1.0 |
naive
model. Observe that Y_hat_df
contains the forecasts but they
are not coherent.
unique_id | ds | Naive | Naive/BottomUp | |
---|---|---|---|---|
0 | Australia | 2000-05-01 | 880.0 | 880.0 |
1 | Australia | 2000-06-01 | 880.0 | 880.0 |
4 | Australia/State1 | 2000-05-01 | 80.0 | 80.0 |
5 | Australia/State1 | 2000-06-01 | 80.0 | 80.0 |
8 | Australia/State2 | 2000-05-01 | 800.0 | 800.0 |
9 | Australia/State2 | 2000-06-01 | 800.0 | 800.0 |
12 | Australia/State1/r1 | 2000-05-01 | 40.0 | 40.0 |
13 | Australia/State1/r1 | 2000-06-01 | 40.0 | 40.0 |
16 | Australia/State1/r2 | 2000-05-01 | 40.0 | 40.0 |
17 | Australia/State1/r2 | 2000-06-01 | 40.0 | 40.0 |
20 | Australia/State2/r3 | 2000-05-01 | 400.0 | 400.0 |
21 | Australia/State2/r3 | 2000-06-01 | 400.0 | 400.0 |
24 | Australia/State2/r4 | 2000-05-01 | 400.0 | 400.0 |
25 | Australia/State2/r4 | 2000-06-01 | 400.0 | 400.0 |