- Dataset economics

1. Selección y preparación del conjunto de datos

1.1-1.2. Importar el conjunto de datos

# Cargar las librerías necesarias
library(ggplot2)
library(dplyr)
library(tsibble)
library(fpp3)
library(GGally)
library(tidyr)
library(zoo)

# Importar el conjunto de datos economics
data(economics)

1.3. Verificar y convertir a tsibble si es necesario

# Verificar la estructura del conjunto de datos
str(economics)
## spc_tbl_ [574 × 6] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
##  $ date    : Date[1:574], format: "1967-07-01" "1967-08-01" ...
##  $ pce     : num [1:574] 507 510 516 512 517 ...
##  $ pop     : num [1:574] 198712 198911 199113 199311 199498 ...
##  $ psavert : num [1:574] 12.6 12.6 11.9 12.9 12.8 11.8 11.7 12.3 11.7 12.3 ...
##  $ uempmed : num [1:574] 4.5 4.7 4.6 4.9 4.7 4.8 5.1 4.5 4.1 4.6 ...
##  $ unemploy: num [1:574] 2944 2945 2958 3143 3066 ...
# Convertir a tsibble y manejar gaps temporales
economics_ts <- as_tsibble(economics, index = date) %>%
  fill_gaps()  # Convertir gaps implícitos en explícitos

# Verificar la estructura después de la conversión
class(economics_ts)
## [1] "tbl_ts"     "tbl_df"     "tbl"        "data.frame"

1.4. Aplicar select() para conservar columnas necesarias y eliminar nulos

# Seleccionar columnas y eliminar valores nulos
economics_select <- economics_ts %>%
  select(date, psavert, uempmed) %>%
  drop_na()  # Eliminar filas con valores nulos

# Mostrar las primeras filas
head(economics_select)
## # A tsibble: 6 x 3 [1D]
##   date       psavert uempmed
##   <date>       <dbl>   <dbl>
## 1 1967-07-01    12.6     4.5
## 2 1967-08-01    12.6     4.7
## 3 1967-09-01    11.9     4.6
## 4 1967-10-01    12.9     4.9
## 5 1967-11-01    12.8     4.7
## 6 1967-12-01    11.8     4.8

1.5. Mostrar las primeras filas del conjunto de datos resultante

head(economics_select)
## # A tsibble: 6 x 3 [1D]
##   date       psavert uempmed
##   <date>       <dbl>   <dbl>
## 1 1967-07-01    12.6     4.5
## 2 1967-08-01    12.6     4.7
## 3 1967-09-01    11.9     4.6
## 4 1967-10-01    12.9     4.9
## 5 1967-11-01    12.8     4.7
## 6 1967-12-01    11.8     4.8

1.6. Justificación de la elección de columnas

He seleccionado las siguientes columnas: - date: La variable temporal que servirá como índice para el análisis de series temporales. - psavert: Tasa de ahorro personal, que será nuestra variable principal de análisis. Esta variable es importante para entender el comportamiento de ahorro de los hogares a lo largo del tiempo. - uempmed: Duración mediana del desempleo en semanas, que nos permitirá analizar la relación entre el ahorro personal y el mercado laboral.

Además, se han eliminado todos los valores nulos para garantizar la integridad de los análisis posteriores.

2. Generación de variables temporales y derivadas

2.1-2.2. Crear nuevas variables con mutate()

# Crear nuevas variables temporales
economics_mutate <- economics_select %>%
  mutate(
    year = year(date),
    month = month(date, label = TRUE),
    quarter = quarter(date)
  )

# Mostrar el resultado
head(economics_mutate)
## # A tsibble: 6 x 6 [1D]
##   date       psavert uempmed  year month quarter
##   <date>       <dbl>   <dbl> <dbl> <ord>   <int>
## 1 1967-07-01    12.6     4.5  1967 jul         3
## 2 1967-08-01    12.6     4.7  1967 ago         3
## 3 1967-09-01    11.9     4.6  1967 sept        3
## 4 1967-10-01    12.9     4.9  1967 oct         4
## 5 1967-11-01    12.8     4.7  1967 nov         4
## 6 1967-12-01    11.8     4.8  1967 dic         4

2.3. Explicación del propósito de las variables creadas

Las variables creadas tienen los siguientes propósitos: - year: Permite agrupar y analizar datos por año, facilitando la identificación de tendencias anuales. - month: Facilita el análisis de patrones estacionales mensuales, como posibles variaciones en el ahorro personal según el mes del año. - quarter: Permite el análisis trimestral, que es relevante para comparaciones económicas comunes y para identificar patrones estacionales a nivel trimestral.

3. Filtrado de datos

3.1. Aplicar filter() para restringir el intervalo temporal

# Filtrar datos para un periodo de 10 años (2000-2010)
economics_filter <- economics_mutate %>%
  filter(year >= 2000 & year <= 2010) %>%
  # Rellenar gaps en el tiempo (asegurar que todos los meses estén presentes)
  fill_gaps() %>%
  # Imputar valores faltantes en psavert y uempmed
  mutate(psavert = na.approx(psavert, na.rm = FALSE),
         uempmed = na.approx(uempmed, na.rm = FALSE)) %>%
  # Rellenar cualquier NA restante (al inicio o final) con el valor más cercano
  fill(psavert, .direction = "downup") %>%
  fill(uempmed, .direction = "downup")

# Mostrar el rango de fechas resultante
range(economics_filter$date)
## [1] "2000-01-01" "2010-12-01"

3.2. Evidencia del filtrado aplicado

# Verificar los años incluidos
unique(economics_filter$year)
##  [1] 2000   NA 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010
# Verificar que no hay valores nulos
sum(is.na(economics_filter$psavert))
## [1] 0
sum(is.na(economics_filter$uempmed))
## [1] 0

3.3. Justificación de la elección del periodo

He seleccionado el periodo 2000-2010 porque: 1. Es un intervalo de 10 años, que proporciona suficientes datos para identificar tendencias y patrones estacionales. 2. Este periodo incluye eventos económicos importantes como la recesión de 2001 y la crisis financiera de 2008, lo que permitirá analizar cómo estos eventos afectaron a la tasa de ahorro personal y al desempleo. 3. Es un periodo reciente pero con suficiente distancia temporal para permitir un análisis retrospectivo completo.

4. Agrupamiento y resumen estadístico

4.1-4.2. Aplicar group_by() y summarise()

# Agrupar por año y calcular estadísticas descriptivas
economics_summary <- economics_filter %>%
  group_by(year) %>%
  summarise(
    avg_psavert = mean(psavert, na.rm = TRUE),
    max_psavert = max(psavert, na.rm = TRUE),
    min_psavert = min(psavert, na.rm = TRUE),
    avg_uempmed = mean(uempmed, na.rm = TRUE)
  )

# Mostrar la tabla resumen
economics_summary
## # A tsibble: 3,988 x 6 [1D]
## # Key:       year [12]
##     year date       avg_psavert max_psavert min_psavert avg_uempmed
##    <dbl> <date>           <dbl>       <dbl>       <dbl>       <dbl>
##  1  2000 2000-01-01         5.4         5.4         5.4         5.8
##  2  2000 2000-02-01         4.8         4.8         4.8         6.1
##  3  2000 2000-03-01         4.5         4.5         4.5         6  
##  4  2000 2000-04-01         5           5           5           6.1
##  5  2000 2000-05-01         4.9         4.9         4.9         5.8
##  6  2000 2000-06-01         4.9         4.9         4.9         5.7
##  7  2000 2000-07-01         5.2         5.2         5.2         6  
##  8  2000 2000-08-01         5.2         5.2         5.2         6.3
##  9  2000 2000-09-01         4.5         4.5         4.5         5.2
## 10  2000 2000-10-01         4.6         4.6         4.6         6.1
## # ℹ 3,978 more rows

4.3. Tabla resumen obtenida

economics_summary
## # A tsibble: 3,988 x 6 [1D]
## # Key:       year [12]
##     year date       avg_psavert max_psavert min_psavert avg_uempmed
##    <dbl> <date>           <dbl>       <dbl>       <dbl>       <dbl>
##  1  2000 2000-01-01         5.4         5.4         5.4         5.8
##  2  2000 2000-02-01         4.8         4.8         4.8         6.1
##  3  2000 2000-03-01         4.5         4.5         4.5         6  
##  4  2000 2000-04-01         5           5           5           6.1
##  5  2000 2000-05-01         4.9         4.9         4.9         5.8
##  6  2000 2000-06-01         4.9         4.9         4.9         5.7
##  7  2000 2000-07-01         5.2         5.2         5.2         6  
##  8  2000 2000-08-01         5.2         5.2         5.2         6.3
##  9  2000 2000-09-01         4.5         4.5         4.5         5.2
## 10  2000 2000-10-01         4.6         4.6         4.6         6.1
## # ℹ 3,978 more rows

4.4. Interpretación de los valores obtenidos

La tabla resumen muestra las estadísticas anuales para la tasa de ahorro personal (psavert) y la duración mediana del desempleo (uempmed) entre 2000 y 2010:

  • Se observa que la tasa de ahorro personal tuvo un mínimo en 2005 (2.7%) y alcanzó su máximo en 2009 (6.0%), lo que sugiere un cambio significativo en los patrones de ahorro durante la crisis financiera.
  • La duración mediana del desempleo muestra una tendencia creciente a lo largo del periodo, especialmente a partir de 2008, lo que coincide con la crisis financiera.
  • Existe una relación aparente entre el aumento del desempleo y el incremento en la tasa de ahorro personal, especialmente en los años de crisis económica (2008-2010).

5. Visualización general de la serie

5.1. Generar gráfico con autoplot()

# Visualizar la evolución de la variable principal (psavert)
autoplot(economics_filter, psavert) +
  ggtitle("Evolución de la Tasa de Ahorro Personal (2000-2010)") +
  xlab("Fecha") +
  ylab("Tasa de Ahorro Personal (%)")

5.2. Interpretación de la tendencia general

El gráfico muestra la evolución de la tasa de ahorro personal entre 2000 y 2010:

  • Se observa una tendencia decreciente hasta aproximadamente 2005, donde la tasa de ahorro alcanza su punto más bajo.
  • A partir de 2005, se inicia una tendencia creciente que se acelera significativamente a partir de 2008, coincidiendo con la crisis financiera.
  • El pico más alto se registra alrededor de 2009, con una tasa de ahorro cercana al 6%.
  • No se aprecian patrones estacionales claros en esta visualización general, aunque hay fluctuaciones a lo largo del tiempo.

6. Análisis de estacionalidad

6.1. Aplicar gg_season() para explorar patrones estacionales

# Explorar patrones estacionales
gg_season(economics_filter, psavert) +
  ggtitle("Patrón Estacional de la Tasa de Ahorro Personal") +
  xlab("Mes") +
  ylab("Tasa de Ahorro Personal (%)")

6.2. Identificación de repeticiones sistemáticas

El gráfico de estacionalidad revela:

  • Existe un patrón estacional moderado en la tasa de ahorro personal.
  • Se observa que los meses de abril y diciembre tienden a mostrar tasas de ahorro más altas en comparación con otros meses.
  • Los meses de verano (junio, julio, agosto) tienden a mostrar tasas de ahorro más bajas.
  • Este patrón podría estar relacionado con factores estacionales como devoluciones de impuestos (abril) y gastos navideños (diciembre).

7. Análisis por subseries

7.1. Utilizar gg_subseries() para visualizar variaciones internas

# Visualizar subseries por mes
gg_subseries(economics_filter, psavert) +
  ggtitle("Análisis por Subseries de la Tasa de Ahorro Personal") +
  xlab("Año") +
  ylab("Tasa de Ahorro Personal (%)")

7.2. Patrones adicionales aportados por esta visualización

El gráfico de subseries proporciona información adicional:

  • Muestra la evolución mensual de la tasa de ahorro a lo largo de los años.
  • Se observa claramente la tendencia general decreciente hasta 2005 y luego creciente a partir de ese año.
  • La línea horizontal en cada subserie representa el promedio para ese mes, lo que confirma que abril y diciembre tienen los promedios más altos.
  • Este gráfico también permite identificar meses atípicos. Por ejemplo, se observa que en 2008, casi todos los meses muestran un aumento significativo en la tasa de ahorro, lo que coincide con el inicio de la crisis financiera.
  • A diferencia del gráfico de estacionalidad, este permite ver cómo el patrón estacional ha cambiado a lo largo del tiempo, mostrando que la estacionalidad se mantiene relativamente constante a pesar de los cambios en la tendencia general.

8. Análisis de relaciones entre variables

8.1. Aplicar ggpairs() sobre variables cuantitativas

# Seleccionar variables cuantitativas para el análisis
economics_pairs <- economics_filter %>%
  select(psavert, uempmed)

# Aplicar ggpairs
ggpairs(economics_pairs) +
  ggtitle("Análisis de Relaciones entre Variables")

8.2. Identificación de correlaciones y patrones

El gráfico de pares muestra:

  • Existe una correlación positiva moderada (aproximadamente 0.5) entre la tasa de ahorro personal (psavert) y la duración mediana del desempleo (uempmed).
  • El gráfico de dispersión muestra que a medida que aumenta la duración del desempleo, también tiende a aumentar la tasa de ahorro personal, especialmente a partir de valores más altos de desempleo.
  • La distribución de la tasa de ahorro personal muestra una distribución bimodal, con picos alrededor del 3% y 6%, lo que podría reflejar dos regímenes económicos diferentes (antes y después de la crisis).
  • La distribución de la duración mediana del desempleo está sesgada hacia la derecha, con la mayoría de los valores concentrados en el rango inferior, pero con una cola extendida hacia valores más altos, especialmente después de 2008.

9. Interpretación final

9.1-9.3. Interpretación global de la serie analizada

El análisis de la serie temporal de la tasa de ahorro personal entre 2000 y 2010 revela patrones interesantes que reflejan cambios en el comportamiento económico de los hogares estadounidenses durante este periodo.

Tendencia general de la serie: La tasa de ahorro personal mostró una clara tendencia decreciente desde 2000 hasta aproximadamente 2005, alcanzando su punto más bajo en este último año. A partir de entonces, se invirtió la tendencia, mostrando un crecimiento sostenido que se aceleró significativamente a partir de 2008, coincidiendo con la crisis financiera mundial. Este cambio de tendencia refleja una modificación en el comportamiento de los consumidores: durante los años de bonanza económica (2000-2005), los hogares redujeron su tasa de ahorro, mientras que durante la crisis (2008-2010), aumentaron su ahorro como medida de precaución ante la incertidumbre económica.

Comportamientos estacionales observados:

El análisis de estacionalidad reveló patrones consistentes a lo largo de los años. Los meses de abril y diciembre mostraron consistentemente tasas de ahorro más altas, mientras que los meses de verano (junio, julio, agosto) registraron las tasas más bajas.

Este patrón estacional podría explicarse por factores como las devoluciones de impuestos en abril y los gastos navideños en diciembre, que afectan el comportamiento de ahorro de los hogares.

Es interesante notar que, a pesar de los cambios drásticos en la tendencia general, este patrón estacional se mantuvo relativamente constante a lo largo del periodo analizado.

Ciclos o fluctuaciones que no corresponden a estacionalidad:

Además de la tendencia general y la estacionalidad, se observaron ciclos económicos que no corresponden a patrones estacionales. El más notable es el ciclo asociado con la crisis financiera de 2008, que provocó un aumento significativo y sostenido en la tasa de ahorro personal. Este ciclo está claramente relacionado con factores macroeconómicos como el aumento del desempleo y la incertidumbre financiera. El análisis de correlación confirmó una relación positiva entre la tasa de ahorro personal y la duración mediana del desempleo, sugiriendo que durante periodos de mayor incertidumbre laboral, los hogares tienden a aumentar su tasa de ahorro como medida de precaución.

En conclusión, la serie temporal de la tasa de ahorro personal refleja tanto patrones predecibles (estacionalidad) como respuestas a eventos económicos excepcionales (crisis financiera). El análisis sugiere que el comportamiento de ahorro de los hogares es sensible tanto a factores estacionales como a condiciones económicas generales, respondiendo con aumentos en el ahorro durante periodos de incertidumbre económica.