Non-linear Time Series Models (Temporal Pseudoreplication)

The previous example was a designed experiment in which there was no pseudoreplication. However, we often want to fit non-linear models to growth curves where there is temporal pseudoreplication across a set of subjects, each providing repeated measures on the response variable. In such a case we shall want to model the temporal autocorrelation.

nl.ts<-read.table("c:\\temp\\nonlinear.txt",header=T)
attach(nl.ts)
names(nl.ts)

[1]  "time"  "dish"  "isolate"  "diam"

growth<-groupedData(diam~time|dish,data=nl.ts)

Here, we model the temporal autocorrelation as first-order autoregessive, corAR1():

model<-nlme(diam~a+b*time/(1+c*time),
fixed=a+b+c~1,
random=a+b+c~1,
data=growth,
correlation=corAR1(),
start=c(a=0.5,b=5,c=0.5))

summary(model)

Nonlinear mixed-effects model fit by maximum likelihood
Model: diam ~ a + b * time/(1 + c * time)
Data: growth

      AIC        BIC     logLik
129.7694    158.3157  -53.88469

Random effects:
Formula: list(a ~ 1, b ~ 1, c ~ 1)
Level: dish
Structure: General positive-definite, Log-Cholesky parametrization
StdDev Corr a 0.1014474 a b b 1.2060379 -0.557 c 0.1095790 -0.958 0.772 Residual 0.3150068 Correlation Structure: AR(1) Formula: ~1 | dish Parameter estimate(s): Phi -0.03344944 Fixed effects: a + b + c ~ 1 Value Std.Error DF t-value p-value a 1.288262 0.1086390 88 11.85819 0 b 5.215251 0.4741954 88 10.99810 0 c 0.498222 0.0450644 88 11.05578 0 Correlation: a b b -0.506 c -0.542 0.823 Standardized Within-Group Residuals: ...

Get The R Book now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.