library(effects) ## load the effects package
data(Cowles)
Model with interaction
mod.cowles <- glm(volunteer ~ sex + neuroticism*extraversion,
data=Cowles, family=binomial)
summary(mod.cowles)
##
## Call:
## glm(formula = volunteer ~ sex + neuroticism * extraversion, family = binomial,
## data = Cowles)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -1.4749 -1.0602 -0.8934 1.2609 1.9978
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -2.358207 0.501320 -4.704 2.55e-06 ***
## sexmale -0.247152 0.111631 -2.214 0.02683 *
## neuroticism 0.110777 0.037648 2.942 0.00326 **
## extraversion 0.166816 0.037719 4.423 9.75e-06 ***
## neuroticism:extraversion -0.008552 0.002934 -2.915 0.00355 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 1933.5 on 1420 degrees of freedom
## Residual deviance: 1897.4 on 1416 degrees of freedom
## AIC: 1907.4
##
## Number of Fisher Scoring iterations: 4
eff.cowles <- allEffects(mod.cowles,
xlevels=list(neuroticism=seq(0, 24, 6),
extraversion=seq(0, 24, 8)))
plot(eff.cowles, 'neuroticism:extraversion', ylab="Prob(Volunteer)",
ticks=list(at=c(.1,.25,.5,.75,.9)), layout=c(4,1), aspect=1)

plot(eff.cowles, 'neuroticism:extraversion', multiline=TRUE,
ylab="Prob(Volunteer)",
key.args=list(x = .8, y = .9))
