> data(smoking, package="SMPracticals") > smoking # age smoker alive dead # 1 18-24 1 53 2 # 2 18-24 0 61 1 # 3 25-34 1 121 3 # 4 25-34 0 152 5 # 5 35-44 1 95 14 # 6 35-44 0 114 7 # 7 45-54 1 103 27 # 8 45-54 0 66 12 # 9 55-64 1 64 51 # 10 55-64 0 81 40 # 11 65-74 1 7 29 # 12 65-74 0 28 101 # 13 75+ 1 0 13 # 14 75+ 0 0 64 > glm(cbind(alive,dead) ~ smoker, data = smoking, family = binomial) # Call: glm(formula = cbind(alive, dead) ~ smoker, family = binomial, # data = smoking) # Coefficients: # (Intercept) smoker # 0.7805 0.3786 # Degrees of Freedom: 13 Total (i.e. Null); 12 Residual # Null Deviance: 641.5 # Residual Deviance: 632.3 AIC: 683.3 > summary(.Last.value) # Call: # glm(formula = cbind(alive, dead) ~ smoker, family = binomial, # data = smoking) # Deviance Residuals: # Min 1Q Median 3Q Max # -12.173 -5.776 1.869 5.674 9.052 # Coefficients: # Estimate Std. Error z value Pr(>|z|) # (Intercept) 0.78052 0.07962 9.803 < 2e-16 *** # smoker 0.37858 0.12566 3.013 0.00259 ** # --- # Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 # (Dispersion parameter for binomial family taken to be 1) # Null deviance: 641.5 on 13 degrees of freedom # Residual deviance: 632.3 on 12 degrees of freedom # AIC: 683.29 # Number of Fisher Scoring iterations: 4 > anova(glm(cbind(alive,dead) ~ smoker, data = smoking, family = binomial)) # Analysis of Deviance Table # Model: binomial, link: logit # Response: cbind(alive, dead) # Terms added sequentially (first to last) # Df Deviance Resid. Df Resid. Dev # NULL 13 641.5 # smoker 1 9.2003 12 632.3 # > with(smoking, xtabs(cbind(dead,alive) ~ smoker)) # smoker dead alive # 0 230 502 # 1 139 443 > summary(.Last.value) # Call: xtabs(formula = cbind(dead, alive) ~ smoker) # Number of cases in table: 1314 # Number of factors: 2 # Test for independence of all factors: # Chisq = 9.121, df = 1, p-value = 0.002527 > glm(cbind(alive,dead) ~ smoker + factor(age), data = smoking, family = binomial) # Call: glm(formula = cbind(alive, dead) ~ smoker + factor(age), family = binomial, # data = smoking) # Coefficients: # (Intercept) smoker factor(age)25-34 # 3.8601 -0.4274 -0.1201 # factor(age)35-44 factor(age)45-54 factor(age)55-64 # -1.3411 -2.1134 -3.1808 # factor(age)65-74 factor(age)75+ # -5.0880 -27.8073 # Degrees of Freedom: 13 Total (i.e. Null); 6 Residual # Null Deviance: 641.5 # Residual Deviance: 2.381 AIC: 65.38 > summary(.Last.value) # Call: # glm(formula = cbind(alive, dead) ~ smoker + factor(age), family = binomial, # data = smoking) # Deviance Residuals: # Min 1Q Median 3Q Max # -0.68162 -0.19146 -0.00005 0.22836 0.72545 # Coefficients: # Estimate Std. Error z value Pr(>|z|) # (Intercept) 3.8601 0.5939 6.500 8.05e-11 *** # smoker -0.4274 0.1770 -2.414 0.015762 * # factor(age)25-34 -0.1201 0.6865 -0.175 0.861178 # factor(age)35-44 -1.3411 0.6286 -2.134 0.032874 * # factor(age)45-54 -2.1134 0.6121 -3.453 0.000555 *** # factor(age)55-64 -3.1808 0.6006 -5.296 1.18e-07 *** # factor(age)65-74 -5.0880 0.6195 -8.213 < 2e-16 *** # factor(age)75+ -27.8073 11293.1437 -0.002 0.998035 # --- # Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 # (Dispersion parameter for binomial family taken to be 1) # Null deviance: 641.4963 on 13 degrees of freedom # Residual deviance: 2.3809 on 6 degrees of freedom # AIC: 65.377 # Number of Fisher Scoring iterations: 20 > levels(smoking$smoker) = c("Non-Smoker", "Smoker") > with(smoking, xtabs(cbind(dead, alive) ~ smoker)) # smoker dead alive # 0 230 502 # 1 139 443 # > with(smoking, xtabs(cbind(dead, alive) ~ age + smoker)) # , , = dead # smoker # age 0 1 # 18-24 1 2 # 25-34 5 3 # 35-44 7 14 # 45-54 12 27 # 55-64 40 51 # 65-74 101 29 # 75+ 64 13 # , , = alive # smoker # age 0 1 # 18-24 61 53 # 25-34 152 121 # 35-44 114 95 # 45-54 66 103 # 55-64 81 64 # 65-74 28 7 # 75+ 0 0 >