Realizar en R-Markdown un compendio de análisis y la implementación de los siguientes supuestos estadísticos:

Introducción

Para el análisis econometrico, es esencial la validación de una serie de supuestos antes de realizar alguna conclusión sobre los resultados de un modelo. Estos supuestos permiten verificar si los datos se ajustan a ciertas condiciones, lo que puede comprobar o negar la validez de los resultados obtenidos. En este resumen, se presentarán los principales supuestos estadísticos y se tratará de explicar cómo se pueden implementar para su uso en estadistica y econometria.

Autocorrelación

La autocorrelación es la correlación entre los valores de una serie temporal con sus valores pasados o futuros. En otras palabras, indica si hay una relación entre una observación y las observaciones anteriores o posteriores. La autocorrelación es importante en el análisis de series de tiempo, ya que puede afectar la precisión de las estimaciones y las pruebas de hipótesis.

Para verificar la autocorrelación en R, se puede usar la función “acf()”. Esta función grafica la autocorrelación de una serie temporal en función del número de lags o rezagos. Como en este ejemplo, digamos que se teien una serie de tiempo “x” y queremos graficar su autocorrelación hasta 10 lags:

set.seed(123)
x <- arima.sim(n = 100, list(ar = 0.7))

# Grafica
acf(x, lag.max = 10)

En la gráfica se puede observar que la autocorrelación es significativa en el primer rezago (lag) y baja conforme aumenta el rezago. Si la autocorrelación fuera significativa para varios rezagos, esto indicaría que la serie temporal es autocorrelacionada y que se deben utilizar modelos adecuados para ajustar los datos.

Normalidad

La normalidad se refiere a la distribución de los datos en una muestra y su verificación es esencial en muchos procedimientos estadísticos, como por ejemplo en la construcción de intervalos de confianza, pruebas de hipótesis, análisis de regresión, entre otros. Una distribución normal es simétrica, tiene un pico en el centro y se extiende hacia ambos lados de manera uniforme como una campana.

Una forma común de verificar el supuesto de normalidad es mediante la prueba de Jarque-Bera. La prueba de Jarque-Bera es una prueba de ajuste, que mide la desviación de la distribución de la muestra de los coeficientes de asimetría y curtosis de la muestra de los valores esperados para una distribución normal. Si los datos provienen de una distribución normal, entonces los coeficientes de asimetría y curtosis deben ser cercanos a cero.

Para ejemplificar la implementación de este supuestos, digamos que tenemos un conjunto de datos llamado “datos” y queremos verificar si los datos se distribuyen normalmente. Para realizar la prueba de Jarque-Bera, podemos usar la función “jarque.bera.test()” o como se presenta a continuación:

normality.test(modelo1, multivariate.only=FALSE)
## $Income
## 
##  JB-Test (univariate)
## 
## data:  Residual of Income equation
## Chi-squared = 195.51, df = 2, p-value < 2.2e-16
## 
## 
## $Unemployment
## 
##  JB-Test (univariate)
## 
## data:  Residual of Unemployment equation
## Chi-squared = 33.197, df = 2, p-value = 6.184e-08
## 
## 
## $JB
## 
##  JB-Test (multivariate)
## 
## data:  Residuals of VAR object modelo1
## Chi-squared = 216.79, df = 4, p-value < 2.2e-16
## 
## 
## $Skewness
## 
##  Skewness only (multivariate)
## 
## data:  Residuals of VAR object modelo1
## Chi-squared = 7.8916, df = 2, p-value = 0.01934
## 
## 
## $Kurtosis
## 
##  Kurtosis only (multivariate)
## 
## data:  Residuals of VAR object modelo1
## Chi-squared = 208.9, df = 2, p-value < 2.2e-16

Se obtien el resultado de la prueba estadística JB, el número de grados de libertad y el p-valor. Si el p-valor es mayor que el nivel de significancia (0.05), no podemos rechazar la hipótesis nula de que los datos se distribuyen normalmente. Si el p-valor es menor que el nivel de significancia, entonces podemos rechazar la hipótesis nula y concluir que los datos no se distribuyen normalmente.

Estacionariedad

La estacionariedad es la propiedad de una serie de tiempo en la que su comportamiento estadístico se mantiene constante a lo largo del periodo estudiado. Es decir, la estacionariedad implica que la media, la varianza y la autocorrelación de la serie temporal no cambian con el tiempo. La estacionariedad es importante en el análisis de series de tiempo ya que permite utilizar modelos adecuados para realizar pronósticos y estimaciones mucho más precisas.

Para verificar la estacionariedad en R, se puede usar la función “adf.test()”. Esta función realiza una prueba de raíz unitaria para determinar si una serie temporal es estacionaria. La prueba se basa en la hipótesis nula de que la serie tiene una raíz unitaria, lo que indica que no es estacionaria.

set.seed(123)
x <- arima.sim(n = 100, list(ar = 0.7))

# Prueba ADF
adf.test(x)
## 
##  Augmented Dickey-Fuller Test
## 
## data:  x
## Dickey-Fuller = -2.9558, Lag order = 4, p-value = 0.1807
## alternative hypothesis: stationary

El resultado de la prueba ADF nos muestra que el valor del estadístico de prueba es mayor que el valor del nivel de significancia del 0.05. Esto indica que no se puede rechazar la hipótesis nula y concluir que la serien no es estacionaria.

Homocedasticidad

La homocedasticidad hace referencia a la suposición de que la varianza de los errores en un modelo es constante. La homocedasticidad es esencial en la estadística y en la econometría, ya que una varianza heterocedástica puede afectar la precisión de las estimaciones y las pruebas de hipótesis del modelo en cuestión.

Para verificar la homocedasticidad del modelo podemos hacer uso de la función “plot()”. Esta grafica los residuos de un modelo en función de los valores ajustados. Si los residuos tienen una varianza constante, se esperaría que los puntos estuvieran distribuidos de manera uniforme alrededor de una línea horizontal.

set.seed(123)
x <- rnorm(n = 100)
y <- 2*x + rnorm(n = 100)
model <- lm(y ~ x)

# Grafica
plot(model$fitted.values, model$residuals)
abline(h = 0)

En la grafica resultante, se puede ver cómo los puntos no están distribuidos de manera uniforme alrededor de la línea horizontal, lo que indica que los residuos no tienen una varianza constante y no se cumple la suposición de homocedasticidad. Si este supuesto no se cumplie, significa que hay heteroscedasticidad en el modelo y sería necesario realizar otros analisis para determinar si se continua con las variables del modelo o se sustituyen por otras que se adecuen más a lo que se busca pronosticar.

Multicolinealidad

La multicolinealidad es la alta correlación que existe dos o más variables predictoras de un modelo. La multicolinealidad es importante en la estadística así como para la econometría, ya que puede afectar la precisión de las estimaciones y las pruebas de hipótesis. En particular, la multicolinealidad puede hacer que los coeficientes de regresión sean imprecisos o incluso contrarios a la intuición.

Para poder comprobar si hay multicolinealidad en un modelo se puede utilizar la función “vif()”. Esta función calcula el factor de inflación de la varianza (VIF) para cada variable en un modelo. Un VIF alto indica que la variable tiene una correlación alta con otras variables predictoras y puede ser un indicador de multicolinealidad.

set.seed(123)
x1 <- rnorm(n = 100)
x2 <- rnorm(n = 100)
y <- 2*x1 + 3*x2 + rnorm(n = 100)

model <- lm(y ~ x1 + x2)

# Calculo del VIF
vif(model)
##       x1       x2 
## 1.002459 1.002459

Como se puede observar, el resultado de la función vif() muestra que los VIF para x1 y x2 son 1.002459 y 1.002459, respectivamente. Como regla general, se considera que un VIF superior a 5 indica una alta multicolinealidad. En este caso, los VIF son mucho más bajos, lo que indica que no hay una alta correlación entre las variables predictoras y se cumple la suposición de multicolinealidad. Por lo general, no debería haber multicolinealidad en un modelo estadístico. Pero, a veces, la multicolinealidad puede ser inevitable gracias a la naturaleza de los datos y las variables que se están estudiando. En estas situaciones, se deben tomar medidas para manejar la multicolinealidad y minimizar su efecto en los resultados.

Causalidad

La causalidad se refiere a la relación entre una variable independiente y una variable dependiente en un modelo. En estadística y econometría, es importante establecer la causalidad para poder hacer predicciones más precisas y tomar decisiones basadas en información confiable.

Al verificar la causalidad en un modelo, se puede usar la Prueba de Granger con el objetivo de determinar si una variable independiente tiene un efecto significativo en una variable dependiente.

GrangerIncome <-causality(modelo1, cause = 'Income')
GrangerIncome
## $Granger
## 
##  Granger causality H0: Income do not Granger-cause Unemployment
## 
## data:  VAR object modelo1
## F-Test = 2.8057, df1 = 5, df2 = 342, p-value = 0.01687
## 
## 
## $Instant
## 
##  H0: No instantaneous causality between: Income and Unemployment
## 
## data:  VAR object modelo1
## Chi-squared = 6.7734, df = 1, p-value = 0.009253
GrangerUnemployment <-causality(modelo1, cause = 'Unemployment')
GrangerUnemployment
## $Granger
## 
##  Granger causality H0: Unemployment do not Granger-cause Income
## 
## data:  VAR object modelo1
## F-Test = 3.7264, df1 = 5, df2 = 342, p-value = 0.002681
## 
## 
## $Instant
## 
##  H0: No instantaneous causality between: Unemployment and Income
## 
## data:  VAR object modelo1
## Chi-squared = 6.7734, df = 1, p-value = 0.009253

Al obtener el resultado de la prueba de Granger, se puede observar que Income y Unemployment presentan la mejor pareja de variables para formar un modelo funcional y pronosticable, ya que los p-valor son menores que el nivel de significancia de 0.05

Comparación de modelos: AIC y cálculo de errores

La comparación de modelos es fundamental en la econometría y en la estadística para determinar cuál modelo es el más adecuado para el conjunto de datos estudiado.

El criterio de información de Akaike (AIC)

Una forma de comparar modelos es utilizando el AIC, este se utiliza para comparar modelos que difieren en su complejidad, con un AIC menor indica un mejor modelo. Comi lo muestra el resultado de la siguiente prueba,se puede observar que el AIC para model1 es 293.2 y el AIC para model2 es 292.3. Como el AIC para model2 es el menor, se puede concluir que model2 es un mejor modelo que model1.

set.seed(123)
x <- rnorm(n = 100)
y <- 2*x + rnorm(n = 100)
model1 <- lm(y ~ x)
model2 <- lm(y ~ x + I(x^2))

# Calculo de AIC
AIC(model1)
## [1] 281.8229
AIC(model2)
## [1] 282.741

Calculo de errores

Además del criterio de AIC, también es importante calcular los errores de predicción para evaluar la calidad de los modelos. Una forma de hacer esto es calcular el error cuadrático medio (MSE). Al observar el resultado obtenido de la prueba del error cuadratico medio, se puede demostrar que el MSE para model1 es 0.91 y el MSE para model2 es 0.91. Estos valores indican que model1 es un mejor modelo que model2. La forma de calcular los errores puede variar según el modelo y los métodos utilizados.

library(Metrics)
mse(model1$fitted.values, y)
## [1] 0.9234413
mse(model2$fitted.values, y)
## [1] 0.9135047

Conclusión

Como conclusión considero que el uso de los supuestos estadísticos mencionados en este trabajo es verdaderamente esencial para el análisis de datos y la implementación de modelos predictivos precisos y confiables. La autocorrelación se refiere a la relación entre los valores de una variable a través del tiempo y es util para identificar patrones en los datos y modelarlos adecuadamente.La normalidad es importnate para garantizar que los resultados del análisis estadístico sean precisos y confiables, ya que muchos métodos estadísticos asumen que los datos se distribuyen normalmente en forma de campana. La estacionariedad es completamente necesaria para que los modelos sean precisos en la predicción de valores futuros, ya que los procesos estacionarios tienen propiedades estadísticas constantes en el tiempo. La homocedasticidad es valiosa para garantizar que los errores de un modelo sean constantes y no dependan del valor de la variable independiente. La multicolinealidad puede afectar la precisión de los modelos, ya que se refiere a la correlación entre las variables independientes, lo que puede hacer que los coeficientes estimados sean poco confiables. La causalidad es importante para entender las relaciones entre variables y es importante para la toma de decisiones y la identificación de posibles intervenciones para mejorar los resultados. Por último, los coeficientes requeridos para comparar modelos, como el AIC y el cálculo de errores, son herramientas fundamentales para seleccionar el modelo más adecuado para los datos y garantizar que los resultados sean precisos y confiables. La verificación de la causalidad y la comparación de modelos son aspectos esenciales en la estadística y econometría para hacer predicciones precisas y tomar decisiones mucho más informadas. Me parece importante resaltar que la implementación adecuada de estos supuestos y coeficientes puede mejorar significativamente la calidad y la precisión de un análisis estadístico de modelos predictivos, lo que puede ser bastante fundamental para la toma de buenas decisiones y a la hora de identificar oportunidades que ayuden el mejoramiento del modelo.

¡Muchas gracias!