# Titanic example library("effects") summary(Titanic) library("car") # for Anova() titanic.1 <- glm(survived ~ passengerClass*sex*age, data=Titanic, family=binomial) Anova(titanic.1) titanic.2 <- update(titanic.1, . ~ . - passengerClass:sex:age) summary(titanic.2) titanic.2.all <- allEffects(titanic.2, typical=median, given.values=c(passengerClass2nd=1/3, passengerClass3rd=1/3, sexmale=0.5)) print(titanic.2.all, digits=3) # Figure 1 plot(titanic.2.all, ticks=list(at=c(.01, .05, seq(.1, .9, by=.2), .95, .99)), ask=FALSE) with(Titanic, quantile(age, c(0, 0.99), na.rm=TRUE)) # Figure 2 plot(effect("passengerClass*sex*age", titanic.2, xlevels=list(age=0:65)), ticks=list(at=c(.001, .005, .01, .05, seq(.1, .9, by=.2), .95, .99, .995))) # British election example summary(BEPS) library("splines") # for bs() beps <- multinom(vote ~ age + gender + economic.cond.national + economic.cond.household + Blair + Hague + Kennedy + bs(Europe, 3)*political.knowledge, data=BEPS) summary(beps) Anova(beps) europe.knowledge <- effect("bs(Europe, 3)*political.knowledge", beps, xlevels=list(Europe=seq(1, 11, length=50), political.knowledge=0:3), given.values=c(gendermale=0.5)) # Figure 3 plot(europe.knowledge) # Figure 4 plot(europe.knowledge, style="stacked", colors=c("blue", "red", "orange"), rug=FALSE) # World Value Surveys example summary(WVS) wvs.1 <- polr(poverty ~ country*(gender + religion + degree + bs(age, 4)), data=WVS) Anova(wvs.1) wvs.2 <- polr(poverty ~ gender + country*(religion + degree + bs(age, 4)), data=WVS) summary(wvs.2) with(WVS, quantile(age, c(0, .01, .99, 1))) # Figure 5 plot(effect("country*bs(age,4)", wvs.2, xlevels=list(age=18:83), given.values=c(gendermale=0.5)), rug=FALSE) # Figure 6 plot(effect("country*bs(age,4)", wvs.2, xlevels=list(age=18:83), given.values=c(gendermale=0.5)), rug=FALSE, style="stacked") # Figure 7 plot(effect("country*bs(age,4)", wvs.2, xlevels=list(age=18:83), given.values=c(gendermale=0.5), latent=TRUE), rug=FALSE)