Autoras:
Jiménez Llanos Lizbeth
Martínez de los Santos Monserrat
Descripción de los Datos
Conjunto de datos espacio-temporales de casos semanales de varicela en Hungría. El conjunto de datos consta de una matriz de adyacencia a nivel de condado y una serie de tiempo de los casos notificados a nivel de condado entre 2005 y 2015.
Número de instancias: 521
Número de atributos: 20
Fecha de donación: 2021/02/17
Fuente:
Benedek Rozemberczki, Universidad de Edimburgo, benedek.rozemberczki@gmail.com
Información de atributos:
Los atributos son recuentos semanales de casos de varicela en los condados húngaros.
Benedek Rozemberczki, Paul Scherer, Oliver Kiss, Rik Sarkar, Tamas Ferenci. (2021). Casos de varicela en Hungría: un conjunto de datos de referencia para el procesamiento de señales espaciotemporales con redes neuronales gráficas. UCI Marchine Learning Repository, 521, 2. 2021-02-17, De Hungary_Chickenpox Base de datos.

Varicela
La varicela es una infección causada por el virus de la varicela zoster. La varicela es muy contagiosa para personas que no tuvieron la enfermedad antes o no se han vacunado y puede trasmitirse por contacto directo o inhalación. Los Centers for Disease Control and Prevención, CDC recomienda la vacunación dentro del programa de rutina. (Varicela - Síntomas y causas - Mayo Clinic, 2019)
Mapeo de casos de varicela en 10 condados de Hungría

Etapa 1. Comprensión del proyecto
Problemática
El panorama de enfermedades infecciosas en Hungría desde tiempos pasados ha sufrido de muchos cambios, por ejemplo, cuando en dicho país inicio con la vacunación de distintas enfermedades como el tétanos, la poliomielitis, sarampión, hepatitis, tos ferina, entre otras. Registraban pocos casos y muertes a causa de estas, pero en los años 60's y 70's los casos comenzaron a incrementar y con ello las tasas de letalidad. Incluso en 1973 la rubeola causo una gran epidemia.
La varicela también ha sido causante de epidemias en este país por su rápida propagación, contagiando principalmente a menores.
Objetivos
Analizar los casos de varicela ocurridos desde el años 2005 al año 2014 en distintos condados de Hungría para pronosticar futuras alzas de dicha infección y así se puedan implementar estrategias de prevención y información con el fin de evitar contagios.
Etapa 2. Enfoque analítico
Se aplicaron las técnicas estadísticas siguientes:
Análisis espacio temporal (Modelo ARIMA)
Mapeo de los candados analizados.
Etapa 3. Requerimientos de datos
Para realizar este análisis se requiere de una colección de datos que contenga información de mínimo un par de años atrás, esto para poder llevar acabo un buen análisis para así tener mejores y mayores predicciones, estos tienen que ser de forma numérica es decir cuantitativa, conteos que pueden haber sido recolectados por semana, mes o año de manera ordenada.
Etapa 4. Recolección de datos
Los datos fueron obtenidos de UCI Marchine Learning Repository, se trata de un conjunto de datos espacio-temporales de casos semanales de varicela (enfermedad infantil) de Hungría. El conjunto de datos consta de una matriz de adyacencia a nivel de condado y una serie de tiempo de los casos notificados a nivel de condado entre 2005 y 2015.
Los datos disponibles son de tipo estructurados, ya que, dada su estructura ordenada, son más fáciles de gestionar, tanto digital como manualmente. También, dada su alto grado de organización, permiten una mayor predictibilidad que otros tipos.
Etapa 5. Comprensión de datos
Histogramas
Se realizo un análisis exploratorio por condado, a continuación, se visualizan las frecuencias de casos de cada condado por año.
Estos gráficos fueron hechos con R-Project versión 4.0.5 y la librería ggplot2.
Gráficos de líneas
Casos de varicela en condados de Hungría a lo largo del tiempo, 2005-2014.
Para su realización se tomaron el número de casos por semana iniciando el día 3 de enero del 2005 y finalizando el 29 de diciembre del 2014.
Elaborados con R-Project versión 4.0.5
Etapa 6. Preparación de datos
Una vez descargada la base en un archivo Excel (.xlsx), se realizó una revisión de datos. Nos quedamos con las columnas de nuestro interés, en este caso, conservamos todas. Es decir, no hubo cambios realizados en el archivo hasta el momento, la base cuenta con 522 registros y 21 variables.
Se utilizó un comando para eliminar datos faltantes, esto en caso de que existiera alguno. De manera que se encontraba completa la base solo quedo de más este paso.
Para la realización de gráficos de líneas, realizamos un ligero cambio en la base, se eliminó la primera variable denominada “Date”, esto con la finalidad de que no nos afectara el proceso que conllevan los comandos de R.
Ahora bien, para el análisis de espacio temporal, se eligieron los 10 condados con casos semanales más altos de varicela (enfermedad infantil) de Hungría.
Etapa 7. Análisis exploratorio



Etapa 8. Modelación



Código en R para análisis exploratorio
library(readr)
hungary <- read_csv(file.choose())
View(hungary)
base1<-hungary[,-1]
base1
attach(base1)
names(base1)
summary(base1)
library(tidyverse)
library(lubridate)
condado.ts=ts(base1,start = c(2005,1), frequency = 52)
condado.ts
names(condado.ts)
Gráfico de líneas
plot(condado.ts, main="Casos de varicela en los condados húngaros", xlab="Año", col.main="red", cex.main=2)
Gráfico de cajas
boxplot(condado.ts, main="Comparación de casos de varicela en los condados húngaros", xlab="Año", col.main="red", cex.main=2)
Aplicación de transformación




La transformación utilizada fue diferenciación ya que está logro hacer estacionarias las series, además de aplico una prueba de hipótesis con la prueba de Dickey Fuller.
H0: No existe estacionariedad
Ha: Existe estacionariedad
Con un P valué menor a 0.05 en los condados Csongrad, Hajdu, Pest, Szabolxs, Budapest, Bekes, Baranya, Borsod y Bacs existe suficiente evidencia para rechazar h0, es decir existe estacionariedad.
Identificación del posible modelo ARMA o ARIMA

El modelo que elegimos es el número 1 (4,0,3), ya que es el modelo con el aic más pequeño.

El modelo que elegimos es el número 2 (1,0,0), ya que es el modelo con el aic (5065.7) más pequeño.

El modelo que elegimos es el proporcionado por el software (5,0,1) con un aic igual a 4630.29.

El modelo que elegimos es el número 2 (1,1,0), ya que es el modelo con el aic (5759.25) más pequeño.

El modelo que elegimos es el número 1 (1,1,2), ya que es el modelo con el aic (4842.64) más pequeño.

El modelo que elegimos es el proporcionado por el software (2,0,3) con un aic igual a 5582.14.

El modelo que elegimos es el proporcionado por el software (2,0,2) con un aic igual a 4669.33.

El modelo que elegimos es el proporcionado por el software (5,1,2) con un aic igual a 4900.02.

El modelo que elegimos es el proporcionado por el software (3,1,0) con un aic igual a 4697.87.

El modelo que elegimos es el proporcionado por el software (1,0,2) con un aic igual a 5317.63.
Etapa 9. Evaluación/Validación del modelo
La validación del modelo se llevará a cabo mediante la metodología Box-Jenkins, es una de las metodologías de uso más amplio para el modelamiento aleatorio de series de tiempo.
Los pasos básicos de la metodología de Box-Jenkins son:
Análisis descriptivo o preliminar/ Verificar la estacionariedad de la serie.
Identificar un modelo tentativo.
Estimar el modelo.
Validación.
Usar el modelo para pronosticar.
Esta metodología consta de 8 supuestos:
La media de los residuos es igual a cero.
Varianza constante de los residuos.
Independencia de los residuos.
Normalidad de los residuos.
Observaciones aberrantes En este supuesto se requiere probar si existen observaciones aberrantes, para tal propósito se utiliza el grafico de residuos contra el tiempo.
Parsimonioso.
Admisible.
Estable.
Validación supuesto 1, 2 y 5

Con la ilustración 21, podemos observar que los residuos oscilan alrededor de 0 con lo cual podemos decir que se cumple con el primer supuesto, la media de los residuos es igual a cero, también se observa que la varianza de los residuos es constante en los 5 condados, además no hay observaciones aberrantes a excepción del condado Pest, lo cual cumple el supuesto 1, 2 y 5.

Con la ilustración 22, podemos observar que en algunos condados los residuos oscilan alrededor de 0 con lo cual podemos decir que se cumple con el primer supuesto solo en los condados Bacs y Bekes, la media de los residuos es igual a cero, también se observa que la varianza de los residuos es constante en los 5 condados, además hay observaciones aberrantes en los condados Budapest, Baranya y Borsod lo cual no cumple el supuesto 5.
Los condados que cumplen el supuesto 1, 2 y 5 son Bacs y Bekes
Validación supuesto 3 y 8


Con la ilustración 23 y 24, vemos con el gráfico que se encuentra a la izquierda, que es la función de auto correlación de los residuos, podemos observar que hay valores que sobresalen de las bandas de especificación, si tomamos que el 5% de mis observaciones podrían salir de las bandas. En la ilustración 15 se observa que ninguna sobre pasa el 5%, por lo tanto, el supuesto número 3 si se cumple hay independencia en los residuales.
Con el grafico de la izquierda y derecha, podemos concluir que debido a la ACF Y PACF nos muestran que hay valores fuera de los límites de especificación por lo tanto, el supuesto 8 de la metodología no se cumple, sin embrago, esto no quiere decir que no sean buenos modelos.
Validación supuesto 4

H0: La distribución es normal
Ha: La distribución no es normal
El diagrama Q-Q de los residuos de los modelos ARIMA (4,0,3), (1,0,0),(5,0,1),(1,1,0) y (1,1,2) se observa que los puntos parecen seguir la línea recta bastante de cerca, por lo cual podríamos decir que hay normalidad, aplicando una prueba de normalidad de Shapiro-Wilk a los residuos produce un estadístico de prueba de:
Condado Csongrad W = 0,93315, lo que corresponde a un valor de p de 1.645e-14, y no rechazará la normalidad basado en esta prueba (H0).
Condado Hajdu W = 0,90927, lo que corresponde a un valor de p de 2.2e-16, y no rechazará la normalidad basado en esta prueba (H0).
Condado Heves W = 0,9319, lo que corresponde a un valor de p de 1.167e-14, y no rechazará la normalidad basado en esta prueba (H0).
Condado Pest W = 0,91126, lo que corresponde a un valor de p de 2.2e-16, y no rechazará la normalidad basado en esta prueba (H0).
Condado Szabolcs W = 0,90661, lo que corresponde a un valor de p de 2.2e-16, y no rechazará la normalidad basado en esta prueba (H0).
Con estos resultados concluimos que el supuesto 4 se cumple.

Condado Budapest W = 0.8819, lo que corresponde a un valor de p de 2.2e-14, y no rechazará la normalidad basada en esta prueba (H0).
Condado Baranya W = 0.89333, lo que corresponde a un valor de p de 2.2e-16, y no rechazará la normalidad basada en esta prueba (H0).
Condado Bacs W = 0.87444, lo que corresponde a un valor de p de 2.2e-16, y no rechazará la normalidad basada en esta prueba (H0).
Condado Bekes W = 0.89943, lo que corresponde a un valor de p de 2.2e-16, y no rechazará la normalidad basada en esta prueba (H0).
Condado Borsod W = 0.87875, lo que corresponde a un valor de p de 2.2e-14, y no rechazará la normalidad basada en esta prueba (H0).
Validación supuesto 6 y 7
Intervalos de confianza
Condado Csongrad
2.5 % 97.5 %
ma1 -0.9343821 -0.49015010
ma2 -1.0468018 -0.46782824
Los intervalos de confianza no contienen el 0, por lo que el supuesto 6 de la metodología Box-Jenkins se cumple, el modelo es parsimonioso.
La suma de los parámetros es menor a 1, por lo que también se cumple el supuesto número 7, el modelo es admisible.
Condado Hajdu
2.5 % 97.5 %
ar1 -0.5459279 -0.3932187
Los intervalos de confianza no contienen el 0, por lo que el supuesto 6 de la metodología Box-Jenkins se cumple, el modelo es parsimonioso.
La suma de los parámetros es menor a 1, por lo que también se cumple el supuesto número 7, el modelo es admisible.
Condado Heves
2.5 % 97.5 %
ar1 -0.06547188 0.1049164
Los intervalos de confianza contienen el 0, por lo que el supuesto 6 de la metodología Box-Jenkins no se cumple, el modelo no es parsimonioso.
La suma de los parámetros es menor a 1, por lo que se cumple el supuesto número 7, el modelo es admisible.
Condado Pest
2.5 % 97.5 %
ar1 -0.7226707 -0.5901498
Los intervalos de confianza no contienen el 0, por lo que el supuesto 6 de la metodología Box-Jenkins se cumple, el modelo es parsimonioso.
La suma de los parámetros es menor a 1, por lo que se cumple el supuesto número 7, el modelo es admisible.
Condado Szabolcs
2.5 % 97.5 %
ma1 -1.6645083 -1.45183197
ma2 0.4522012 0.66414335
Los intervalos de confianza no contienen el 0, por lo que el supuesto 6 de la metodología Box-Jenkins se cumple, el modelo no es parsimonioso.
La suma de los parámetros es menor a 1, por lo que se cumple el supuesto número 7, el modelo es admisible.
Etapa 10. Implementación del modelo
Csongrad

Hajdu

Heves

Pest

Szabolcs

Etapa 11. Retroalimentación
Durante la búsqueda de modelos óptimos podríamos ocupar otra metodología, para así encontrar modelos que cumplan con todos los supuestos, y tenga mejor predicciones ya que hubo casos como el condado Heves y Szabolcs no se pronosticaron eficientemente.
Asi como implementar los modelos en los condados faltantes y buscar optimizar los modelos para los condados Bekes, Borsod y Bacs.
Codigo en R
library(readxl)
hungary_chi <- read_excel("hungary_chi.xlsx")
View(hungary_chi)
hun<-hungary_chi
View(hun)
attach(hun)
names(hun)
summary(hun)
mean(CSONGRAD, na.rm = TRUE)
sd(CSONGRAD, na.rm = TRUE)
mean(HAJDU, na.rm = TRUE)
sd(HAJDU, na.rm = TRUE)
mean(HEVES, na.rm = TRUE)
sd(HEVES, na.rm = TRUE)
mean(PEST, na.rm = TRUE)
sd(PEST, na.rm = TRUE)
mean(SZABOLCS, na.rm = TRUE)
sd(SZABOLCS, na.rm = TRUE)
hung<-hun[,-1]
hung
#install.packages("tidyverse")
library(tidyverse)
library(lubridate)
stcasos<-ts(hung$CSONGRAD, start = c(2005,1), frequency = 52)
stcasos
plot(stcasos, xlab="Años", main="Casos de Varicela CSONGRAD", col.main="red")
stcasos<-ts(hung$HAJDU, start = c(2005,1), frequency = 52)
stcasos
plot(stcasos, xlab="Años", main="Casos de Varicela HAJDU", col.main="red")
stcasos<-ts(hung$HEVES, start = c(2005,1), frequency = 52)
stcasos
plot(stcasos, xlab="Años", main="Casos de Varicela HEVES", col.main="red")
stcasos<-ts(hung$PEST, start = c(2005,1), frequency = 52)
stcasos
plot(stcasos, xlab="Años", main="Casos de Varicela PEST", col.main="red")
stcasos<-ts(hung$SZABOLCS, start = c(2005,1), frequency = 52)
stcasos
plot(stcasos, xlab="Años", main="Casos de Varicela SZABOLCS", col.main="red")
install.packages("quantmod")
install.packages("tseries")
install.packages("flmport")
install.packages("urca")
install.packages("xts")
install.packages("zoo")
install.packages("timeSeries")
install.packages("jsonlite")
install.packages("timeDate")
install.packages("TTR")
library(quantmod)
library(tseries)
library(flmport)
library(urca)
library(jsonlite)
library(xts)
library(zoo)
library(timeSeries)
library(timeDate)
library(TTR)
#####################CONDADO CSONGRAD#########################
stcasos<-ts(hung$CSONGRAD, start = c(2005,1), frequency = 52)
stcasos
##ESTABILIZAR
x<-log(stcasos)
plot(x, type="l", main="Serie de tiempo Casos de Varicera Aplicando Logaritmo", xlab="AÑOS", col="blue")
adf.test(x, k=0)
kpss<-kpss.test(x)
xx<-na.omit(returns(stcasos))
plot(xx, type="l", main="Serie de tiempo condado CSONGRAD Aplicando diferenciación", xlab="Años", ylab = "CASOS", col="red")
abline(h=0, col="blue", lty="dashed")
adf.test(xx, k=0)
##Función autocorrelación simple y parcial#####
acf(stcasos, ylim=c(-1,1), main="Casos de Varicela (Serie original)")
acf(x, ylim=c(-1,1),main="Casos de Varicela (LOG)")
acf(xx, ylim=c(-1,1),main="Casos de Varicela (DIF)")
pacf(stcasos, ylim=c(-1,1),main="Casos de Varicela (Serie original)")
pacf(x, ylim=c(-1,1),main="DEFUNCIONES (LOG)")
pacf(xx, ylim=c(-1,1),main="DEFUNCIONES (DIF)")
#install.packages("forecast")
library(forecast)
ms=auto.arima(stcasos); ms
pronos<-forecast(ms, h=104)
pronos
plot(pronos)
arima2<-arima(diff(stcasos),c(0,0,2), method="ML")
arima2
arima1<-arima(diff(stcasos),c(4,0,3), method="ML")
arima1
#install.packages("lmtest")
library("lmtest")
coeftest(arima1)
confint(arima1)
coeftest(arima2)
confint(arima2)
#supuesto 1, 2 y 5
plot.ts(arima1$residuals, main="", sub=" Residuos del modelo ARIMA(4,0,3)", xlab="Tiempo",ylab="Residuos")
abline(h=0, col="red", lty=3)
summary(arima1$residuals)
mean(arima1$residuals, na.rm = TRUE)
sd(arima1$residuals, na.rm = TRUE)
acf(arima1$residuals,main="", sub="Autocorrelaciones de los residuos del modelo ARIMA(4,0,3)", xlab="Tiempo",ylab="Autocorrelación")
pacf(arima1$residuals,main="", sub="Autocorrelaciones Parciales de los residuos del modelo ARIMA(4,0,3)", xlab="Tiempo",ylab="Autocorrelación")
qqnorm(arima1$residuals,main="", sub=" Gráfico Q para evaluar normalidad",pch=5,col = "red"); qqline(arima1$residuals)
shapiro.test(arima1$residuals)
predict(arima1,n.ahead = 104)
plot(forecast(auto.arima(stcasos)), main="", sub = "Valores pronosticados conado CSONGRAD")
#####################CONDADO HAJDU#########################
stcasos<-ts(hung$HAJDU, start = c(2005,1), frequency = 52)
stcasos
##ESTABILIZAR
x<-log(stcasos)
plot(x, type="l", main="Serie de tiempo Casos de Varicera Aplicando Logaritmo", xlab="AÑOS", col="blue")
adf.test(x, k=0)
kpss<-kpss.test(x)
xx<-na.omit(returns(stcasos))
plot(xx, type="l", main="Serie de tiempo condado HAJDU Aplicando diferenciación", xlab="Años", ylab = "CASOS", col="red")
abline(h=0, col="blue", lty="dashed")
adf.test(xx, k=0)
##Función autocorrelación simple y parcial#####
acf(stcasos, ylim=c(-1,1), main="Casos de Varicela (Serie original)")
acf(x, ylim=c(-1,1),main="Casos de Varicela (LOG)")
acf(xx, ylim=c(-1,1),main="Casos de Varicela (DIF)")
pacf(stcasos, ylim=c(-1,1),main="Casos de Varicela (Serie original)")
pacf(x, ylim=c(-1,1),main="DEFUNCIONES (LOG)")
pacf(xx, ylim=c(-1,1),main="DEFUNCIONES (DIF)")
#install.packages("forecast")
library(forecast)
ms=auto.arima(stcasos); ms
pronos<-forecast(ms, h=104)
pronos
plot(pronos)
arima1<-arima(diff(stcasos),c(0,1,1), method="ML")
arima2<-arima(diff(stcasos),c(1,0,0), method="ML")
arima2
#install.packages("lmtest")
library("lmtest")
coeftest(arima1)
confint(arima1)
coeftest(arima2)
confint(arima2)
#supuesto 1, 2 y 5
plot.ts(arima2$residuals, main="", sub=" Residuos del modelo ARIMA(1,0,0) condado HAJDU", xlab="Tiempo",ylab="Residuos")
abline(h=0, col="red", lty=3)
summary(arima2$residuals)
mean(arima2$residuals, na.rm = TRUE)
sd(arima2$residuals, na.rm = TRUE)
acf(arima2$residuals,main="", sub="Autocorrelaciones de los residuos del modelo ARMA(1,0,0)", xlab="Tiempo",ylab="Autocorrelación")
pacf(arima2$residuals,main="", sub="Autocorrelaciones Parciales de los residuos del modelo ARMA(1,0,0)", xlab="Tiempo",ylab="Autocorrelación")
qqnorm(arima2$residuals,main="", sub=" Gráfico Q para evaluar normalidad",pch=5,col = "red"); qqline(arima1$residuals)
shapiro.test(arima2$residuals)
predict(arima2,n.ahead = 104)
plot(forecast(auto.arima(stcasos)), main="", sub = "Valores pronosticados conado HAJDU")
#####################CONDADO HEVES#########################
stcasos<-ts(hung$HEVES, start = c(2005,1), frequency = 52)
stcasos
##ESTABILIZAR
x<-log(stcasos)
plot(x, type="l", main="Serie de tiempo Casos de Varicera Aplicando Logaritmo", xlab="AÑOS", col="blue")
adf.test(x, k=0)
kpss<-kpss.test(x)
xx<-na.omit(returns(stcasos))
plot(xx, type="l", main="Serie de tiempo condado HEVES Aplicando diferenciación", xlab="Años", ylab = "CASOS", col="red")
abline(h=0, col="blue", lty="dashed")
adf.test(xx, k=0)
##Función autocorrelación simple y parcial#####
acf(stcasos, ylim=c(-1,1), main="Casos de Varicela (Serie original)")
acf(x, ylim=c(-1,1),main="Casos de Varicela (LOG)")
acf(xx, ylim=c(-1,1),main="Casos de Varicela (DIF)")
pacf(stcasos, ylim=c(-1,1),main="Casos de Varicela (Serie original)")
pacf(x, ylim=c(-1,1),main="DEFUNCIONES (LOG)")
pacf(xx, ylim=c(-1,1),main="DEFUNCIONES (DIF)")
library(forecast)
ms=auto.arima(stcasos); ms
pronos<-forecast(ms, h=104)
pronos
plot(pronos)
arima1<-arima(diff(stcasos),c(5,0,1), method="ML")
arima1
#install.packages("lmtest")
library("lmtest")
coeftest(arima1)
confint(arima1)
#supuesto 1, 2 y 5
plot.ts(arima1$residuals, main="", sub=" Residuos del modelo ARIMA(5,0,1) condado HEVES", xlab="Tiempo",ylab="Residuos")
abline(h=0, col="red", lty=3)
summary(arima1$residuals)
mean(arima1$residuals, na.rm = TRUE)
sd(arima1$residuals, na.rm = TRUE)
acf(arima1$residuals,main="", sub="Autocorrelaciones de los residuos del modelo ARIMA(5,0,1)", xlab="Tiempo",ylab="Autocorrelación")
pacf(arima1$residuals,main="", sub="Autocorrelaciones Parciales de los residuos del modelo ARIMA(5,0,1)", xlab="Tiempo",ylab="Autocorrelación")
qqnorm(arima1$residuals,main="", sub=" Gráfico Q para evaluar normalidad",pch=5,col = "red"); qqline(arima1$residuals)
shapiro.test(arima1$residuals)
predict(arima1,n.ahead = 104)
plot(forecast(auto.arima(stcasos)), main="", sub = "Valores pronosticados conado HEVES")
#####################CONDADO PEST#########################
stcasos<-ts(hung$PEST, start = c(2005,1), frequency = 52)
stcasos
##ESTABILIZAR
x<-log(stcasos)
plot(x, type="l", main="Serie de tiempo Casos de Varicera Aplicando Logaritmo", xlab="AÑOS", col="blue")
adf.test(x, k=0)
kpss<-kpss.test(x)
xx<-na.omit(returns(stcasos))
plot(xx, type="l", main="Serie de tiempo condado PEST Aplicando diferenciación", xlab="Años", ylab = "CASOS", col="red")
abline(h=0, col="blue", lty="dashed")
adf.test(xx, k=0)
##Función autocorrelación simple y parcial#####
acf(stcasos, ylim=c(-1,1), main="Casos de Varicela (Serie original)")
acf(x, ylim=c(-1,1),main="Casos de Varicela (LOG)")
acf(xx, ylim=c(-1,1),main="Casos de Varicela (DIF)")
pacf(stcasos, ylim=c(-1,1),main="Casos de Varicela (Serie original)")
pacf(x, ylim=c(-1,1),main="DEFUNCIONES (LOG)")
pacf(xx, ylim=c(-1,1),main="DEFUNCIONES (DIF)")
library(forecast)
ms=auto.arima(stcasos); ms
pronos<-forecast(ms, h=104)
pronos
plot(pronos)
arima1<-arima(diff(stcasos),c(4,0,1), method="ML")
arima1
arima2<-arima(diff(stcasos),c(1,1,0), method="ML")
arima2
#install.packages("lmtest")
library("lmtest")
coeftest(arima2)
confint(arima2)
#supuesto 1, 2 y 5
plot.ts(arima2$residuals, main="", sub=" Residuos del modelo ARIMA(1,1,0) condado PEST", xlab="Tiempo",ylab="Residuos")
abline(h=0, col="red", lty=3)
summary(arima2$residuals)
mean(arima2$residuals, na.rm = TRUE)
sd(arima2$residuals, na.rm = TRUE)
acf(arima2$residuals,main="", sub="Autocorrelaciones de los residuos del modelo ARIMA(1,1,0)", xlab="Tiempo",ylab="Autocorrelación")
pacf(arima2$residuals,main="", sub="Autocorrelaciones Parciales de los residuos del modelo ARIMA(1,1,0)", xlab="Tiempo",ylab="Autocorrelación")
qqnorm(arima2$residuals,main="", sub=" Gráfico Q para evaluar normalidad",pch=5,col = "red"); qqline(arima1$residuals)
shapiro.test(arima2$residuals)
predict(arima2,n.ahead = 104)
plot(forecast(auto.arima(stcasos)), main="", sub = "Valores pronosticados conado HEVES")
#####################CONDADO SZABOLCS#########################
stcasos<-ts(hung$SZABOLCS, start = c(2005,1), frequency = 52)
stcasos
##ESTABILIZAR
x<-log(stcasos)
plot(x, type="l", main="Serie de tiempo Casos de Varicera Aplicando Logaritmo", xlab="AÑOS", col="blue")
adf.test(x, k=0)
kpss<-kpss.test(x)
xx<-na.omit(returns(stcasos))
plot(xx, type="l", main="Serie de tiempo condado SZABOLCS Aplicando diferenciación", xlab="Años", ylab = "CASOS", col="red")
abline(h=0, col="blue", lty="dashed")
adf.test(xx, k=0)
##Función autocorrelación simple y parcial#####
acf(stcasos, ylim=c(-1,1), main="Casos de Varicela (Serie original)")
acf(x, ylim=c(-1,1),main="Casos de Varicela (LOG)")
acf(xx, ylim=c(-1,1),main="Casos de Varicela (DIF)")
pacf(stcasos, ylim=c(-1,1),main="Casos de Varicela (Serie original)")
pacf(x, ylim=c(-1,1),main="DEFUNCIONES (LOG)")
pacf(xx, ylim=c(-1,1),main="DEFUNCIONES (DIF)")
library(forecast)
ms=auto.arima(stcasos); ms
pronos<-forecast(ms, h=104)
pronos
plot(pronos)
arima1<-arima(diff(stcasos),c(1,1,2), method="ML")
arima1
arima2<-arima(diff(stcasos),c(1,0,1), method="ML")
arima2
#install.packages("lmtest")
library("lmtest")
coeftest(arima1)
confint(arima1)
#supuesto 1, 2 y 5
plot.ts(arima1$residuals, main="", sub=" Residuos del modelo ARIMA(1,1,2) condado SZABOLCS", xlab="Tiempo",ylab="Residuos")
abline(h=0, col="red", lty=3)
summary(arima1$residuals)
mean(arima1$residuals, na.rm = TRUE)
sd(arima1$residuals, na.rm = TRUE)
acf(arima1$residuals,main="", sub="Autocorrelaciones de los residuos del modelo ARIMA(1,1,2)", xlab="Tiempo",ylab="Autocorrelación")
pacf(arima1$residuals,main="", sub="Autocorrelaciones Parciales de los residuos del modelo ARIMA(1,1,2)", xlab="Tiempo",ylab="Autocorrelación")
qqnorm(arima1$residuals,main="", sub=" Gráfico Q para evaluar normalidad",pch=5,col = "red"); qqline(arima1$residuals)
shapiro.test(arima1$residuals)
predict(arima1,n.ahead = 104)
plot(forecast(auto.arima(stcasos)), main="", sub = "Valores pronosticados condado SZABOLCS")
Commentaires