Introduccion a R

Diplomado en Software Estadistico

Estadistica descriptiva

Pregunta 1: Quienes estudian mas, los hombres o las mujeres?

Pregunta 2: Los jovenes estudian mas que los adultos?

Para este ejercicio se van a usar la base de Caracteristicas sociodemograficas de los integrantes del hogar de la Encuesta Nacional de Ingresos y Gastos de los Hogares 2016 en el formato dbf.

0. Preparar el entorno de trabajo

Antes de iniciar a trabajar en R conviene limpiar el entorno de trabajo

rm(list=ls())     
graphics.off()    
options(warn=-1)  

0.1. Instalar paquetes

Par dar inicio al analisis conviene preguntarse por el tipo de analisis que es de utilidad para responder a las preguntas de investigacion

Con base en el tipo de analisis que se va a llevar a cabo, el primer paso es revisar los paquetes que ya estan instalados e instalar los que hagan falta. Esto ultimo se puede hacer con el comando install.package.

install.packages("foreign")
install.packages("ggplot2")
install.packages("questionr")

0.2. Cargar librerias

Hecho esto, el siguiente paso es cargar las librerias. Para mayor detalle se recomienda la pagina Quick-R Packages

    library(base)          
    library(foreign)       
    library(questionr)     
    library(ggplot2)
    library(stats)
    library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union

0.3. Directorio de trabajo

Es importante que al iniciar se defina el directorio de trabajo, el cual corresponde a la carpeta en donde se encuentran los archivos que se van a utilizar. Hay que utilizar // o / para definir el entorno de trabajo

setwd("C:/Users/jmartinez/Desktop/JC") 

1. Importar datos

Para importar bases de datos hay que identificar el tipo de base y seleccionar la funcion mas adecuada. Por ejemplo, para importar base de csv, cuya extencion es sav se requiere la funcion read.csv. Ademas, para tener una base legible para R, se usa la funcion data.frame.

enigh<-data.frame(read.dbf("poblacion.dbf"))

2. Descripcion de la base

Antes de iniciar el analisis, conviene tener un panorama general de la base de datos. Para ello, se ejecutan los comandos names y head; el primero muestra el nombre de todas las variables y el segundo los dos primeros valores.
#Descripcion de la base
                    names(enigh)
                    head(enigh,2)

3. Subconjuntos (hombres y mujeres)

El objetivo de esta seccion es hacer dos bases de datos, una que corresponda a las mujeres y otras a los hombres. Para ello, primero se convierten en numerico las variables que vamos a utilizar: hor_2 y sexo

3.1 Convertir a numerico las variables

Antes de dar paso al analisis, conviene asegurarse de que las varibales tienen el tipo de formato que es necesario. En este caso se requieren variables numericas:

    enigh$sexo <-as.numeric(as.character(enigh$sexo))
    enigh$hor_2 <-as.numeric(as.character(enigh$hor_2))
    enigh$eda <-as.numeric(as.character(enigh$eda))

3.2 Hacer una base para hombres y otra para mujeres

Para analizar por separado hombres y mujeres, conviene hacer una grafica para cada grupo poblacional.

    enigh_h <- enigh[which(enigh$sexo==1),]
    enigh_m <- enigh[which(enigh$sexo==2),]

4. Medidas de tendencia central

A fin de analizar el comportamiento de los datos, conviene resumir la informacion con un solo valor. En usual que se ubique en el centro de la distribusion y ofrezca una mira rapida de cual es su conducta.

4.1 Promedio

    mean(enigh_h$hor_2, na.rm = TRUE)
    mean(enigh_m$hor_2, na.rm = TRUE)

4.2 Mediana

    median(enigh_h$hor_2, na.rm = TRUE)
    median(enigh_m$hor_2, na.rm = TRUE)

4.3 Minimo

    min(enigh_h$hor_2, na.rm = TRUE)
    min(enigh_m$hor_2, na.rm = TRUE)

4.4 Maximo

    max(enigh_h$hor_2, na.rm = TRUE)
    max(enigh_m$hor_2, na.rm = TRUE)

4.5 Desviacion estandar

    sd(enigh_h$hor_2, na.rm = TRUE)
    sd(enigh_m$hor_2, na.rm = TRUE)

4.6 Cuartiles

    quantile(enigh_h$hor_2, na.rm = TRUE)
    quantile(enigh_m$hor_2, na.rm = TRUE)

4.7 Correlacion

Para encontrar la relacion entre la edad y la cantidad de estudios se analiza la correlacion de ambas variables. Esto se hace con el comando cor de la libreria stats
    cor(enigh_m$hor_2,enigh_m$eda,method = "pearson")
## [1] NA

No se pudo correr la correlacion debido a los NA por lo que es necesario quitarlos
        #4.7.1 Quitar valores perdidos (haciendo un subconjunto)
        
        enigh_m2<-enigh_m[!is.na(enigh_m$hor_2),]
        
        #4.7.2 Correlacion
        
        cor(enigh_m2$hor_2,enigh_m2$eda,method = "pearson")
## [1] -0.570799

5. Graficas (ggplot)

Ahora, se llevan a cabo algunas graficas con el paquete ggplot, el cual es de gran utilidad no solo porque ofrece una gran cantidad de graficas, sino que permite dar formato.

5.1 Grafica simple

En la version mas simple, es necesario definir:

  • La base de datos
  • Las variables que se van a utilizar
  • El tipo de grafica

    ggplot(enigh,aes(sexo))+geom_bar(fill="blue")

5.2 Grafica con diseño

Tambien se le puede agregar formato como titulos de los ejes, titulo central, entre otras. Se recomida ver el archivo GGPLOT

ggplot(enigh,aes(sexo))+geom_bar(fill="blue")+
    xlab("Sexo de las personas")+
    ylab("Numero de personas")+
    ggtitle("Comparacion entre hombres y mujeres")