r:repeated_measures_anova
This is an old revision of the document!
Table of Contents
Repeated measures ANOVA
e.g. 1
demo1 <- read.csv("https://stats.idre.ucla.edu/stat/data/demo1.csv")
## Convert variables to factor
demo1 <- within(demo1, {
group <- factor(group)
time <- factor(time)
id <- factor(id)
})
demo1
par(cex = .6)
with(demo1, interaction.plot(time, group, pulse,
ylim = c(5, 20), lty= c(1, 12), lwd = 3,
ylab = "mean of pulse", xlab = "time", trace.label = "group"))
demo1.aov <- aov(pulse ~ group * time + Error(id), data = demo1)
summary(demo1.aov)
>
> demo1 <- read.csv("https://stats.idre.ucla.edu/stat/data/demo1.csv")
> ## Convert variables to factor
> demo1 <- within(demo1, {
+ group <- factor(group)
+ time <- factor(time)
+ id <- factor(id)
+ })
>
> demo1
id group pulse time
1 1 1 10 1
2 1 1 10 2
3 1 1 10 3
4 2 1 10 1
5 2 1 10 2
6 2 1 10 3
7 3 1 10 1
8 3 1 10 2
9 3 1 10 3
10 4 1 10 1
11 4 1 10 2
12 4 1 10 3
13 5 2 15 1
14 5 2 15 2
15 5 2 15 3
16 6 2 15 1
17 6 2 15 2
18 6 2 15 3
19 7 2 16 1
20 7 2 15 2
21 7 2 15 3
22 8 2 15 1
23 8 2 15 2
24 8 2 15 3
> par(cex = .6)
>
> with(demo1, interaction.plot(time, group, pulse,
+ ylim = c(5, 20), lty= c(1, 12), lwd = 3,
+ ylab = "mean of pulse", xlab = "time", trace.label = "group"))
>
> demo1.aov <- aov(pulse ~ group * time + Error(id), data = demo1)
> summary(demo1.aov)
Error: id
Df Sum Sq Mean Sq F value Pr(>F)
group 1 155.04 155.04 3721 1.3e-09 ***
Residuals 6 0.25 0.04
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Error: Within
Df Sum Sq Mean Sq F value Pr(>F)
time 2 0.0833 0.04167 1 0.397
group:time 2 0.0833 0.04167 1 0.397
Residuals 12 0.5000 0.04167
>
>
e.g. 2
demo2 <- read.csv("https://stats.idre.ucla.edu/stat/data/demo2.csv")
## Convert variables to factor
demo2 <- within(demo2, {
group <- factor(group)
time <- factor(time)
id <- factor(id)
})
demo2
par(cex = .6)
with(demo2, interaction.plot(time, group, pulse,
ylim = c(10, 40), lty = c(1, 12), lwd = 3,
ylab = "mean of pulse", xlab = "time", trace.label = "group"))
demo2.aov <- aov(pulse ~ group * time + Error(id), data = demo2)
summary(demo2.aov)
>
> demo2 <- read.csv("https://stats.idre.ucla.edu/stat/data/demo2.csv")
> ## Convert variables to factor
> demo2 <- within(demo2, {
+ group <- factor(group)
+ time <- factor(time)
+ id <- factor(id)
+ })
>
> demo2
id group pulse time
1 1 1 14 1
2 1 1 19 2
3 1 1 29 3
4 2 1 15 1
5 2 1 25 2
6 2 1 26 3
7 3 1 16 1
8 3 1 16 2
9 3 1 31 3
10 4 1 12 1
11 4 1 24 2
12 4 1 32 3
13 5 2 10 1
14 5 2 21 2
15 5 2 24 3
16 6 2 17 1
17 6 2 26 2
18 6 2 35 3
19 7 2 19 1
20 7 2 22 2
21 7 2 32 3
22 8 2 15 1
23 8 2 23 2
24 8 2 34 3
>
> par(cex = .6)
>
> with(demo2, interaction.plot(time, group, pulse,
+ ylim = c(10, 40), lty = c(1, 12), lwd = 3,
+ ylab = "mean of pulse", xlab = "time", trace.label = "group"))
>
> demo2.aov <- aov(pulse ~ group * time + Error(id), data = demo2)
> summary(demo2.aov)
Error: id
Df Sum Sq Mean Sq F value Pr(>F)
group 1 15.04 15.04 0.836 0.396
Residuals 6 107.92 17.99
Error: Within
Df Sum Sq Mean Sq F value Pr(>F)
time 2 978.2 489.1 53.684 1.03e-06 ***
group:time 2 1.1 0.5 0.059 0.943
Residuals 12 109.3 9.1
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
>
r/repeated_measures_anova.1591199365.txt.gz · Last modified: by hkimscil


