library(vcdExtra)
## Loading required package: vcd
## Loading required package: grid
## Loading required package: gnm
data("DaytonSurvey")
Dayton.ACM <- aggregate(Freq ~ cigarette + alcohol + marijuana, data = DaytonSurvey, FUN = sum)
Dayton.ACM
## cigarette alcohol marijuana Freq
## 1 Yes Yes Yes 911
## 2 No Yes Yes 44
## 3 Yes No Yes 3
## 4 No No Yes 2
## 5 Yes Yes No 538
## 6 No Yes No 456
## 7 Yes No No 43
## 8 No No No 279
jointindependence<-glm(Freq ~ (alcohol * cigarette) + marijuana , data = Dayton.ACM, family = "poisson")
conditionalindependence<-glm(Freq ~ marijuana * (alcohol + cigarette), data = Dayton.ACM, family = "poisson")
homogeneousmodel<-glm(Freq ~ (marijuana + alcohol + cigarette)^2, data = Dayton.ACM, family = "poisson")
mutualindependence<-glm(Freq ~ alcohol + cigarette + marijuana , data = Dayton.ACM, family = "poisson")
saturatedmodel <- glm(Freq ~ alcohol * cigarette * marijuana , data = Dayton.ACM, family = "poisson")
anova(jointindependence,conditionalindependence,homogeneousmodel,mutualindependence,saturatedmodel,test="Chisq")
## Analysis of Deviance Table
##
## Model 1: Freq ~ (alcohol * cigarette) + marijuana
## Model 2: Freq ~ marijuana * (alcohol + cigarette)
## Model 3: Freq ~ (marijuana + alcohol + cigarette)^2
## Model 4: Freq ~ alcohol + cigarette + marijuana
## Model 5: Freq ~ alcohol * cigarette * marijuana
## Resid. Df Resid. Dev Df Deviance Pr(>Chi)
## 1 3 843.83
## 2 2 187.75 1 656.07 < 2.2e-16 ***
## 3 1 0.37 1 187.38 < 2.2e-16 ***
## 4 4 1286.02 -3 -1285.65 < 2.2e-16 ***
## 5 0 0.00 4 1286.02 < 2.2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Homogeneous model as it is closer to saturated model