-
Notifications
You must be signed in to change notification settings - Fork 5
/
Forecasting 1 - Introduction.Rmd
127 lines (82 loc) · 3.35 KB
/
Forecasting 1 - Introduction.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
---
output:
xaringan::moon_reader:
css: "my-theme.css"
lib_dir: libs
nature:
highlightStyle: github
highlightLines: true
---
layout: true
.hheader[<a href="index.html">`r fontawesome::fa("home", fill = "steelblue")`</a>]
---
```{r setup, include=FALSE, message=FALSE, purl=FALSE}
options(htmltools.dir.version = FALSE, servr.daemon = TRUE)
library(huxtable)
```
```{r load-packages, include=FALSE, message=FALSE}
require(ggplot2)
```
class: center, middle, inverse
# Forecasting Time Series
## Eli Holmes
.large[_University of Washington<br>School of Aquatic and Fisheries Sciences<br>Seattle, WA_]
.futnote[Eli Holmes, UW SAFS]
.citation[[email protected]]
---
## Forecasting Time Series
This week we will learn a number of standard approaches for forecasting from time series alone--meaning without any covariates or exogenous variables. At the end of the week, we will address how to incorporate covariates into a time series forecast.
---
## Many approaches are available for non-seasonal modeling
.pull-left.left[
*Stergiou and Christou 1996*
- Time-varying regression
- Box-Jenkins models, aka ARIMA models
- Multivariate time-series approaches
- Harmonic regression
- Dynamic regression
- Vector autoregression (MAR)
- Exponential smoothing (2 variants)
- Exponential surplus yield model (FOX)
]
.pull-right.left[
*Georgakarakos et al. 2006*
- Box-Jenkins models, aka ARIMA models
- Artificial neural networks (ANNs)
- Bayesian dynamic models
*Lawer 2016*
- Box-Jenkins models, aka ARIMA models
- Artificial neural networks (ANNs)
- Exponential Smoothing (6 variants)
]
---
## Forecasting Time Series
We will focus on three of these methods. We will start with time-varying regression as it is simple to apply and understand. The rest of the week we will learn about ARIMA models which have a long tradition and Exponential smoothing models, which are newer and often best performing.
- Time-varying regression
- Box-Jenkins models, aka ARIMA models
- Exponential Smoothing
---
## Stergiou and Christou 1996
I will demonstrate these methods by replicating the work in Stergiou and Christou (1996) Modelling and forecasting annual fisheries catches: comparison of regression, univariate and multivariate time series methods. Fisheries Research 25: 105-136.
![Stergiou and Christou 1996](./figs/StergiouChristou1996.png)
---
## Data
We will use the annual landings data from Hellenic (Greek) waters that were used in Stergiou and Christou (1996).
Stergiou and Christou analyzed 16 species. We will look two of the species: Anchovy and Sardine.
Stergiou and Christou used the data from 1964-1989. We have the data up to 2007, but will focus mainly on 1964-1989 (the first half of the time series) to replicate Stergiou and Christou's analyses.
---
![Area where data were collected](./figs/Greece.png)
---
![Statistical Reports](./figs/StatisticalReportCover.png)
---
![Statistical Report Table IV](./figs/StatisticalReportTableIV.png)
---
Load the data as follows and use only the 1964-1989 data.
```{r load_data, fig.align = "center", fig.height = 4, fig.width = 8}
load("landings.RData")
landings$log.metric.tons = log(landings$metric.tons)
landings = subset(landings, Year <= 1989)
landings = subset(landings, Species %in% c("Anchovy","Sardine"))
ggplot(landings, aes(x=Year, y=log.metric.tons)) +
geom_line() + facet_wrap(~Species)
```