library(vcd) library(car) data("UCBAdmissions") structable(Dept ~ Admit+Gender,UCBAdmissions) ## conditional independence in UCB admissions data berk.mod1 <- loglm(~ Dept * (Gender + Admit), data=UCBAdmissions) berk.mod1 mosaic(berk.mod1, gp=shading_Friendly) ## all two-way model berk.mod2 <-loglm(~(Admit+Dept+Gender)^2, data=UCBAdmissions) berk.mod2 mosaic(berk.mod2, gp=shading_Friendly) # compare models anova(berk.mod1, berk.mod2) library(vcdExtra) # using glm() berkeley <- as.data.frame(UCBAdmissions) berk.glm1 <- glm(Freq ~ Dept * (Gender+Admit), data=berkeley, family="poisson") summary(berk.glm1) berk.glm2 <- glm(Freq ~ (Dept + Gender + Admit)^2, data=berkeley, family="poisson") summary(berk.glm2) anova(berk.glm1, berk.glm2) attach(berkeley) dept1AG <- (Dept=='A')*(Gender=='Female')*(Admit='Admitted') data.frame(Dept,Gender,Admit,dept1AG,Freq)[1:6,] berk.glm3 <- glm(Freq ~ Dept * (Gender+Admit) + dept1AG, family="poisson") summary(berk.glm3) detach(berkeley)