forecast-evaluation 0.0.11__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- forecast_evaluation/__init__.py +100 -0
- forecast_evaluation/core/__init__.py +14 -0
- forecast_evaluation/core/ar_p_model.py +770 -0
- forecast_evaluation/core/main_table.py +159 -0
- forecast_evaluation/core/outturns_revisions_table.py +60 -0
- forecast_evaluation/core/random_walk_model.py +317 -0
- forecast_evaluation/core/revisions_table.py +82 -0
- forecast_evaluation/core/transformations.py +470 -0
- forecast_evaluation/dashboard/__init__.py +0 -0
- forecast_evaluation/dashboard/app.py +7 -0
- forecast_evaluation/dashboard/create_app.py +113 -0
- forecast_evaluation/dashboard/tabs/about.py +20 -0
- forecast_evaluation/dashboard/tabs/accuracy.py +519 -0
- forecast_evaluation/dashboard/tabs/bias.py +329 -0
- forecast_evaluation/dashboard/tabs/correlation.py +188 -0
- forecast_evaluation/dashboard/tabs/efficiency.py +218 -0
- forecast_evaluation/dashboard/tabs/hedgehog.py +65 -0
- forecast_evaluation/dashboard/tabs/outturn_revisions.py +142 -0
- forecast_evaluation/dashboard/tabs/quantile_time_machine.py +84 -0
- forecast_evaluation/dashboard/tabs/radar.py +124 -0
- forecast_evaluation/dashboard/tabs/time_machine.py +83 -0
- forecast_evaluation/dashboard/theme/_brand.yml +21 -0
- forecast_evaluation/dashboard/theme/brand.py +13 -0
- forecast_evaluation/dashboard/ui.py +853 -0
- forecast_evaluation/dashboard/utils.py +138 -0
- forecast_evaluation/data/DensityForecastData.py +607 -0
- forecast_evaluation/data/ForecastData.py +1410 -0
- forecast_evaluation/data/__init__.py +6 -0
- forecast_evaluation/data/_plotting_mixin.py +478 -0
- forecast_evaluation/data/files/fer_forecasts.parquet +0 -0
- forecast_evaluation/data/files/fer_forecasts_minimal.parquet +0 -0
- forecast_evaluation/data/files/fer_outturns.parquet +0 -0
- forecast_evaluation/data/files/fer_outturns_minimal.parquet +0 -0
- forecast_evaluation/data/loader.py +51 -0
- forecast_evaluation/data/sample_data.py +124 -0
- forecast_evaluation/data/schema.py +84 -0
- forecast_evaluation/data/utils.py +214 -0
- forecast_evaluation/tests/__init__.py +31 -0
- forecast_evaluation/tests/accuracy.py +313 -0
- forecast_evaluation/tests/bias.py +286 -0
- forecast_evaluation/tests/blanchard_leigh.py +307 -0
- forecast_evaluation/tests/correlation.py +181 -0
- forecast_evaluation/tests/diebold_mariano.py +269 -0
- forecast_evaluation/tests/fluctuation_tests.py +213 -0
- forecast_evaluation/tests/results.py +599 -0
- forecast_evaluation/tests/revisions_errors_correlation.py +244 -0
- forecast_evaluation/tests/revisions_predictability.py +249 -0
- forecast_evaluation/tests/rolling_analysis.py +145 -0
- forecast_evaluation/tests/strong_efficiency.py +274 -0
- forecast_evaluation/tests/weak_efficiency.py +319 -0
- forecast_evaluation/utils.py +286 -0
- forecast_evaluation/visualisations/__init__.py +38 -0
- forecast_evaluation/visualisations/accuracy.py +432 -0
- forecast_evaluation/visualisations/bias.py +286 -0
- forecast_evaluation/visualisations/blanchard_leigh.py +89 -0
- forecast_evaluation/visualisations/correlation.py +271 -0
- forecast_evaluation/visualisations/density_plots.py +190 -0
- forecast_evaluation/visualisations/errors.py +227 -0
- forecast_evaluation/visualisations/forecast.py +186 -0
- forecast_evaluation/visualisations/forecast_errors.py +412 -0
- forecast_evaluation/visualisations/hedgehog.py +173 -0
- forecast_evaluation/visualisations/outturn_revisions.py +283 -0
- forecast_evaluation/visualisations/radar.py +467 -0
- forecast_evaluation/visualisations/revisions_predictability.py +78 -0
- forecast_evaluation/visualisations/strong_efficiency.py +92 -0
- forecast_evaluation/visualisations/theme.py +80 -0
- forecast_evaluation-0.0.11.dist-info/METADATA +130 -0
- forecast_evaluation-0.0.11.dist-info/RECORD +71 -0
- forecast_evaluation-0.0.11.dist-info/WHEEL +5 -0
- forecast_evaluation-0.0.11.dist-info/licenses/LICENSE +21 -0
- forecast_evaluation-0.0.11.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
# forecast_evaluation/__init__.py
|
|
2
|
+
from importlib.metadata import PackageNotFoundError, version
|
|
3
|
+
|
|
4
|
+
try:
|
|
5
|
+
__version__ = version("forecast_evaluation")
|
|
6
|
+
except PackageNotFoundError:
|
|
7
|
+
__version__ = "unknown"
|
|
8
|
+
|
|
9
|
+
from .core import add_ar_p_forecasts, add_random_walk_forecasts, create_outturn_revisions
|
|
10
|
+
from .data import DensityForecastData, ForecastData, create_sample_forecasts, create_sample_outturns
|
|
11
|
+
from .data.utils import filter_fer_variables
|
|
12
|
+
from .tests import (
|
|
13
|
+
bias_analysis,
|
|
14
|
+
blanchard_leigh_horizon_analysis,
|
|
15
|
+
compare_to_benchmark,
|
|
16
|
+
compute_accuracy_statistics,
|
|
17
|
+
create_comparison_table,
|
|
18
|
+
diebold_mariano_table,
|
|
19
|
+
fluctuation_tests,
|
|
20
|
+
forecast_errors_correlation_analysis,
|
|
21
|
+
revision_predictability_analysis,
|
|
22
|
+
revisions_errors_correlation_analysis,
|
|
23
|
+
rolling_analysis,
|
|
24
|
+
strong_efficiency_analysis,
|
|
25
|
+
weak_efficiency_analysis,
|
|
26
|
+
)
|
|
27
|
+
from .utils import covid_filter, filter_k, reconstruct_id_cols_from_unique_id
|
|
28
|
+
from .visualisations import (
|
|
29
|
+
plot_accuracy,
|
|
30
|
+
plot_average_revision_by_period,
|
|
31
|
+
plot_bias_by_horizon,
|
|
32
|
+
plot_blanchard_leigh_ratios,
|
|
33
|
+
plot_compare_to_benchmark,
|
|
34
|
+
plot_correlation_heatmap,
|
|
35
|
+
plot_errors_across_time,
|
|
36
|
+
plot_forecast_error_density,
|
|
37
|
+
plot_forecast_errors,
|
|
38
|
+
plot_forecast_errors_by_horizon,
|
|
39
|
+
plot_hedgehog,
|
|
40
|
+
plot_outturn_revisions,
|
|
41
|
+
plot_outturns,
|
|
42
|
+
plot_radar,
|
|
43
|
+
plot_rolling_bias,
|
|
44
|
+
plot_rolling_correlation,
|
|
45
|
+
plot_rolling_relative_accuracy,
|
|
46
|
+
plot_strong_efficiency,
|
|
47
|
+
plot_vintage,
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
__all__ = [
|
|
51
|
+
# Core functions
|
|
52
|
+
"create_outturn_revisions",
|
|
53
|
+
"add_random_walk_forecasts",
|
|
54
|
+
"add_ar_p_forecasts",
|
|
55
|
+
# Data classes
|
|
56
|
+
"ForecastData",
|
|
57
|
+
"DensityForecastData",
|
|
58
|
+
# Sample data functions
|
|
59
|
+
"create_sample_forecasts",
|
|
60
|
+
"create_sample_outturns",
|
|
61
|
+
# Test/analysis functions
|
|
62
|
+
"bias_analysis",
|
|
63
|
+
"blanchard_leigh_horizon_analysis",
|
|
64
|
+
"compare_to_benchmark",
|
|
65
|
+
"compute_accuracy_statistics",
|
|
66
|
+
"create_comparison_table",
|
|
67
|
+
"diebold_mariano_table",
|
|
68
|
+
"fluctuation_tests",
|
|
69
|
+
"forecast_errors_correlation_analysis",
|
|
70
|
+
"revisions_errors_correlation_analysis",
|
|
71
|
+
"revision_predictability_analysis",
|
|
72
|
+
"rolling_analysis",
|
|
73
|
+
"strong_efficiency_analysis",
|
|
74
|
+
"weak_efficiency_analysis",
|
|
75
|
+
# Visualisation functions
|
|
76
|
+
"plot_accuracy",
|
|
77
|
+
"plot_average_revision_by_period",
|
|
78
|
+
"plot_blanchard_leigh_ratios",
|
|
79
|
+
"plot_compare_to_benchmark",
|
|
80
|
+
"plot_correlation_heatmap",
|
|
81
|
+
"plot_strong_efficiency",
|
|
82
|
+
"plot_forecast_error_density",
|
|
83
|
+
"plot_forecast_errors",
|
|
84
|
+
"plot_forecast_errors_by_horizon",
|
|
85
|
+
"plot_hedgehog",
|
|
86
|
+
"plot_outturn_revisions",
|
|
87
|
+
"plot_outturns",
|
|
88
|
+
"plot_radar",
|
|
89
|
+
"plot_rolling_bias",
|
|
90
|
+
"plot_rolling_correlation",
|
|
91
|
+
"plot_rolling_relative_accuracy",
|
|
92
|
+
"plot_bias_by_horizon",
|
|
93
|
+
"plot_vintage",
|
|
94
|
+
"plot_errors_across_time",
|
|
95
|
+
# Utility functions
|
|
96
|
+
"covid_filter",
|
|
97
|
+
"filter_fer_variables",
|
|
98
|
+
"filter_k",
|
|
99
|
+
"reconstruct_id_cols_from_unique_id",
|
|
100
|
+
]
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# data/__init__.py
|
|
2
|
+
from .ar_p_model import add_ar_p_forecasts
|
|
3
|
+
from .main_table import build_main_table
|
|
4
|
+
from .outturns_revisions_table import create_outturn_revisions
|
|
5
|
+
from .random_walk_model import add_random_walk_forecasts
|
|
6
|
+
from .revisions_table import create_revision_dataframe
|
|
7
|
+
|
|
8
|
+
__all__ = [
|
|
9
|
+
"build_main_table",
|
|
10
|
+
"create_revision_dataframe",
|
|
11
|
+
"create_outturn_revisions",
|
|
12
|
+
"add_random_walk_forecasts",
|
|
13
|
+
"add_ar_p_forecasts",
|
|
14
|
+
]
|