rm(list=ls()) #Limpiar entorno de trabajo
setwd("/home/daniel/Dropbox/U CENTRAL/02 2020/01 Primer semestre 2020/Analisis de datos cuantitativos I/Clases/15") #Escribir el directorio en que va a trabajar
#Sólo si no has instalado antes los paquetes requeridos:
# install.packages("foreign")
# install.packages("dplyr")
# install.packages("car")
library(foreign) #Paquete para importar datos
library(dplyr) #Paquete de procesamiento de bases de datos
library(car) #Paquete de análisis de datos
CEP84 <- read.spss("/home/daniel/Dropbox/U CENTRAL/02 2020/01 Primer semestre 2020/Analisis de datos cuantitativos I/Bases de datos/CEP84/Encuesta CEP 84 Dic 2019 v1.sav", to.data.frame = TRUE) 
#ajustar ruta a tu pc

Prueba de correlación de Pearson (\(r\))

La prueba de correlación de Pearson permite determinar si existe asociación lineal entre dos variables continuas. Sus supuestos de aplicación son:

La prueba de correlación de Pearson permite evaluar la siguientes hipótesis nula y alternativa:

Veamos un ejemplo.

Imaginemos que se necesita evaluar la asociación entre el puntaje PSU y la cantidad de libros por persona en el hogar, y que para ello, se cuenta con una muestra aleatoria de estudiantes del país (\(n = 2000\)). Por lo tanto, se evaluará la siguiente hipótesis nula y alternativa:

Se decide trabajar con un nivel de confianza del 95% y un nivel de significación de \(\alpha = 0.05\).

# Primero, generamos datos simulados (n=2000).
set.seed(123) #fijar semilla aleatoria
#libros por persona
librospersona <- rnorm(2000, 5,2)
librospersona[librospersona < 0] <- 0

#puntaje psu
psu <- 200 + 20*librospersona + rnorm(2000,150,45)

Comprobamos supuestos de aplicación.

Supongamos que se cumple que la muestra sea un subconjunto aleatorio de la población (aunque sean datos simulados). Por ende, nos queda comprobar que no exista una asociación no lineal entre las variables y que las variables presenten una distribución normal.

Utilizaremos un diagrama de dispersión para explorar si es que existe una relación no lineal entre las variables.

#diagrama de dispersión
plot(librospersona, psu)
abline(lm(psu ~ librospersona), col = "red") #agregar tendencia lineal

Se comprueba que la distribución conjunta de las variables sigue un patrón lineal.

Luego, se evalúa si se cumple el supuesto de normalidad en la distribución de las variables.

#Normalidad en libros por persona
shapiro.test(librospersona)
## 
##  Shapiro-Wilk normality test
## 
## data:  librospersona
## W = 0.99845, p-value = 0.06044
qqPlot(librospersona)

## [1] 1324 1622
#Normalidad en psu
shapiro.test(psu)
## 
##  Shapiro-Wilk normality test
## 
## data:  psu
## W = 0.99948, p-value = 0.8901
qqPlot(psu)

## [1] 135 855

Considerando tanto el test de Shapiro-Wilk para la variable libros por persona en el hogar (\(W = 1.00, \; p > 0.05\)) y psu (\(W = 1.00, \; p > 0.05\)), como los gráficos q-q normal, se concluye que ambas variables siguen una distribución normal.

De esta manera, se comprueban los supuestos necesarios para realizar una prueba de correlación Pearson.

cor.test(librospersona, psu,  method = "pearson", use = "complete.obs")
## 
##  Pearson's product-moment correlation
## 
## data:  librospersona and psu
## t = 39.688, df = 1998, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.6387010 0.6877611
## sample estimates:
##       cor 
## 0.6639449

En la muestra se observa un coeficiente de correlación Pearson (\(r\)) de 0.66, siendo estadísticamente significativo a un nivel de confianza de 95% (\(t = 39.69, \; df = 1,998, \; p < 0.05\)). De esta manera, existe evidencia suficiente para afirmar que en Chile los estudiantes que poseen más libros por persona en su hogar son también quienes obtienen mejores puntajes PSU (¡DATOS FICTICIOS!).

#Prueba de correlación de Spearman (\(\rho\))

La prueba de correlación de Spearman permite determinar si existe asociación lineal entre dos variables continuas, cuando no se cumple el supuesto de normalidad y/o estamos trabajando con variables ordinales.

Sus supuestos de aplicación son:

La prueba de correlación de Spearman permite evaluar la siguientes hipótesis nula y alternativa:

Veamos un ejemplo.

Empleando los datos de la encuesta CEP 84, se necesita evaluar la asociación entre la percepción de la situación económica del país y la percepción de la situación económica personal. Por lo tanto, se evaluará la siguiente hipótesis nula y alternativa:

Se decide trabajar con un nivel de confianza del 95% y un nivel de significación de \(\alpha = 0.05\).

# Primero, un poco de procesamiento de los datos.

#Situación económica país
levels(CEP84$MB_P2) #Ver niveles de variable
## [1] "1. - MUY MALA"         "2. - MALA"             "3. - NI BUENA NI MALA"
## [4] "4. - BUENA"            "5. - MUY BUENA"        "8. - No sabe"         
## [7] "9. - No contesta"
CEP84$MB_P2 <- na_if(CEP84$MB_P2,"8. - No sabe") #No sabe como NA
CEP84$MB_P2 <- na_if(CEP84$MB_P2,"9. - No contesta") #No contesta como NA
CEP84$MB_P2 <- droplevels(CEP84$MB_P2) # Borrar niveles no usados
CEP84$MB_P2 <- as.numeric(CEP84$MB_P2) #Transformar de factor a vector numérico

#Situación económica personal
levels(CEP84$MB_P4) #Ver niveles de variable
## [1] "1. - MUY MALA"         "2. - MALA"             "3. - NI BUENA NI MALA"
## [4] "4. - BUENA"            "5. - MUY BUENA"        "8. - No sabe"         
## [7] "9. - No contesta"
CEP84$MB_P4 <- na_if(CEP84$MB_P4,"8. - No sabe") #No sabe como NA
CEP84$MB_P4 <- na_if(CEP84$MB_P4,"9. - No contesta") #No contesta como NA
CEP84$MB_P4 <- droplevels(CEP84$MB_P4) # Borrar niveles no usados
CEP84$MB_P4 <- as.numeric(CEP84$MB_P4) #Transformar de factor a vector numérico

Comprobamos supuestos de aplicación.

se cumple que la muestra sea un subconjunto aleatorio de la población, ya que la Encuesta CEP 84 posee una muestra probabilística. Sólo nos queda comprobar que no exista una asociación no lineal entre las variables.

Utilizaremos un diagrama de dispersión para explorar si es que existe una relación no lineal entre las variables.

#diagrama de dispersión
plot(jitter(CEP84$MB_P2,5), jitter(CEP84$MB_P4,5), 
     xlab = "Situación económica del país", 
     ylab = "Situación económica personal")
abline(lm(CEP84$MB_P2 ~ CEP84$MB_P4), col = "red") #agregar tendencia lineal

Se comprueba que la distribución conjunta de las variables sigue un patrón lineal.

De esta manera, se comprueban los supuestos necesarios para realizar una prueba de correlación Spearman.

cor.test(CEP84$MB_P2, CEP84$MB_P4,  method = "spearman", use = "complete.obs")
## Warning in cor.test.default(CEP84$MB_P2, CEP84$MB_P4, method = "spearman", :
## Cannot compute exact p-value with ties
## 
##  Spearman's rank correlation rho
## 
## data:  CEP84$MB_P2 and CEP84$MB_P4
## S = 404418503, p-value < 2.2e-16
## alternative hypothesis: true rho is not equal to 0
## sample estimates:
##       rho 
## 0.2694062

En la muestra se observa un coeficiente de correlación Spearman (\(\rho\)) de 0.27, siendo estadísticamente significativo a un nivel de confianza de 95% (\(p < 0.05\)). De esta manera, existe evidencia suficiente para afirmar que existe una correlación leve entre ambas variables, donde en las personas que perciben una situación económica personal desfavorable, perciben también una situación económica del país empeorada.