[R-es] factores ordenados

Jose Luis Cañadas canadasreche en gmail.com
Lun Abr 29 20:41:19 CEST 2013


Hola.

¿Alguien sabe como elegir sólo el efecto lineal cuando tengo un factor 
ordenado de 4 categorías?

Pongo un ejemplo, mejor.

Tengo la variable nivelest que en origen es de tipo factor

Con contrasts veo las variables dicotómicas que usará R por ejemplo en 
un modelo lineal.

 > contrasts(datos.bin$nivelest)
Primaria Secundaria y F.P Universitaria o superior
Analfabetos 0 0 0
Primaria 1 0 0
Secundaria y F.P 0 1 0
Universitaria o superior 0 0 1

La convierto a tipo ordered

 > datos.bin$nivelest <- ordered(datos.bin$nivelest)
 > class(datos.bin$nivelest)
[1] "ordered" "factor"
 > contrasts(datos.bin$nivelest)
.L .Q .C
[1,] -0.67082 0.5 -0.22361
[2,] -0.22361 -0.5 0.67082
[3,] 0.22361 -0.5 -0.67082
[4,] 0.67082 0.5 0.22361

Y la utilizo por ejemplo en un glm

 > res <- glm(uso_int ~ nivelest, data=datos.bin, family=binomial)
 > summary(res)

Call:
glm(formula = uso_int ~ nivelest, family = binomial, data = datos.bin)

Deviance Residuals:
Min 1Q Median 3Q Max
-2.265 -0.853 -0.144 0.559 3.024

Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -0.281 0.155 -1.81 0.07 .
nivelest.L 5.309 0.408 13.01 < 2e-16 ***
nivelest.Q -1.515 0.309 -4.90 9.7e-07 ***
nivelest.C -0.171 0.157 -1.09 0.28
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for binomial family taken to be 1)

Null deviance: 4817 on 3484 degrees of freedom
Residual deviance: 3379 on 3481 degrees of freedom
AIC: 3387

Number of Fisher Scoring iterations: 7

¿Cómo hago para ajustar un modelo sólo con nivelest.L?

Saludos.



Más información sobre la lista de distribución R-help-es