Práctica 6
Análisis de Tablas de Contingencia en Splus
Ejemplo 1 (Venables & Ripley sección 7.3)
Se presentan los resultados de un estudio sobre preferencias por una marca de detergente donde los encuentados son clasificados de acuerdo a la temperatura y a la dureza del agua y si han usado o no previamente la marca M.
Datos
|
Usa M? |
No |
Si |
||||||
|
Temp |
Baja |
Alta |
Baja |
Alta |
||||
|
Pref. |
X |
M |
X |
M |
X |
M |
X |
M |
|
Dureza |
||||||||
|
Dura |
68 |
42 |
42 |
30 |
37 |
52 |
24 |
43 |
|
Media |
66 |
50 |
33 |
23 |
47 |
55 |
23 |
47 |
|
Suave |
63 |
53 |
29 |
27 |
57 |
49 |
19 |
29 |
>detg_cbind(expand.grid(Marca=c("X","M"),Temp=c("Baja","Alta"),
+M.uso=c("N","S"),Dureza=c("Dura","Media","Suave")),frec=c(68,42,42,30,
+37,52,24,43,66,50,33,23,47,55,23,47,63,53,29,27,57,49,19,29))
>names(detg)
>detg
2) Ajustar un modelo con interacciones hasta de tercer orden usando la función glm
>detg.m0_glm(frec~M.uso*Temp*Dureza+Marca,family=poisson)
>detg.m0
>summary(detg.m0)
>anova(detg.m0,test="Chisq")
>detg.step_step(detg.m0,list(lower=formula(detg.m0),upper=~.^3),scale=1,trace=T)
>detg.step$anova
>deterg_cbind(detg[Marca=="X",-4],M=detg[Marca=="M","frec"])
>deterg
>detach()
>attach(deterg)
>detg.lg_glm(cbind(M,frec)~M.uso*Temp,family=binomial)
>detg.lg_glm(cbind(M,frec)~M.uso*Temp,family=binomial)
>summary(detg.lg)
Ejercicio: En base a los resultados anteriores concluya sobre el efecto de los usuarios previos de la marca de jabón M, de la temperatura y de la dureza del agua sobre la preferencia de las personas por la marca de jabón M.
Ejemplo 2 (Dobson, Ejemplo 9.1)
Se dan los datos para un estudio de 400 personas que presentan un tipo de cancer de piel (Hutchinson, Superficial, Nodular o Indeterminado) y el sitio del cuerpo humano donde aparece el tumor (Cabeza, Tronco o Extremidades).
>mela_cbind(expand.grid(Sitio=c("C","T","E"),Tipo=c("H","S","N","I")),
+Frec=c(22,2,10,16,54,115,19,33,73,11,17,28))
>attach(mela)
>mela.m0_glm(Frec~Sitio+Tipo,family=poisson)
>anova(mela.m0,test="Chisq")
>summary(mela.m0)
>difoe_Frec-mela.m0$fitted.values
>difoe_difoe*difoe/mela.m0$fitted.values
>X2_sum(difoe)