Exploración univariada: estadísticos

August 14, 2011
By

This post was kindly contributed by Political R Analysis - go there to comment and to read the full post.

Se denomina exploración univariada al proceso en el que se obtiene las medidas estadísticas, la tabla de frecuencias y algún gráfico de resumen de una variable en particular. Primero es necesario identificar la escala en la que está medida la variable. Una clasificación ampliamente usada es la que identifica tres tipos de variables: categóricas nominales, categóricas ordinales y numéricas o escalares. Las categóricas pueden clasificarse a su vez por la cantidad de categorías o modalidades que puedan tener: dicotómicas o politómicas. Reconocidas las variables es necesario saber qué medidas y gráficas corresponden o se pueden obtener. Una nominal no puede tener media ni mediana, solo moda. Una ordinal puede tener moda y mediana pero no media. Una numérica puede tener las tres: moda, mediana y media. A estas medidas se les reconoce como medidas representativas de la variable o medidas de centralidad.

Las medidas de dispersión (cuán dispersos están los valores), simetría (para dónde está sesgada la curva que representa la distribución) y curtosis (el nivel de aplanamiento de la curva) nos indican la calidad de las medidas de representación. Para las variables numéricas calzan bien todas estas medidas, en menor grado para las ordinales (dispersión y simetría) y menor aun para para las nominales (solo dispersión).

La exploración también consta de darse cuenta si hay valores extraños (atípicos) en nuestras variables y si tenemos mucha información faltante (valores perdidos).

Para nuestro ejemplo de exploración vamos a utilizar la base de datos “lapop2010″ que contiene la data recogida en Perú por parte del Latin American Public Opinion Project (LAPOP) para el 2010. Este proyecto llevado a cabo por la Universidad de Vanderbilt es un buen referente en la Ciencia Política para los estudios de opinión pública en América Latina. Las ya conocidas comparaciones en base a rankings sobre a la afección de las instituciones políticas que nos suelen colocar como los últimos del grupo (por presentar un bajo nivel de confianza en los partidos políticos, el congreso y el poder ejecutivo) están hechas en base a las encuestas que realiza LAPOP anualmente.

Procedamos con nuestro ejemplo de exploración para los tres tipos de variables. La parte gráfica de la exploración la vamos a desarrollar en la sección de Gráficos  y no en este post.

Abrimos la data que se encuentra en formato .sav del SPSS. Sobre importación de bases de datos sugerimos revisar este otro post.

require(foreign)
data<- read.spss("lapop2010.sav",use.value.labels=TRUE, max.value.labels=TRUE, to.data.frame=TRUE)
names(data)

Descargamos los siguientes paquetes.

install.packages("Hmisc") #paquete para etiquetar y describir las variables
install.packages("pastecs") #paquete para estadísticos descriptivos
install.packages("relimp")#paquete para visualizar data
install.packages("moments")#paquete para obtener la kurtosis y la simetría
install.packages("psych")#paquete para describir variables numéricas

Abrimos los paquetes descargados

library(Hmisc, pastecs, relimp)#abriendo tres paquetes
library(moments)#abriendo un paquete

Identificamos las escalas y visualizamos la data

str(data)#identificamos las escala de la variables de toda la data
showData(data)#visualizamos la data en una ventana aparte.

Usamos el comando describe del paquete Hmisc para describir la variable “np1″. Par hacer referencia a la variable antes tenemos que escribir el nombre de la data y colocar el símbolo de dólar “$”.

describe(data$np1)#describimos la variable "np1"

Para reconocer de qué variable estamos hablando es necesario etiquetar las variables. Etiquetaremos con el comando label. Para etiquetar los valores o categorías usaremos el comando levels. El comando attach es útil porque nos permite hacer referencia a la variable sin escribir el nombre de la data ni el símbolo de dólar. En la variable numérica no se etiquetan valores.

attach(data)#Para no usar el símbolo de dólar

label(np1)<-"¿Ha asistido a un cabildo abierto o una sesión municipal durante los últimos 12 meses?" #etiquetando la variable np1, la variable nominal
levels(np1)<-c("Sí","No")#etiquetamos los valores de la variable nominal

label(dem23)<-"La democracia puede existir sin partidos políticos ¿Hasta qué punto está de acuerdo o en desacuerdo con esta frase?"#etiquetando la variable dem23, la variable ordinal
levels(dem23)<-c("Muy en desacuerdo","2","3","4","5","6","Muy de acuerdo")#etiquetando los valores de la variable ordinal

label(q2)<-"edad" #etiquetando la variable numérica

Descriptivos de la variable nominal

describe(np1) #describiendo la variable nominal

Descriptivos de la variable ordinal

describe(dem23) #describiendo la variable ordinal
stat.desc(dem23) #otra manera de describir la variable ordinal

El R no reconoce que es necesariamente una variable ordinal y es por esto que calcula estadísticos como la varianza, la desviación estándar, el coeficiente de variación, la media, el error estándar de la media y el intervalo de confianza de la media. Dado que estamos ante una variable categórica no debemos leer estos estadísticos.

Descriptivos de la variable numérica

describe(q2) #describiendo la variable numérica con el paquete Hmisc

Para variables numéricas sugerimos el describe del paquete psych porque tiene estadísticos como los que arroja el comando stat.desc del paquete pastecs. Dado que tenemos dos comandos describe (del Hmisc y del psych) es necesario detener uno de los paquetes para evitar confusiones posteriores.

detach("package:Hmisc") #detenemos el paquete Hmisc
library(psych) #abrimos el paquete psych
describe(data$q2) #describiendo la variable numérica con el paquete psych
stat.desc(data$q2) #otra manera de decribir la variable numérica
skewness(ed,na.rm=TRUE) #obtenemos la simetría sin contar los valores perdidos
kurtosis(ed,na.rm=TRUE) #obtenemos la curtosis sin contar los valores perdidos

Los comandos skewness y kurtosis son del paquete moments y nos permiten especificar que queremos obviar del cálculo a los valores perdidos, aspecto que no es considerado en los comandos describe del paquete psych ni el stat.desc del paquete pastecs.

Aquí termina la exploración univariada según la escala de la variable. Consideramos que la exploración es sumamente importante porque nos permite saber con qué tipo de data estamos trabajando y si vale la pena empezar a modelar con ella.  A su vez una buena exploración sugiere ideas y da pistas de relaciones que antes no habían sido pensadas y permite descubrir inconsistencias entre los datos y los supuestos teóricos.

 

Comments are closed.