> library(foreign)
> fev <- read.dta("c:/fev.dta")
> fev <- subset(fev, id!=197)
> attach(fev)
> y <- logfev1 - 2*(log(ht))
> model1 <- lm(y ~ age + factor(id) - 1)
> summary(model1)
Call:
lm(formula = y ~ age + factor(id) - 1)
Residuals:
Min 1Q Median 3Q Max
-0.38405 -0.03268 0.00184 0.03874 0.17774
Coefficients:
Estimate Std. Error t value Pr(>|t|)
age 0.0298226 0.0004798 62.154 < 2e-16 ***
factor(id)1 -0.3987398 0.0252212 -15.810 < 2e-16 ***
factor(id)2 -0.3021976 0.0237526 -12.723 < 2e-16 ***
factor(id)3 -0.2430880 0.0222739 -10.914 < 2e-16 ***
factor(id)4 -0.4051946 0.0212142 -19.100 < 2e-16 ***
factor(id)5 -0.4240729 0.0252776 -16.777 < 2e-16 ***
factor(id)6 -0.3295989 0.0203574 -16.191 < 2e-16 ***
factor(id)7 -0.5259333 0.0252687 -20.814 < 2e-16 ***
factor(id)8 -0.3577286 0.0224608 -15.927 < 2e-16 ***
factor(id)9 -0.4090951 0.0222210 -18.410 < 2e-16 ***
factor(id)10 -0.1147699 0.0213233 -5.382 8.38e-08 ***
factor(id)11 -0.3043507 0.0272252 -11.179 < 2e-16 ***
factor(id)12 -0.2119800 0.0648650 -3.268 0.001105 **
factor(id)13 -0.3773903 0.0380341 -9.922 < 2e-16 ***
factor(id)14 -0.3279098 0.0648495 -5.056 4.73e-07 ***
factor(id)15 -0.3319988 0.0298136 -11.136 < 2e-16 ***
factor(id)16 -0.2395182 0.0203509 -11.769 < 2e-16 ***
factor(id)17 -0.2275625 0.0648305 -3.510 0.000460 ***
factor(id)18 -0.3120836 0.0196432 -15.888 < 2e-16 ***
factor(id)19 -0.2367743 0.0648326 -3.652 0.000268 ***
factor(id)20 -0.1786107 0.0213856 -8.352 < 2e-16 ***
<output deleted>
factor(id)290 -0.2680438 0.0273223 -9.810 < 2e-16 ***
factor(id)291 -0.4950639 0.0328889 -15.053 < 2e-16 ***
factor(id)292 -0.4294980 0.0329246 -13.045 < 2e-16 ***
factor(id)293 -0.5916077 0.0328965 -17.984 < 2e-16 ***
factor(id)294 -0.6081886 0.0649223 -9.368 < 2e-16 ***
factor(id)295 -0.6082694 0.0650073 -9.357 < 2e-16 ***
factor(id)296 -0.2046070 0.0254955 -8.025 1.88e-15 ***
factor(id)297 -0.2819715 0.0649999 -4.338 1.52e-05 ***
factor(id)298 -0.1646118 0.0379771 -4.334 1.55e-05 ***
factor(id)299 -0.4151464 0.0274549 -15.121 < 2e-16 ***
factor(id)300 -0.3679856 0.0255031 -14.429 < 2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 0.06475 on 1693 degrees of freedom
Multiple R-squared: 0.8492, Adjusted R-squared: 0.8225
F-statistic: 31.79 on 300 and 1693 DF, p-value: < 2.2e-16
Linear Mixed Effects Model (Random Intercept)
> library(nlme)
> model2 <- lme(y ~ age, random= ~ 1 | id)
> summary(model2)
Linear mixed-effects model fit by REML
Data: NULL
AIC BIC logLik
-4469.897 -4447.511 2238.948
Random effects:
Formula: ~1 | id
(Intercept) Residual
StdDev: 0.09646438 0.06472703
Fixed effects: y ~ age
Value Std.Error DF t-value p-value
(Intercept) -0.3551712 0.008179230 1693 -43.42354 0
age 0.0298070 0.000473194 1693 62.99100 0
Correlation:
(Intr)
age -0.691
Standardized Within-Group Residuals:
Min Q1 Med Q3 Max
-5.93529591 -0.53433171 0.06050463 0.61427514 2.73237055
Number of Observations: 1993
Number of Groups: 299
Linear Mixed Effects Model (Random Intercept)
Decomposing Between- and Within-Subject Effects
> mage <- rep(tapply(age,id,mean),table(id))
> cage <- age - mage
> model3 <- lme(y ~ mage + cage, random= ~ 1 | id)
> summary(model3)
Linear mixed-effects model fit by REML
Data: NULL
AIC BIC logLik
-4458.115 -4430.136 2234.058
Random effects:
Formula: ~1 | id
(Intercept) Residual
StdDev: 0.09662441 0.06472855
Fixed effects: y ~ mage + cage
Value Std.Error DF t-value p-value
(Intercept) -0.3483213 0.03517432 1693 -9.90272 0
mage 0.0292337 0.00290142 297 10.07565 0
cage 0.0298226 0.00047964 1693 62.17656 0
Correlation:
(Intr) mage
mage -0.986
cage 0.000 0.000
Standardized Within-Group Residuals:
Min Q1 Med Q3 Max
-5.93465702 -0.53725827 0.06076776 0.61395556 2.73350003
Number of Observations: 1993
Number of Groups: 299