Interpretation of a random slope model in which there is no mean population effect of the environment I arrived to an optimal mixed model in which a time variable has no effect on the population mean response trait (i.e. time is not a significant fixed effect), but however I found significant variation in the relationship between the trait and time. Statistically speaking, if I run:
trait~time+size,random=time|id
I get that the fixed effect time is not significant, so the trait does not vary over time at the population level. My next model then is:
trait~size,random=time|id
and this happens to be the optimal model. I tried a last model with just random=~id, but it is much worst.
So my question is:
how is it possible that there is individual variation in how a trait changes over time, if at the population level the trait does not change over time?
Thanks!!
 A: I think this may be the case if individuals are affected differently by time. In some individuals, time may increase the "trait", while in some individuals, time will decrease the "trait". But if you average it, then there may not be an effect of time since the effect varies from individual to individual. However, that this is the "best" model (lowest AIC and such, I suppose?) might indicate that time indeed has a pronounced effect in some individuals. The effect seems large enough to provide a better fit for your data.
An example: you might have equal proportions of men and women in your data. What if time has a positive effect on trait for women, and a negative effect for men? On average, time will have no effect but if you would include the interaction between sex and time, you would see that time had a large effect. You might have a similar situation here.
EDIT: A quick simulation to demonstrate that this may be the case:
timeeffect <- rep(rnorm(100,0,5), each=12)
time <- rep(seq(1:12), 100)
baseline <- rep(rnorm(100, 100, 15), each=12)
x1 <- rep(rbinom(100,1,0.5), each=12)
id <- rep(seq(1:100), each=12)
response <- NULL
for (i in 1:length(id)) {
  response[i] <- rnorm(1, baseline[i]+time[i]*timeeffect[i]+x1[i]*20, 15)
}
M1 <- (lmer(response ~ x1 + (1|id)))
M2 <- (lmer(response ~ x1 + time + (1|id)))
M3 <- (lmer(response ~ x1 + time + (time|id)))
M4 <- (lmer(response ~ x1 + (time|id)))
AIC(M1, M2, M3, M4)

And the best model is the last one, just as in your case.
