Estimating the time-varying correlation between time series using copula distributional models
Channel: Bottom of the Heap
Date: 2020-06-22

Where multiple time series are available, such as for multiple species at the same location, species abundance and related environmental time series, or biomass values over time at multiple locations, ecologists are commonly interested in knowing how correlated those time series are, and whether the correlation varies over time or with covariates (e.g. treatment effects). Typically, correlations are estimated either directly from the data or post hoc after estimating the trend in each series separately. Time-varying correlations between series may be estimated using moving windows of time. Instead, it would be expedient if we could estimate trends within, and correlations between, series using a single model. Here, I describe the use of bivariate copula distributional models to achieve this aim.

A bivariate copula distributional model comprises a pair of marginal distributional models, and a copula model to link them. Each marginal distributional model comprises one or more linear predictors for the location, scale, or shape of the marginal distribution. The copula model links the marginal distributions and allows the estimation of the dependence between them. Parameters of the copula function can also be modeled by covariates. In the time series setting, penalized spline functions of time may be used to estimate non-linear trends in parameters of the conditional distribution of each series and in the correlation between the series.

I illustrate the approach using time series of lake sediment algal pigments from Lake 227, Experimental Lakes Area, Canada, and estimates means of and correlations between chlorophyll-a and beta-carotene time series.

Slides: http://bit.ly/visec-copula-gam
GitHub repo: https://github.com/gavinsimpson/visec2020-talk

I am not currently able to share the pigment data used as an example in the slides, but the `code` folder in the GitHub repo contains the R code used to analyse the data and the `.Rmd` file in the root of the repo contains the code for all the R outputs in the slides, including the animations and figures.