¿Cómo trabajar con los factores y vectores numéricos en modelos r y cálculos

Si usted trabaja con factores R que tienen valores numéricos como los niveles, tienes que tener mucho cuidado cuando se utilizan estos factores en modelos y otros cálculos. Por ejemplo, convertir el número de cilindros en el conjunto de datos integrada mtcars a un factor de la siguiente manera:

> Cyl.factor lt; - as.factor (mtcars $ cil)

Si quieres saber la mediana del número de cilindros, puede tener la tentación de hacer lo siguiente:

> Mediana (as.numeric (cyl.factor)) [1] 2

Este resultado es falso, debido a que el número mínimo de cilindros es de cuatro. R convierte la representación interna de los factores a los números, no las etiquetas. Así, se obtiene el número de partida de uno al número de niveles en vez de los valores originales.

Para transformar correctamente un factor de sus valores numéricos originales, primero puede transformar el factor a personaje y luego a numérico. Pero en datos muy grandes, esto se hace más rápido con la siguiente construcción:

> As.numeric (niveles (cyl.factor)) [cyl.factor]

Con este código, se crea un vector corto con los niveles como valores numéricos y, a continuación, utiliza la representación entera interna del factor para seleccionar el valor correcto.

Aunque R menudo convierte un vector numérico para un factor de forma automática cuando sea necesario, no lo hace así que si ambos vectores y factores numéricos pueden ser utilizados. Si desea modelar, por ejemplo, el kilometraje de un coche con el número de cilindros, se obtiene un modelo diferente cuando se utiliza el número de cilindros como un vector numérico o como un factor.

La interpretación de ambos modelos es completamente diferente, y mucho depende de qué es exactamente lo que quieres hacer. Pero hay que ser conscientes de que, o se le puede interpretar el modelo equivocado.




» » » » ¿Cómo trabajar con los factores y vectores numéricos en modelos r y cálculos