ANALISIS DE SERIES DE TIEMPO

Análisis básico de series de tiempo

Importar datos

Para este trabajo usare datos de google trends, los datos correpsonden a las busquedas de “Halloween” desde 2004, las busquedas se centran en Estados Unidos:

library(readr)
hal<- read_csv("Halloween2.csv")
## Rows: 214 Columns: 1
## -- Column specification --------------------------------------------------------
## Delimiter: ","
## dbl (1): Halloween
## 
## i Use `spec()` to retrieve the full column specification for this data.
## i Specify the column types or set `show_col_types = FALSE` to quiet this message.
hal
## # A tibble: 214 x 1
##    Halloween
##        <dbl>
##  1         1
##  2         1
##  3         1
##  4         1
##  5         1
##  6         1
##  7         2
##  8         5
##  9        22
## 10        94
## # ... with 204 more rows

Para tratar este vector numerico como una serie de tiempo, utilizaremos el comando ts (time-series objects) frecuency= 12 meses es igual a 1 año. start = 2004, año de inicio.

hal.ts<- ts(hal, start=c(2004,1), frequency = 12)
hal.ts
##      Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
## 2004   1   1   1   1   1   1   2   5  22  94   6   1
## 2005   1   1   1   1   1   2   2   6  22  95   7   1
## 2006   1   1   1   1   1   1   2   6  27 100   8   1
## 2007   1   1   1   2   1   2   3   9  30  96   8   2
## 2008   1   1   1   1   1   2   3   7  29  93   8   2
## 2009   2   2   1   2   2   2   3   9  27  94   9   2
## 2010   2   1   1   1   1   2   3   6  23  81   8   3
## 2011   3   2   1   1   1   2   3   7  26  93  11   4
## 2012   3   1   1   1   1   2   3   7  25  83   9   2
## 2013   2   1   1   1   1   2   3   6  24  86  11   2
## 2014   2   1   1   2   2   2   3   6  24  83  11   2
## 2015   2   2   1   1   2   2   3   8  25  96  12   2
## 2016   2   2   2   2   2   2   3   7  24  87  10   2
## 2017   2   2   2   2   2   2   4   8  24  87   9   2
## 2018   2   2   2   2   2   4   4   9  29 100  14   3
## 2019   3   2   2   2   2   3   4   9  26  80  11   2
## 2020   2   2   2   2   3   2   4   9  26  83   9   2
## 2021   2   2   2   2   2   3   6  12  33  73

La siguiente grafica representa la periocidad de las busquedas.

plot(hal.ts, ylab="Busquedas")

La siguiente grafica representa el total de las busquedas por mes en todos los años transcurridos.

boxplot(hal.ts ~ cycle(hal.ts))

Ciclos del comportamiento de las busquedas

cycle(hal.ts)
##      Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
## 2004   1   2   3   4   5   6   7   8   9  10  11  12
## 2005   1   2   3   4   5   6   7   8   9  10  11  12
## 2006   1   2   3   4   5   6   7   8   9  10  11  12
## 2007   1   2   3   4   5   6   7   8   9  10  11  12
## 2008   1   2   3   4   5   6   7   8   9  10  11  12
## 2009   1   2   3   4   5   6   7   8   9  10  11  12
## 2010   1   2   3   4   5   6   7   8   9  10  11  12
## 2011   1   2   3   4   5   6   7   8   9  10  11  12
## 2012   1   2   3   4   5   6   7   8   9  10  11  12
## 2013   1   2   3   4   5   6   7   8   9  10  11  12
## 2014   1   2   3   4   5   6   7   8   9  10  11  12
## 2015   1   2   3   4   5   6   7   8   9  10  11  12
## 2016   1   2   3   4   5   6   7   8   9  10  11  12
## 2017   1   2   3   4   5   6   7   8   9  10  11  12
## 2018   1   2   3   4   5   6   7   8   9  10  11  12
## 2019   1   2   3   4   5   6   7   8   9  10  11  12
## 2020   1   2   3   4   5   6   7   8   9  10  11  12
## 2021   1   2   3   4   5   6   7   8   9  10

DESCOMPOSICION DE UNA SERIE DE TIEMPO

Descomposicion de la serie de tiempo:

hal.ts.desc <- decompose(hal.ts)
plot(hal.ts.desc, xlab = "Año")

Podemos observar que la tendencia parece estabilizarse por ciertos periodos de tiempo para despues aumentar o decrecer exponencialmente, y volver a estabilizarse.

Transformaciones basicas de una serie de tiempo

plot(log(hal.ts))

Eliminamos la tendencia:

x <- log(hal.ts)
dif1.x <- diff(x)
plot(dif1.x)

Eliminamos la estacionalidad:

dif12.dif1.x <- diff(dif1.x, lag=12)
plot(dif12.dif1.x)

Funciones de autocovarianza y autocorrelaciones

y <- dif12.dif1.x 
acf(y)

Conclusion

De acuerdo con el análisis de los datos, y los resultados que este arrojo, así como las gráficas, hay un aumento exponencial bastante notable de las búsquedas de “Halloween” en el mes de octubre, junto con otros relativamente significantes en los meses de septiembre y noviembre. Esto nos indica la existencia de un ciclo, cuya importancia radica en las fechas cercanas al día de Halloween, pues anualmente es cuando se presenta el interés de las personas en la fecha. El resto de los meses del año se observa un interés mínimo, de si acaso una búsqueda de “Halloween” por mes.