Ecological time series analysis and forecasting in R


4-8 September 2023


To foster international participation, this course will be held online



Course overview

Time series analysis and forecasting are standard goals in applied ecology. But most time series courses focus only on traditional forecasting models such as ARIMA or Exponential Smoothing. These models cannot handle features that dominate ecological data, including overdispersion, clustering, missingness, discreteness and nonlinear effects. Using the flexible and powerful Bayesian modelling software Stan, we can now meet this complexity head on. Packages such as {mvgam} and {brms} can build Stan code to specify ecologically appropriate models that include nonlinear effects, random effects and dynamic processes, all with simple interfaces that are familiar to most R users. In this course you will learn how to wrangle, visualize and explore ecological time series. You will also learn to use the {mvgam} and {brms} packages to analyse a diversity of ecological time series to gain useful insights and produce accurate forecasts. All course materials (presentations, practical exercises, data files, and commented R scripts) will be provided electronically to participants.


Target audience and assumed background

This course is aimed at higher degree research students and early career researchers working with time series data in the natural sciences (with particular emphasis on ecology) who want to extend their knowledge by learning how to add dynamic processes to model temporal autocorrelation. Participants should ideally have some knowledge of regression including linear models, generalized linear models and hierarchical (random) effects. But we’ll briefly recap these as we connect them to time series modelling.

Participants should be familiar with RStudio and have some fluency in programming R code. This includes an ability to import, manipulate (e.g. modify variables) and visualise data. There will be a mix of lectures and hands-on practical exercises throughout the course.


Learning outcomes

1.    Understand how dynamic GLMs and GAMs work to capture both nonlinear covariate effects and temporal dependence
2.    Be able to fit dynamic GLMs and GAMs in R using the {mvgam} and {brms} packages
3.    Understand how to critique, visualize and compare fitted dynamic models
4.    Know how to produce forecasts from dynamic models and evaluate their accuracies using probabilistic scoring rules


09:00 - 12:00 (Berlin time): live lectures and introduction to / review of the practicals

3 additional hours: self-guided practicals using annotated R scripts


Monday– Classes from 10 AM-1 PM Berlin time

Introduction to time series and time series visualization

Some traditional time series models and their assumptions

GLMs and GAMs for ecological modelling

Temporal random effects and temporal residual correlation structures

Tuesday– Classes from 10 AM-1 PM Berlin time

Dynamic GLMs and Dynamic GAMs

Autoregressive dynamic processes

Gaussian Processes

Dynamic coefficient models

Wednesday– Classes from 10 AM-1 PM Berlin time

Forecasting from dynamic models

Point-based forecast evaluation

Probabilistic forecast evaluation

Bayesian posterior predictive checks

Thursday– Classes from 10 AM-1 PM Berlin time

Multivariate ecological time series

Vector autoregressive processes

Dynamic factor models

Multivariate forecast evaluation

Friday– Classes from 10 AM-1 PM Berlin time


Extended practical examples using {mvgam}

Review and open discussion





Cost overview


Package 1


                      480 €

Should you have any further questions, please send an email to

Cancellation Policy:


> 30  days before the start date = 30% cancellation fee

< 30 days before the start date= No Refund.


Physalia-courses cannot be held responsible for any travel fees, accommodation or other expenses incurred to you as a result of the cancellation.