I have a dataset that consists of vegetation datasets (species/abundancy tables) and soil parameters (tested for ten parameters per soil core). Three different rounds of these data are recorded in three different years (2002, 2006, 2018). Dataset is completely balanced.

Experimental setup is as follows: vegetation transects (blocks) along gradient. Each block consists of 20 plots. Vegetation recorded with ordinal Braun-Blanquet scale.

My total dataset is 3(years)x140 species/abundancy tables

3(years)x450 soil measurements

I want to explain change in vegetation as a function of change in soil parameters with plot nested in block as a random factor to account for spatial autocorrelation. To do so, i want to use a GLMM as follows:

model <- glmer(Vegetation change~soil parameter change + (1|Block/Plot).

My question is: how do I include change over time (for both response and fixed factor) as a factor? Is it better to use a distance based value, Bray-Curtis for example, and run two models comparing year 1 and 2, and year 2 and 3? Or do I include all the data at once and give each value a unique coding corresponding with the year?


1 Answer 1


I would go for two separate models because the slope would be the same for both comparisons in a unique model, unless you add an interaction term between the soil parameter change and the comparison ID, which would complexify the interpretation of your model.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.