Course description

This course gives an introduction to time series analysis using time domain methods and frequency domain methods. The goal is to acquire the theoretical and computational skills required to investigate data collected as a time series. The first half of the course will develop classical time series methodology, including auto-regressive moving average (ARMA) models, regression with ARMA errors, and estimation of the spectral density. The second half of the course will focus on state space model techniques for fitting structured dynamic models to time series data. We will progress from fitting linear, Gaussian dynamic models to fitting nonlinear models for which Monte Carlo methods are required. Examples will be drawn from ecology, economics, epidemiology, finance and elsewhere.

Course information


Discussion of homework problems is encouraged, but solutions must be written up individually. Direct copying is not acceptable.

Any material taken from any source, such as the internet, must be properly acknowledged. Unattributed copying from any source is plagiarism, and has potentially serious consequences.

Class notes

  1. Introduction. (R script)

  2. Definitions and trend estimation by least squares. (R script)

  3. Stationarity, white noise, and some basic time series models. (R script)

  4. Linear time series models and the algebra of ARMA models. (R script)

  5. Parameter estimation and model identification for ARMA models. (R script)

  6. Extending the ARMA model: Seasonality and trend. (R script)

  7. Introduction to the frequency domain. (R script)

  8. Smoothing in the time and frequency domains. (R script)

  9. Introduction to partially observed Markov process models. (R script)

  10. Case study: An association between unemployment and mortality? (R script)

  11. Statistical methodology for nonlinear partially observed Markov process models. (R script)

  12. Dynamic models and their simulation by Euler’s method. (R script)

  13. Practical likelihood-based inference for POMP models. (R script)

  14. POMP inference: other approaches complementing likelihood-based analysis.

  15. Case study: POMP modeling to investigate financial volatility. (R script)

  16. Using a Linux sever for POMP analysis. Using the UM Flux Linux cluster.

  17. Forecasting and fitted values, with a case study of Ebola. (R script)

  18. Time series models with covariates, and a case study of polio. (R script)

  19. Concluding remarks

Homework assignments

Midterm exam information

Midterm project

Final project