Ejemplo de práctica arcenso

arcenso

Documentación en https://soyandrea.github.io/arcenso/

Instalación

install.packages("remotes")
remotes::install_github("SoyAndrea/arcenso")

Activación de arcenso y otros paquetes

library(arcenso)
library(tidyverse)
library(plotly)
library(gt)

Principales funciones

  • get_census(): get a list with the tables currently available in the package

  • check_repository(): reports the tables currently available in the package

  • arcenso(): shinyapp to query the available tables in the package

Chequeo info disponible 1970

get_census(year = 1970, topic = "ESTRUCTURA DE POBLACION", geolvl = "Total del país")
$c70_total_del_pais_poblacion_c1
# A tibble: 54 × 3
   grupo_de_edad sexo    poblacion
   <chr>         <chr>   <chr>    
 1 0-4           Total   2355300  
 2 0-4           Varones 1196950  
 3 0-4           Mujeres 1158350  
 4 5-9           Total   2297000  
 5 5-9           Varones 1163050  
 6 5-9           Mujeres 1133950  
 7 10-14         Total   2201150  
 8 10-14         Varones 1114300  
 9 10-14         Mujeres 1086850  
10 15-19         Total   2098700  
# ℹ 44 more rows

Estructura de población por grupos quinquenales de edad según sexo

Descargo la tabla con la función get_census()

estructura_1970 <- get_census(year = 1970, topic = "ESTRUCTURA DE POBLACION", geolvl = "Total del país")

str(estructura_1970)
List of 1
 $ c70_total_del_pais_poblacion_c1: tibble [54 × 3] (S3: tbl_df/tbl/data.frame)
  ..$ grupo_de_edad: chr [1:54] "0-4" "0-4" "0-4" "5-9" ...
  ..$ sexo         : chr [1:54] "Total" "Varones" "Mujeres" "Total" ...
  ..$ poblacion    : chr [1:54] "2355300" "1196950" "1158350" "2297000" ...
estructura_1970 <- estructura_1970[[1]]

Calculamos el porcentaje de población por grupos quinquenales de edad según sexo

estructura_1970 <- estructura_1970[estructura_1970$sexo != "Total", ]

estructura_1970$grupo_de_edad = ifelse(estructura_1970$grupo_de_edad %in% "0-4", "00-04", estructura_1970$grupo_de_edad)
estructura_1970$grupo_de_edad = ifelse(estructura_1970$grupo_de_edad %in% "5-9", "05-09", estructura_1970$grupo_de_edad)


estructura_1970$poblacion = as.numeric(estructura_1970$poblacion)

estructura_1970$poblacion_rel = ifelse(estructura_1970$sexo == "Varones",  - estructura_1970$poblacion / sum(estructura_1970$poblacion[estructura_1970$sexo == "Varones"]), estructura_1970$poblacion / sum(estructura_1970$poblacion[estructura_1970$sexo == "Mujeres"]))

Grafico pirámide de población 1970

pi <-
  estructura_1970 %>%
  ggplot(aes(x = poblacion_rel, y = grupo_de_edad, fill = sexo,
             text = paste("porcentaje:", abs(poblacion_rel), "%")
             )) +
  geom_col() +
  scale_fill_manual(values = c("#003049","#f77f00")) +
  scale_x_continuous(breaks = seq(-0.1, 0.1, by = 0.05),
                    labels = paste0(c(seq(-10, 0, by = 5)*-1, seq(5, 10, by = 5)), "%")) +
  labs(
    title = "Estructura de población por sexo y grupo de edad. Total del país. Año 1970",
    x = "porcentaje",
    y = "grupo de edad",
    caption = "Fuente: INDEC, Censo Nacional de Población, Familias y Viviendas 1970."
  ) +
  theme_bw() 

ggplotly(pi, tooltip = c("text", "sexo", "edad")) %>% layout(legend = list(orientation = 'h'))
10%5%0%5%10%00-0405-0910-1415-1920-2425-2930-3435-3940-4445-4950-5455-5960-6465-6970-7475-7980-8485 y más
sexoMujeresVaronesEstructura de población por sexo y grupo de edad. Total del país. Año 1970porcentajegrupo de edad