u1a3

Juan

04/02/2021

Análisis de correlación por medio de una regresión lineal y su análisis de confiabilidad

Se utilizarán datos de google trends para analizar si existe una relación entre las búsquedas de halloween con las de disfraces.

Importar

Bibliotecas y datos

library(readr) #para leer datos
library(DT) # tablas interactivas
library(prettydoc) #documentos con mejor formato
setwd("D:/Escuela/Estadistica Aplicada/u1a4") # folder de trabajo
datos <- read_csv("datos.csv") #importar datos
## 
## -- Column specification --------------------------------------------------------
## cols(
##   TypeScript = col_double(),
##   GraphQL = col_double()
## )
#visualizar datos en tabla 

Visualizar

Tabla

Tabla interactiva con todos los datos

datatable(datos)

Gráficas

  • Exploraremos la relación que existe ente las variables por medio de una matriz de diagramas de dispersión
pairs(datos)

Modelar

Coeficiente de correlación de pearson

¿Existe alguna relación?

  • Matriz de coeficientes de correlación
cor(datos)
##            TypeScript GraphQL
## TypeScript    1.00000 0.07473
## GraphQL       0.07473 1.00000

Con un índice de correlación Pearson de 0.07 determinamos que no existe una correlación, sin embargo, si una pequeña casualidad.

Calculo y representación de la recta de minimos cadrados

regresion = lm ( TypeScript ~ GraphQL, data=datos )
summary(regresion)
## 
## Call:
## lm(formula = TypeScript ~ GraphQL, data = datos)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -21.238 -17.055   1.521   7.695  82.945 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  17.0546     2.3795   7.167 2.24e-10 ***
## GraphQL       0.1673     0.2380   0.703    0.484    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 20.43 on 88 degrees of freedom
## Multiple R-squared:  0.005585,   Adjusted R-squared:  -0.005716 
## F-statistic: 0.4942 on 1 and 88 DF,  p-value: 0.4839

Ecuación de la recta de mínimos cuadrados \(y\)

\[ y = 0.02687 + 0.21019x \]

Con esta ecuación podemos modelar y predecir valores

plot(datos$TypeScript, datos$GraphQL)
abline(regresion)

nuevos.GraphQL <- data.frame(GraphQL = seq(0,20), TypeScript=seq(0,20))
predict(regresion,nuevos.GraphQL)
##        1        2        3        4        5        6        7        8 
## 17.05461 17.22193 17.38926 17.55658 17.72391 17.89123 18.05856 18.22588 
##        9       10       11       12       13       14       15       16 
## 18.39320 18.56053 18.72785 18.89518 19.06250 19.22983 19.39715 19.56448 
##       17       18       19       20       21 
## 19.73180 19.89913 20.06645 20.23378 20.40110

Intervalo de confianza en el modelo de regresión simple

confint(regresion)
##                  2.5 %    97.5 %
## (Intercept) 12.3258380 21.783376
## GraphQL     -0.3056837  0.640333

El hecho de que exista una correlación pearson baja, significa que no exista una causalidad

Intervalo de confianza para el 90% de los datos

confint(regresion, level=0.07)
##                 46.5 %     53.5 %
## (Intercept) 16.8449806 17.2642339
## GraphQL      0.1463562  0.1882932