Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Librerías ---------------------------------------------------------------
- library(tidyverse)
- library(haven)
- library(survey)
- library(magrittr, include.only = "%<>%")
- library(scales)
- library(ggpubr)
- # Cargar base de datos ----------------------------------------------------
- # Se lee la base de datos
- casen2022 <- read_spss("datos/2022/Base de datos Casen 2022 SPSS.sav")
- # Filtrar y procesar ------------------------------------------------------
- # Se filtra los adultos mayores
- casen2022 %<>%
- filter(edad >= 65)
- # Se aplica el diseño muestral
- svycasen2022 <- svydesign(ids=~1, weights=~expr, data=casen2022)
- # Se calcula los deciles de ingreso monetario
- deciles <- svyquantile(~ymonecor, svycasen2022, seq(0,1,len=11), na.rm=TRUE)
- # Se crea la variable deciles de ingreso monetario:
- svycasen2022$variables %<>%
- mutate(ymonecor_deciles = cut(ymonecor,
- deciles$ymonecor[,"quantile"],
- include.lowest=TRUE,
- labels=paste("Decil", as.roman(1:10))),
- sexo=as_factor(sexo))
- # Tabla 1: Ingreso monetario corregido según decil de ingreso y sexo
- tab1 <- svyby(~ymonecor, ~ymonecor_deciles+sexo, svycasen2022, svymean)
- # Tabla 1 con sexo en las columnas y deciles en las filas
- xtabs(ymonecor~ymonecor_deciles+sexo, data=tab1) %>%
- format(digits=2, big.mark=".", decimal.mark=",") -> tab1.1
- # Tabla 1 para el gráfico
- tab1.1_g <- ggtexttable(tab1.1)
- # Se genera gráfico de columnas
- grafico1 <- svyby(~ymonecor, ~ymonecor_deciles+sexo, svycasen2022, svymean) %>%
- ggplot() +
- aes(x=ymonecor_deciles, y=ymonecor, fill=sexo) +
- geom_col(position="dodge") +
- scale_y_continuous(labels=label_number(scale=1e-3, prefix="$", suffix="m")) +
- labs(title="Promedio ingreso monetario corregido promedio en mayores de 65 años",
- subtitle="Según decil de ingreso monetario y Sexo",
- y="Ingreso monetario corregido\n(en miles de pesos)",
- x="Decil de ingreso monetario",
- caption="Autor: Andrés Necochea\nFuente:Elaboración propia en base a datos de CASEN 2022")
- # Se agrega la tabla al gráfico 1
- grafico1 +
- annotation_custom(ggplotGrob(tab1.1_g), ymin=500000, ymax=1500000, xmin=1, xmax=3)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement