En esta sección se trabajará con el siguiente paquete: “nortest”
###Librerias###
library(nortest)
El creciente desinteres por la política ha ocasionado que exista un rechazo hacia la democracia como forma de gobierno, por lo que resulta importante explorar, en la presente aplicación, la variable que explique el desinteres por la política. En el ejercicio demostrativo se sugiere que la falta de cumplimiento de las funciones de los partidos políticos, reflejada en la desaprobación de dicha institución, es la variable explicativa del creciente desinteres por la política.
Los datos del fichero BaseLatinobarómetro2013-1.txt corresponden a dos variables medidas en los países de Latinoamérica (18): “Desconfianza hacia los Partidos Políticos”(x) y “Desinterés por la Política”(y). Para leer el fichero de datos y saber los nombres de las variables:
BaseIntPol <- read.table("D:/Manuel/MAESTRÍA EN ESTADÍSTICA APLICA UNALM/SEMESTRE I/Regresión Aplicada/Capítulo 2 - Regresión Lineal Simple/Aplicación/BaseLatinobarómetro2013-1.txt", header=TRUE, quote="\"")
###Mostramos las variables###
names(BaseIntPol)
## [1] "País" "DesConf" "IntPol"
###Mostramos la matriz de datos###
(BaseIntPol)
## País DesConf IntPol
## 1 Argentina 37.7 44.5
## 2 Bolivia 46.8 50.6
## 3 Brasil 48.2 33.6
## 4 Chile 48.3 52.0
## 5 Colombia 45.8 49.2
## 6 Costa.Rica 57.1 49.4
## 7 Ecuador 37.7 41.9
## 8 El.Salvador 45.5 38.4
## 9 Guatemala 49.1 48.0
## 10 Honduras 55.3 40.4
## 11 México 43.4 33.0
## 12 Nicaragua 39.2 40.3
## 13 Panamá 40.7 34.7
## 14 Paraguay 31.5 25.0
## 15 Perú 50.9 53.8
## 16 Rep.Dominicana 48.9 46.3
## 17 Uruguay 29.0 35.1
## 18 Venezuela 31.9 23.5
Con el fin de conocer las relaciones existentes entre las variables podemos representar una diagrama de dispersión. Al parecer existe una relación lineal entre “Desconfianza hacia los Partidos” y “Sesinteres por la Política”.
plot(IntPol ~ DesConf, data = BaseIntPol, xlab = "Desconfianza hacia los partidos políticos", ylab = "Desinterés por la política", xlim = c(29, 57.1), ylim = c(25, 53.8), main="Gráfica 02.1.: Diagrama de Dispersión")
MLatin <- lm(IntPol ~ DesConf, data = BaseIntPol)
abline(MLatin, col = "green")
Para cuantificar el grado de relación lineal, calculamos el coeficiente de correlación: 0.6637825. Lo que nos muestra que nuestras variables se relacionan de manera significativa.
cor.test(BaseIntPol[,2], BaseIntPol[,3])
##
## Pearson's product-moment correlation
##
## data: BaseIntPol[, 2] and BaseIntPol[, 3]
## t = 3.55, df = 16, p-value = 0.002667
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## 0.2853391 0.8631593
## sample estimates:
## cor
## 0.6637825
Los parámetros de la ecuación de la recta de mínimos cuadrados que relaciona el desinterés por la política en función a la desonfianza hacia los partidos políticos vienen dados por la columna ´Estimate´ de la tabla ´Coefficients´. Por lo tanto, en este ejemplo la ecuación de la recta de mínimos cuadrados es:
y=-8.5276 + 0.7449X
M.Aplicación <- lm(IntPol ~ DesConf, data = BaseIntPol)
summary(M.Aplicación)
##
## Call:
## lm(formula = IntPol ~ DesConf, data = BaseIntPol)
##
## Residuals:
## Min 1Q Median 3Q Max
## -10.830 -6.279 1.961 6.241 7.891
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 8.5276 9.3175 0.915 0.37366
## DesConf 0.7449 0.2098 3.550 0.00267 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 6.916 on 16 degrees of freedom
## Multiple R-squared: 0.4406, Adjusted R-squared: 0.4056
## F-statistic: 12.6 on 1 and 16 DF, p-value: 0.002667
El coeficiente de determinación (es decir, el coeficiente de correlación al cuadrado) mide la bondad del ajuste de la recta a los datos. A partir de la salida anterior, vemos que su valor en este caso es Multiple R-squared: 0.4406 El R cuadrado nos indica que aproximadamente el 44.06% de la variabilidad en la variable desinterés por la política es explicada por la desconfianza hacia los partidos políticos.
Bajo este modelo:
Los errores típicos de los estimadores de los parámetros ( _0 ) y ( _1 ) se encuentran en la columna Std Error de la salida anterior. Para nuestro caso, sus valores son 9.3175 y 0.2098 respectivamente.
La columna t value contiene el estadístico t, es decir, cociente entre cada estimador y su error típico. Estos cocientes son la base para llevar a cabo los contrastes ( H_0:, _0 = 0 ) y ( H_0:, _1 = 0 ) . Los correspondientes p-valores aparecen en la columna Pr(>|t|). En este caso para el intercepto no se rechaza la hipótesis y para la pendiente es pequeño por lo que se rechaza la hipótesis.
El estimador de la desviación típica de los errores ( ) aparece como Residual standard error y su valor en nuestro caso es 6.916
Los intervalos de confianza para los parámetros se obtienen con el comando confint. El parámetro level permite elegir el nivel de confianza (por defecto es 0.95):
confint(M.Aplicación)
## 2.5 % 97.5 %
## (Intercept) -11.2245365 28.279747
## DesConf 0.3000602 1.189655
confint(M.Aplicación, level = 0.9)
## 5 % 95 %
## (Intercept) -7.7396034 24.794814
## DesConf 0.3785373 1.111178
anova(M.Aplicación)
## Analysis of Variance Table
##
## Response: IntPol
## Df Sum Sq Mean Sq F value Pr(>F)
## DesConf 1 602.71 602.71 12.602 0.002667 **
## Residuals 16 765.20 47.82
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
alfa:0.04 F= 12.602 valor de p=0.002667 Observamos que: 0.002667 < 0.04 Por lo tanto: se rechaza la Hipótesis Nula (H0) y se concluye: Existe una relación lineal en el modelo.
predict(M.Aplicación, data.frame(DesConf=70), level=0.95, interval="prediction")
## fit lwr upr
## 1 60.66765 41.60246 79.73285
En base a la función media estimada se puede predecir la variable respuesta con valores específicos del predictor. En el ejemplo mostrado arriba se puede estimar a un 95% de confianza que cuando la variable desconfianza hacia los partidos políticos toma el valor de 70%, la variable desinterés por la política toma el valor de 60.66765%, presentando como límite inferior el valor de 41.60246% y límite superior el 79.73285%.
Los valores ajustados ( y_i ) y los residuos ( e_i = y_i - y_i ) se pueden obtener con los comandos fitted y residuals, respectivamente. Los residuos estandarizados se obtienen con rstandard. Por ejemplo, el siguiente código obtiene una representación de los residuos estandarizados frente a los valores ajustados, que resulta útil al llevar a cabo el diagnóstico del modelo:
Residuos.M.Aplicación <- rstandard(M.Aplicación)
valores.ajustados <- fitted(M.Aplicación)
plot(Residuos.M.Aplicación ~ valores.ajustados, main="Gráfica 02.2.: Gráfica de Residuales")
M.Residuos <- lm(Residuos.M.Aplicación ~ valores.ajustados)
abline(M.Residuos, col = "blue")
No se observa ningún patrón especial, por lo que tanto la homocedasticidad como la linealidad resultan hipótesis razonables.
La hipótesis de normalidad se suele comprobar mediante un QQ plot de los residuos. El siguiente código sirve para obtenerlo:
qqnorm(Residuos.M.Aplicación, main="Gráfica 02.3.: Gráfico Cuantil-Cuantil (Normal Q-Q Plot")
qqline(Residuos.M.Aplicación, col = "red")
Por lo visto en el gráfico la normalidad parece aceptable.
Ho: Los residuos siguen una distribución normal H1: Los residuos no siguen una distribución normal
Alfa = 0.04
library(nortest)
ad.test(Residuos.M.Aplicación)
##
## Anderson-Darling normality test
##
## data: Residuos.M.Aplicación
## A = 0.75311, p-value = 0.04063
Prueba Estadística AD = 0.75311
Criterio de Decisión
Si P < Alfa Se rechaza Ho Si p >= Alfa No se rechaza Ho
Como p = 0.04063 >= alfa, no se rechaza Ho.
Conclusión: No existe evidencia estadística para rechazar Ho. Es decir, podemos afirmar que los residuos siguen una distribución normal.