library(readxl)
#Leyendo la base
datos <- read_excel("C:/Users/kaqu/Documents/Maestria Ciencia de Datos/Metodos_simulacion_estadistica/Unidad_2/caso.xlsx")
attach(datos)
names(datos)
## [1] "mes"        "desempleo"  "homicidios"

Algunas estadísticas básicas

kbl(summary(datos[,2:3]),caption = "<center><strong>Descriptivas Generales
  </strong></center>")%>%   kable_paper(bootstrap_options = "striped")
Descriptivas Generales
desempleo homicidios
Min. :10.06 Min. : 51.61
1st Qu.:11.19 1st Qu.: 80.72
Median :11.99 Median :121.38
Mean :11.98 Mean :134.61
3rd Qu.:12.65 3rd Qu.:176.94
Max. :14.02 Max. :327.05

En cuanto a la tabla de algunas descriptivas, se puede observar que el porcentaje promedio de desempleo es cercano al 12%. En cuanto a la tasa de homicidios parece una distribución menos simética por la distancia que hay entre los cuartiles, al menos el 50% de los casos evaluados alcanza una tasa de homicios de 121 casos por cada 100.000 habitantes.

par(mfrow = c(2,2))
boxplot(desempleo, horizontal = TRUE, main = "Boxplot Tasa de desempleo",col="#A6CEE3" )
hist(desempleo,main = "Histograma Tasa de desempleo" , ylab = "Frecuencia" , xlab = "Tasa Desempleo *(100.000 hab)",col="#A6CEE3")
boxplot(homicidios, horizontal = TRUE, main = "Boxplot Homicidios",col="#A6CEE3" )
hist(homicidios,main = "Histograma Homicidios" , ylab = "Frecuencia" , xlab = "Homicidios",col="#A6CEE3")

Efectivamente se puede observar que la tasa de homicidios, tiene un comportamiento asimétrico positivo alcanzando hasta un valor atipico de alrededor 327 casos. Por otra parte, en cuanto al porcentaje de desempleo tiene una distribución asimetrica, logrando mayor distribución de 12% y 13%.

1. Construir Diagrama de Dispersión. Comentar este gráfico

ggplot(data = datos, aes(x=desempleo, y=homicidios)) +
  #geom_histogram(aes(y = ..count.., fill = ..count..)) +
  geom_point()+
  #geom_smooth(method=lm, se=FALSE)+
  scale_fill_gradient(low = "light blue", high = "light blue") +
  #stat_function(fun = dnorm, colour = "black", args = list(mean = mean(precio_millon), sd = sd(precio_millon))) +
  ggtitle("Diagrama de Dispersión ") + labs(x = "% Desempleo") + labs(y = "Tasa de Homicidios")

Se puede observar que si hay una relación creciente entre el porcentaje de desempleo, y la tasa de homicidios, es por eso que a medida que se aumente el % de desempleo aumentara la tasa de homicidios.

Parece tener mas que un comportamiento lineal, quizas un comportamiento exponencial, pero esta hipotésis se hira desarrollando a medida que se avance con el ejercicio.

2. Halle el coeficiente de correlación. Interprete y determine si es significativo

round(cor(desempleo,homicidios),2)
## [1] 0.96

La correlación existente entre la tasa de desempleo y los homicidios es de 0.96, al ser un número tan cercano entonces se puede pensar preliminarmente, que hay una relación lineal positiva fuerte.

3. Estime el Correspondiente modelo de regresión lineal simple.Interprete la pendiente del modelo

m1=lm(homicidios~desempleo)
summary(m1)
## 
## Call:
## lm(formula = homicidios ~ desempleo)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -19.335 -11.928  -4.618   6.006  62.193 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -628.936     35.846  -17.55   <2e-16 ***
## desempleo     63.751      2.983   21.37   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 18.06 on 38 degrees of freedom
## Multiple R-squared:  0.9232, Adjusted R-squared:  0.9212 
## F-statistic: 456.6 on 1 and 38 DF,  p-value: < 2.2e-16

4. Valide los supuestos del modelo

par(mfrow=c(2,2))
plot(m1)

Se puede observar que existe una componente sistemática entre los residuales y valores ajustados, mas exactamente en forma de parabola, mientras que deberian distribuirse de forma aleatoria. En cuanto al QQ -plot se puede observar que no se alinean en cuanto a la linea para la normalidad, es por esto que se harán algunas pruebas estadísticas que permitan tener una mejor interpretación de los supuestos.

Pruebas estadísticas para validación de supuestos
  1. \(E(e_i )= 0\)
mean(residuals(m1))
## [1] 5.551115e-16

El valor esperado (promedio) de los residuales es igual a 0.

  1. Supuesto de Normalidad

\(H_0 : X \sim N(\mu,\sigma^2)\)

\(H_a : X \nsim N(\mu,\sigma^2)\)

shapiro.test(m1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  m1$residuals
## W = 0.85901, p-value = 0.00015

Com $ P-value $ es menor a a 0.05 (nivel de significancia escogido), se rechaza \(H_0\), entonces podría pensar que los errores no siguen una distribución normal.

  1. Supuesto de Homocedasticidad de Varianza (Breush Pagan)

\(H_0 : Los \, residuales \, se \, distribuyen \, con \, la \, misma \, varianza\)

\(H_a : Los \, residuales \, no \ se \, distribuyen \, con \, la \, misma \, varianza\)

bptest(m1)
## 
##  studentized Breusch-Pagan test
## 
## data:  m1
## BP = 2.0361, df = 1, p-value = 0.1536

Como $ P-value $ es mayor a 0.05 (nivel de significancia escogido), no se rechaza \(H_0\), entonces se podría pensar que los errores cumplen con el supuesto de homocedasticidad.

  1. Supuesto de Autocorrelación de los errores (Durbin-Watson)

\(H_0 : No \, existe \, correlación \, entre \, los \, errores\)

\(H_a : Existe \, correlación\, entre\, los\, errores\)

dwt(m1, alternative = "two.sided")
##  lag Autocorrelation D-W Statistic p-value
##    1       0.6423077     0.2745439       0
##  Alternative hypothesis: rho != 0

Como $ P-value $ es menor a 0.05 (nivel de significancia escogido), se rechaza \(H_0\), entonces se podría pensar que los errores estan autocorrelacionados.

En este caso se viola el supuesto de normalidad e independencia de los errores, por ende se podría pensar en realizar alguna transformación sobre la variable respuesta o inclunsive sobre la variable explicativa.

Transformación del modelo

m2=lm(log(homicidios)~desempleo)
summary(m2)
## 
## Call:
## lm(formula = log(homicidios) ~ desempleo)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.08538 -0.02273  0.00001  0.02223  0.09549 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -1.027556   0.075235  -13.66 3.08e-16 ***
## desempleo    0.486124   0.006262   77.64  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.03791 on 38 degrees of freedom
## Multiple R-squared:  0.9937, Adjusted R-squared:  0.9936 
## F-statistic:  6027 on 1 and 38 DF,  p-value: < 2.2e-16

Gracias a los p-values asociados a los coeficientes \(\beta_0\) y \(\beta_1\), ambos son significativamente diferentes de 0.

coef_determinacion= (cor(desempleo,homicidios)*cor(desempleo,homicidios))
coef_determinacion
## [1] 0.9231719
coef_determinacion_m2= (cor(desempleo,log(homicidios))*cor(desempleo,log(homicidios)))
coef_determinacion_m2
## [1] 0.9937347

Se puede observar que al hacer la transformación a la variable respuesta, la explicabilidad del modelo aumenta hasta en un 7%.

par(mfrow=c(2,2))
plot(m2)

Se puede observar como ese componente sistemático observado en el primer modelo casi tiende a desaparecer, y el gráfico qq-plot parece tener un mejor ajuste.

Pruebas estadísticas para validación de supuestos
  1. \(E(e_i)= 0\)
mean(residuals(m2))
## [1] -3.296901e-18

El valor esperado (promedio) de los residuales es igual a 0.

  1. Supuesto de Normalidad

\(H_0 : X \sim N(\mu,\sigma^2)\)

\(H_a : X \nsim N(\mu,\sigma^2)\)

shapiro.test(m2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  m2$residuals
## W = 0.99108, p-value = 0.9859

Com $ P-value $ es mayor a 0.05 (nivel de significancia escogido), no se rechaza \(H_0\), entonces podría pensar que los errores siguen una distribución normal.

  1. Supuesto de Homocedasticidad de Varianza (Breush Pagan)

\(H_0 : Los \, residuales \, se \, distribuyen \, con \, la \, misma \, varianza\)

\(H_a : Los \, residuales \, no \ se \, distribuyen \, con \, la \, misma \, varianza\)

bptest(m2)
## 
##  studentized Breusch-Pagan test
## 
## data:  m2
## BP = 8.0921, df = 1, p-value = 0.004446

Como $ P-value $ es menor a 0.05 (nivel de significancia escogido), se rechaza \(H_0\), entonces se podría pensar que los errores no cumplen con el supuesto de homocedasticidad.

  1. Supuesto de Autocorrelación de los errores (Durbin-Watson)

\(H_0 : No \, existe \, correlación \, entre \, los \, errores\)

\(H_a : Existe \, correlación\, entre\, los\, errores\)

dwt(m2, alternative = "two.sided")
##  lag Autocorrelation D-W Statistic p-value
##    1     -0.05449206      1.941941   0.698
##  Alternative hypothesis: rho != 0

Como $ P-value $ es mayor a 0.05 (nivel de significancia escogido), no se rechaza \(H_0\), entonces se podría pensar que los errores no estan autocorrelacionados.

En este caso se viola el supuesto de homocedasticidad de la varianza de los errores, por ende se podría pensar en realizar alguna transformación sobre la variable respuesta o inclunsive sobre la variable explicativa seria una buena opción.

5. Estime la tasa de homicidios para la eventualidad en que el gobierno logre disminuir la tasa de desempleo a un 11%

exp(predict(m2,newdata = list(desempleo=11)))
##        1 
## 75.17389

Si el gobierno logrará disminuir la tasa de desempleo a un 11%, se espera que la tasa de homicidios en promedio sea de 75 casos por cada 100.000 habitantes.