Код для запуска дисперсионного анализа повторных измерений с одним в пределах предметной переменной, а не между предметными переменными, выглядит следующим образом. Обратите внимание, что мы используем group_by()
из пакета dplyr
, чтобы сохранить номер идентификатора хомяка, чтобы мы могли использовать его как термин ошибки в ANOVA.
hamsterData <- "id Newborn adolescent adult
1 108 110 105
2 110 105 100
3 90 100 95
4 80 90 85
5 100 102 97
6 120 110 105
7 125 105 100
8 130 115 110
9 120 100 95
10 130 120 115
11 145 130 125
12 150 125 120
13 130 135 130
14 155 130 125
15 140 120 115"
hamster <- read.table(text = hamsterData,header = TRUE )
library(tidyr)
library(dplyr)
result <- hamster %>% group_by(id) %>%
gather(age,bp, Newborn,adolescent,adult)
result$age <- factor(result$age,levels=c("Newborn","adolescent","adult"))
options(contrasts=c("contr.sum","contr.poly"))
modelAOV <- aov(bp ~ age + Error(factor(id)),data = result)
summary(modelAOV)
... и вывод:
> modelAOV <- aov(bp ~ age + Error(factor(id)),data = result)
> summary(modelAOV)
Error: factor(id)
Df Sum Sq Mean Sq F value Pr(>F)
Residuals 14 10013 715.2
Error: Within
Df Sum Sq Mean Sq F value Pr(>F)
age 2 1525 762.7 15.07 3.6e-05 ***
Residuals 28 1417 50.6
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
>