1 Datos censales INE

Descripción del procedimiento para la gestión de las tablas xlsx provenientes del INE con los datos sobre la cantidad de personas por edades simples, sexo y departamento para los años censales 2002, 2012 y 2022.

1.1 Librerias de R necesarias

library("readxl")
library("ggplot2")
library("dplyr")
library("tidyverse")

1.2 Encabezados para el año 2002

1.2.1 Leer los encabezados de los datos censales para el año 2002

# Crear una lista para almacenar los datos
data_list <- list()

# ENCABEZADOS
data <- readxl::read_excel("D:/OneDrive/INE_Py/01.02.03 Poblacion por Departamento segun sexo y edades simples sin imputación. CNPV 2002-2012-2022_ORIGINAL.xlsx", sheet = "2002", range = "A3:T3", col_names = FALSE)
## New names:
## • `` -> `...1`
## • `` -> `...2`
## • `` -> `...3`
## • `` -> `...4`
## • `` -> `...5`
## • `` -> `...6`
## • `` -> `...7`
## • `` -> `...8`
## • `` -> `...9`
## • `` -> `...10`
## • `` -> `...11`
## • `` -> `...12`
## • `` -> `...13`
## • `` -> `...14`
## • `` -> `...15`
## • `` -> `...16`
## • `` -> `...17`
## • `` -> `...18`
## • `` -> `...19`
## • `` -> `...20`
data <- cbind(year = "year", data)
data <- cbind(sexo = "sexo", data)
data_list[[1]] <- data

1.3 Datos censales para hombres en 2002

1.3.1 Leer los datos censales para hombres en el año 2002

# 2002
# Hombres
data <- readxl::read_excel("D:/OneDrive/INE_Py/01.02.03 Poblacion por Departamento segun sexo y edades simples sin imputación. CNPV 2002-2012-2022_ORIGINAL.xlsx", sheet = "2002", range = "A123:T239", col_names = FALSE)
## New names:
## • `` -> `...1`
## • `` -> `...2`
## • `` -> `...3`
## • `` -> `...4`
## • `` -> `...5`
## • `` -> `...6`
## • `` -> `...7`
## • `` -> `...8`
## • `` -> `...9`
## • `` -> `...10`
## • `` -> `...11`
## • `` -> `...12`
## • `` -> `...13`
## • `` -> `...14`
## • `` -> `...15`
## • `` -> `...16`
## • `` -> `...17`
## • `` -> `...18`
## • `` -> `...19`
## • `` -> `...20`
data <- cbind(year = 2002, data)
data$year<-2002
data <- cbind(sexo = "sexo", data)
data$sexo="Hombres"
data_list[[2]] <- data

1.4 Datos censales para mujeres en 2002

1.4.1 Leer los datos censales para mujeres en el año 2002

data <- readxl::read_excel("D:/OneDrive/INE_Py/01.02.03 Poblacion por Departamento segun sexo y edades simples sin imputación. CNPV 2002-2012-2022_ORIGINAL.xlsx", sheet = "2002", range = "A241:T357", col_names = FALSE)
## New names:
## • `` -> `...1`
## • `` -> `...2`
## • `` -> `...3`
## • `` -> `...4`
## • `` -> `...5`
## • `` -> `...6`
## • `` -> `...7`
## • `` -> `...8`
## • `` -> `...9`
## • `` -> `...10`
## • `` -> `...11`
## • `` -> `...12`
## • `` -> `...13`
## • `` -> `...14`
## • `` -> `...15`
## • `` -> `...16`
## • `` -> `...17`
## • `` -> `...18`
## • `` -> `...19`
## • `` -> `...20`
data <- cbind(year = 2002, data)
data$year<-2002
data <- cbind(sexo = "sexo", data)
data$sexo="Mujeres"
data_list[[3]] <- data

1.5 Datos censales para hombres en 2012

1.5.1 Leer los datos censales para hombres en el año 2012

# 2012
# Hombres
data <- readxl::read_excel("D:/OneDrive/INE_Py/01.02.03 Poblacion por Departamento segun sexo y edades simples sin imputación. CNPV 2002-2012-2022_ORIGINAL.xlsx", sheet = "2012", range = "A126:T245", col_names = FALSE)
## New names:
## • `` -> `...1`
## • `` -> `...2`
## • `` -> `...3`
## • `` -> `...4`
## • `` -> `...5`
## • `` -> `...6`
## • `` -> `...7`
## • `` -> `...8`
## • `` -> `...9`
## • `` -> `...10`
## • `` -> `...11`
## • `` -> `...12`
## • `` -> `...13`
## • `` -> `...14`
## • `` -> `...15`
## • `` -> `...16`
## • `` -> `...17`
## • `` -> `...18`
## • `` -> `...19`
## • `` -> `...20`
data <- cbind(year = 2012, data)
data$year<-2012
data <- cbind(sexo = "sexo", data)
data$sexo="Hombres"
data_list[[4]] <- data

1.6 Datos censales para mujeres en 2012

1.6.1 Leer los datos censales para mujeres en el año 2012

data <- readxl::read_excel("D:/OneDrive/INE_Py/01.02.03 Poblacion por Departamento segun sexo y edades simples sin imputación. CNPV 2002-2012-2022_ORIGINAL.xlsx", sheet = "2012", range = "A247:T366", col_names = FALSE)
## New names:
## • `` -> `...1`
## • `` -> `...2`
## • `` -> `...3`
## • `` -> `...4`
## • `` -> `...5`
## • `` -> `...6`
## • `` -> `...7`
## • `` -> `...8`
## • `` -> `...9`
## • `` -> `...10`
## • `` -> `...11`
## • `` -> `...12`
## • `` -> `...13`
## • `` -> `...14`
## • `` -> `...15`
## • `` -> `...16`
## • `` -> `...17`
## • `` -> `...18`
## • `` -> `...19`
## • `` -> `...20`
data <- cbind(year = 2012, data)
data$year<-2012
data <- cbind(sexo = "sexo", data)
data$sexo="Mujeres"
data_list[[5]] <- data

1.7 Datos censales para hombres en 2022

1.7.1 Leer los datos censales para hombres en el año 2022

# 2022
# Hombres
data <- readxl::read_excel("D:/OneDrive/INE_Py/01.02.03 Poblacion por Departamento segun sexo y edades simples sin imputación. CNPV 2002-2012-2022_ORIGINAL.xlsx", sheet = "2022", range = "A127:T247", col_names = FALSE)
## New names:
## • `` -> `...1`
## • `` -> `...2`
## • `` -> `...3`
## • `` -> `...4`
## • `` -> `...5`
## • `` -> `...6`
## • `` -> `...7`
## • `` -> `...8`
## • `` -> `...9`
## • `` -> `...10`
## • `` -> `...11`
## • `` -> `...12`
## • `` -> `...13`
## • `` -> `...14`
## • `` -> `...15`
## • `` -> `...16`
## • `` -> `...17`
## • `` -> `...18`
## • `` -> `...19`
## • `` -> `...20`
data <- cbind(year = 2022, data)
data$year<-2022
data <- cbind(sexo = "sexo", data)
data$sexo="Hombres"
data_list[[6]] <- data

1.8 Datos censales para mujeres en 2022

1.8.1 Leer los datos censales para mujeres en el año 2022

data <- readxl::read_excel("D:/OneDrive/INE_Py/01.02.03 Poblacion por Departamento segun sexo y edades simples sin imputación. CNPV 2002-2012-2022_ORIGINAL.xlsx", sheet = "2022", range = "A249:T369", col_names = FALSE)
## New names:
## • `` -> `...1`
## • `` -> `...2`
## • `` -> `...3`
## • `` -> `...4`
## • `` -> `...5`
## • `` -> `...6`
## • `` -> `...7`
## • `` -> `...8`
## • `` -> `...9`
## • `` -> `...10`
## • `` -> `...11`
## • `` -> `...12`
## • `` -> `...13`
## • `` -> `...14`
## • `` -> `...15`
## • `` -> `...16`
## • `` -> `...17`
## • `` -> `...18`
## • `` -> `...19`
## • `` -> `...20`
data <- cbind(year = 2022, data)
data$year<-2022
data <- cbind(sexo = "sexo", data)
data$sexo="Mujeres"
data_list[[7]] <- data

1.9 Datos censales para “Sexo no reportado” en 2022

1.9.1 Leer los datos censales para “Sexo no reportado” en el año 2022

# Sexo no reportado
data <- readxl::read_excel("D:/OneDrive/INE_Py/01.02.03 Poblacion por Departamento segun sexo y edades simples sin imputación. CNPV 2002-2012-2022_ORIGINAL.xlsx", sheet = "2022", range = "A371:T491", col_names = FALSE)
## New names:
## • `` -> `...1`
## • `` -> `...2`
## • `` -> `...3`
## • `` -> `...4`
## • `` -> `...5`
## • `` -> `...6`
## • `` -> `...7`
## • `` -> `...8`
## • `` -> `...9`
## • `` -> `...10`
## • `` -> `...11`
## • `` -> `...12`
## • `` -> `...13`
## • `` -> `...14`
## • `` -> `...15`
## • `` -> `...16`
## • `` -> `...17`
## • `` -> `...18`
## • `` -> `...19`
## • `` -> `...20`
data <- cbind(year = 2022, data)
data$year<-2022
data <- cbind(sexo = "sexo", data)
data$sexo<-"NA"
data_list[[8]] <- data

1.10 Combinar todos los datos en un único dataframe

# Combinar todos los datos en un único dataframe
combined_data <- do.call(rbind, data_list)

1.11 Crear un nuevo archivo de texto con todos los datos

archivo_salida <- "D:/OneDrive/INE_Py/valores_completos.txt"
con <- file(archivo_salida, "w")
write.table(combined_data, con, sep = "\t", col.names = FALSE, row.names = FALSE)
close(con)

# Mensaje de confirmación
cat("Valores escritos en", archivo_salida, "\n")
## Valores escritos en D:/OneDrive/INE_Py/valores_completos.txt

1.12 Cargar las bibliotecas necesarias

library(ggplot2)
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library("tidyverse")
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ forcats   1.0.0     ✔ stringr   1.5.0
## ✔ lubridate 1.9.2     ✔ tibble    3.2.1
## ✔ purrr     1.0.2     ✔ tidyr     1.3.0
## ✔ readr     2.1.4
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors

1.13 Leer el archivo de datos

base <- read.delim("D:/OneDrive/INE_Py/valores_completos.txt", header=TRUE)

1.14 Renombrar las columnas para mayor claridad

new_colnames <- c("sexo","year","edad","TOTAL","dpto0", "dpto1", "dpto2", "dpto3", "dpto4", "dpto5", "dpto6", "dpto7", "dpto8", "dpto9", "dpto10", "dpto11", "dpto12", "dpto13", "dpto14", "dpto15", "dpto16", "dpto17")
colnames(base) <- new_colnames

1.15 Eliminar la columna “TOTAL”

base <- base %>%
  select(-TOTAL)

names(base)
##  [1] "sexo"   "year"   "edad"   "dpto0"  "dpto1"  "dpto2"  "dpto3"  "dpto4" 
##  [9] "dpto5"  "dpto6"  "dpto7"  "dpto8"  "dpto9"  "dpto10" "dpto11" "dpto12"
## [17] "dpto13" "dpto14" "dpto15" "dpto16" "dpto17"

1.16 Utilizar pivot_longer para reorganizar las columnas

base_long <- base %>%
  pivot_longer(
    cols = starts_with("dpto"),
    names_to = "departamento",
    values_to = "valor"
  )

# Visualizar la nueva estructura de la base
head(base_long)
sexo year edad departamento valor
Hombres 2002 0 dpto0 4587
Hombres 2002 0 dpto1 2250
Hombres 2002 0 dpto2 3941
Hombres 2002 0 dpto3 2457
Hombres 2002 0 dpto4 1825
Hombres 2002 0 dpto5 5256

1.17 Reemplazar los códigos de departamento con nombres

# Reemplazar los valores en el campo "departamento"
base_long <- base_long %>%
  mutate(departamento = recode(departamento, 
                               "dpto0" = "ASUNCION",
                               "dpto1" = "CONCEPCION",
                               "dpto2" = "SAN.PEDRO",
                               "dpto3" = "CORDILLERA",
                               "dpto4" = "GUAIRA",
                               "dpto5" = "CAAGUAZU",
                               "dpto6" = "CAAZAPA",
                               "dpto7" = "ITAPUA",
                               "dpto8" = "MISIONES",
                               "dpto9" = "PARAGUARI",
                               "dpto10" = "ALTO.PARANA",
                               "dpto11" = "CENTRAL",
                               "dpto12" = "ÑEEMBUCU",
                               "dpto13" = "AMAMBAY",
                               "dpto14" = "CANINDEYU",
                               "dpto15" = "PRESIDENTE.HAYES",
                               "dpto16" = "BOQUERON",
                               "dpto17" = "ALTO.PARAGUAY"
  ))

# Visualizar la base de datos con los valores reemplazados
head(base_long)
sexo year edad departamento valor
Hombres 2002 0 ASUNCION 4587
Hombres 2002 0 CONCEPCION 2250
Hombres 2002 0 SAN.PEDRO 3941
Hombres 2002 0 CORDILLERA 2457
Hombres 2002 0 GUAIRA 1825
Hombres 2002 0 CAAGUAZU 5256

1.18 Leer la base de datos y crear un nuevo campo “quinquenio” basado en la edad

base_long <- base_long %>%
  mutate(departamento = case_when(
    departamento == "ASUNCION" ~ "(00)Asunción",
    departamento == "CONCEPCION" ~ "(01)Concepción",
    departamento == "SAN.PEDRO" ~ "(02)San Pedro",
    departamento == "CORDILLERA" ~ "(03)Cordillera",
    departamento == "GUAIRA" ~ "(04)Guairá",
    departamento == "CAAGUAZU" ~ "(05)Caaguazú",
    departamento == "CAAZAPA" ~ "(06)Caazapá",
    departamento == "ITAPUA" ~ "(07)Itapúa",
    departamento == "MISIONES" ~ "(08)Misiones",
    departamento == "PARAGUARI" ~ "(09)Paraguarí",
    departamento == "ALTO.PARANA" ~ "(10)Alto Paraná",
    departamento == "CENTRAL" ~ "(11)Central",
    departamento == "ÑEEMBUCU" ~ "(12)Ñeembucú",
    departamento == "AMAMBAY" ~ "(13)Amambay",
    departamento == "CANINDEYU" ~ "(14)Canindeyú",
    departamento == "PRESIDENTE.HAYES" ~ "(15)Presidente Hayes",
    departamento == "BOQUERON" ~ "(16)Boquerón",
    departamento == "ALTO.PARAGUAY" ~ "(17)Alto Paraguay",
    TRUE ~ departamento  # Mantener cualquier otro valor sin cambios
  ))

1.19 Crear la gráfica de pirámide poblacional

# Leer la base de datos
# Crear la gráfica de pirámide poblacional con base_long
p <- ggplot(base_long, aes(x = edad, y = valor, fill = sexo)) +
  geom_bar(stat = "identity", position = "dodge") +
  facet_wrap(~year, scales = "free_x", ncol = 1) +
  labs(title = "Pirámide Poblacional por Sexo y Año",
       x = "Edad",
       y = "Población Total",
       fill = "Sexo") +
  theme_minimal() +
  theme(legend.position = "bottom")

# Mostrar la gráfica
print(p)

1.20 Definir los límites de los quinquenios

# Definir los límites de los quinquenios
quinquenioscod <- c(0, 4, 9, 14, 19, 24, 29, 34, 39, 44, 49, 54, 59, 64, 69, 74, 79, 84, Inf)
base_long$edad <- as.numeric(base_long$edad)
## Warning: NAs introducidos por coerción
summary(base_long$edad)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##    0.00   29.00   59.00   58.88   88.00  120.00     126

1.21 Crear un nuevo campo “nuevo_valor” basado en el sexo

# Crear el nuevo campo "nuevo_valor" basado en el sexo
base_long <- base_long %>%
  mutate(nuevo_valor = ifelse(sexo == "Hombres", valor, -1 * valor))

1.22 Crear un nuevo campo “quinquenio” basado en la edad

# Crear un nuevo campo "quinquenio" basado en la edad
base_long$codquinquenio<-floor(base_long$edad/5)
table(base_long$codquinquenio)
## 
##   0   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18  19 
## 630 630 630 630 630 630 630 630 630 630 630 630 630 630 630 630 630 630 630 630 
##  20  21  22  23  24 
## 630 630 432 522 126
base_long$codquinquenio<-ifelse(base_long$codquinquenio>17,17,base_long$codquinquenio)
table(base_long$codquinquenio)
## 
##    0    1    2    3    4    5    6    7    8    9   10   11   12   13   14   15 
##  630  630  630  630  630  630  630  630  630  630  630  630  630  630  630  630 
##   16   17 
##  630 4230
base_long$quinquenio <- factor(base_long$codquinquenio, labels = c("Menor de 5 años", "5 a 9 años", "10 a 14 años", "15 a 19 años", "20 a 24 años", "25 a 29 años", "30 a 34 años", "35 a 39 años", "40 a 44 años", "45 a 49 años", "50 a 54 años", "55 a 59 años", "60 a 64 años", "65 a 69 años", "70 a 74 años", "75 a 79 años", "80 a 84 años", "85 años y más"))
table(base_long$quinquenio)
## 
## Menor de 5 años      5 a 9 años    10 a 14 años    15 a 19 años    20 a 24 años 
##             630             630             630             630             630 
##    25 a 29 años    30 a 34 años    35 a 39 años    40 a 44 años    45 a 49 años 
##             630             630             630             630             630 
##    50 a 54 años    55 a 59 años    60 a 64 años    65 a 69 años    70 a 74 años 
##             630             630             630             630             630 
##    75 a 79 años    80 a 84 años   85 años y más 
##             630             630            4230
base_long$tipo<-"Dato censal"
# Generar la variable de llave
base_long$llave <- paste(base_long$edad, base_long$year, base_long$departamento,base_long$sexo, sep = "-")

1.23 Exportar la base de datos a un archivo Excel

library(writexl)

# Exportar la base de datos a un archivo Excel
write.csv2(base_long, "D:/OneDrive/INE_Py/base_long_datoscensales_INE.csv")
base<-read.csv2("D:/OneDrive/INE_Py/base_long_datoscensales_INE.csv")
names(base)
##  [1] "X"             "sexo"          "year"          "edad"         
##  [5] "departamento"  "valor"         "nuevo_valor"   "codquinquenio"
##  [9] "quinquenio"    "tipo"          "llave"

1.24 Resultados

# Cargar la librería ggplot2 si no está cargada
library(readr)
base<-read.csv2("D:/OneDrive/INE_Py/base_long_datoscensales_INE.csv")
table(base$sexo)
## 
## Hombres Mujeres 
##    6444    6444
library(ggplot2)

# Reordenar el factor "sexo" para que los hombres aparezcan primero
base$sexo <- factor(base$sexo,levels=c("Hombres","Mujeres"))
table(base$sexo)
## 
## Hombres Mujeres 
##    6444    6444
# Filtrar las filas con valores no NA
base <- base[!is.na(base$quinquenio), ]

# Crear la pirámide poblacional con barras de hombres al lado y barras reordenadas
p <- ggplot(base, aes(y = reorder(quinquenio, as.numeric(codquinquenio)), x = nuevo_valor, fill = sexo)) +
  geom_bar(stat = "identity", position = position_dodge(width = 0)) +
  labs(title = "Pirámide Poblacional por Sexo",
       x = "Valor",
       y = "Quinquenio") +
  scale_fill_manual(values = c("Hombres" = "blue", "Mujeres" = "pink")) +
  theme_minimal() +
  theme(legend.title = element_blank())+
facet_wrap(~ year, scales = "free_x")

# Mostrar la pirámide poblacional
print(p)
## Warning: Removed 2160 rows containing missing values (`geom_bar()`).

# Crear la pirámide poblacional con barras de hombres al lado y barras reordenadas
p <- ggplot(base, aes(y = reorder(quinquenio, as.numeric(codquinquenio)), x = nuevo_valor, fill = sexo)) +
  geom_bar(stat = "identity", position = position_dodge(width = 0)) +
  labs(title = "Pirámide Poblacional por Sexo",
       x = "Valor",
       y = "Quinquenio") +
  scale_fill_manual(values = c("Hombres" = "blue", "Mujeres" = "pink")) +
  theme_minimal() +
  theme(legend.title = element_blank())+
  facet_grid(~ year)

# Mostrar la pirámide poblacional
print(p)
## Warning: Removed 2160 rows containing missing values (`geom_bar()`).

2 GESTION DE VALORES PROYECTADOS 2000 AL 2025

2.1 Exportar la base de datos a un archivo Excel Leer el archivo Excel

library(readxl)
library(dplyr)

dataproy <- readxl::read_excel("D:/OneDrive/INE_Py/06.a. Paraguay. Población total, estimada y proyectada, según departamento, sexo y edad, 2000-2025.xlsx", col_names = TRUE)
#View(dataproy)
# Renombrar las columnas
colnames(dataproy) <- c("edad", paste0("year_", 2000:2025))

# Verificar los nuevos nombres de las columnas
print(colnames(dataproy))
##  [1] "edad"      "year_2000" "year_2001" "year_2002" "year_2003" "year_2004"
##  [7] "year_2005" "year_2006" "year_2007" "year_2008" "year_2009" "year_2010"
## [13] "year_2011" "year_2012" "year_2013" "year_2014" "year_2015" "year_2016"
## [19] "year_2017" "year_2018" "year_2019" "year_2020" "year_2021" "year_2022"
## [25] "year_2023" "year_2024" "year_2025"

2.2 Crear un vector con los textos de interés

textos_de_interes <- c(
  "Asunción", 
  "Dpto. Alto Paraná", 
  "Dpto. Amambay", 
  "Dpto. Caaguazú", 
  "Dpto. Caazapá",
  "Dpto. Canindeyú",
  "Dpto. Central",
  "Dpto. Concepción",
  "Dpto. Cordillera",
  "Dpto. Guairá",
  "Dpto. Itapúa",
  "Dpto. Misiones",
  "Dpto. Ñeembucú",
  "Dpto. Presidente Hayes",
  "Dpto. San Pedro",
  "Dpto.Paraguarí",
  "Sin departamento 1",
  "Sin departamento 2"
)

# Crear la nueva variable
dataproy$nueva_variable <- ifelse(dataproy$edad %in% textos_de_interes, dataproy$edad, NA)

2.3 Rellenar los valores NA con el texto anterior

for (i in 2:length(dataproy$nueva_variable)) {
  if (is.na(dataproy$nueva_variable[i])) {
    dataproy$nueva_variable[i] <- dataproy$nueva_variable[i - 1]
  }
}

2.4 Crear la nueva variable basada en la palabra “Hombres” y “Mujeres”

dataproy$genero_variable <- ifelse(grepl("Hombres", dataproy$edad, fixed = TRUE), "Hombres",
                                   ifelse(grepl("Mujeres", dataproy$edad, fixed = TRUE), "Mujeres",
                                          ifelse(grepl("Total", dataproy$edad, fixed = TRUE), "Total",NA)))

2.5 Rellenar los valores NA con el texto anterior

for (i in 2:length(dataproy$genero_variable)) {
  if (is.na(dataproy$genero_variable[i])) {
    dataproy$genero_variable[i] <- dataproy$genero_variable[i - 1]
  }
}

2.6 Eliminar las filas donde la variable “edad” es igual a “Hombres”, “Mujeres” o “Total”

dataproy <- dataproy[!(dataproy$edad %in% c("Hombres", "Mujeres", "Total")), ]

# Eliminar las filas donde la variable "año2000" es NA
dataproy <- dataproy[!is.na(dataproy$year_2000), ]

2.7 Renombrar las variables

dataproy <- dataproy %>%
  rename(departamento = nueva_variable, sexo = genero_variable)



textos_de_interes <- c(
  "Asunción", 
  "Dpto. Concepción",
  "Dpto. San Pedro",
  "Dpto. Cordillera",
  "Dpto. Guairá",
  "Dpto. Caaguazú", 
  "Dpto. Caazapá", 
  "Dpto. Itapúa",
  "Dpto. Misiones",  
  "Dpto.Paraguarí",  
  "Dpto. Alto Paraná",   
  "Dpto. Central",  
   "Dpto. Ñeembucú", 
  "Dpto. Amambay", 
  "Dpto. Canindeyú",
  "Dpto. Presidente Hayes",
  "Sin departamento 1",
  "Sin departamento 2"
)

# Crear un vector con las palabras de reemplazo
palabras_de_reemplazo <- c("(00)Asunción", "(01)Concepción", "(02)San Pedro", "(03)Cordillera", "(04)Guairá",
  "(05)Caaguazú", "(06)Caazapá", "(07)Itapúa", "(08)Misiones", "(09)Paraguarí",
  "(10)Alto Paraná", "(11)Central", "(12)Ñeembucú", "(13)Amambay", "(14)Canindeyú",
  "(15)Presidente Hayes", "(16)Boquerón", "(17)Alto Paraguay")

# Reemplazar las palabras en la variable "departamento"
dataproy$departamento <- ifelse(dataproy$departamento %in% textos_de_interes, palabras_de_reemplazo[match(dataproy$departamento, textos_de_interes)], dataproy$departamento)
tabla <- table(dataproy$departamento)
tabla
## 
##         (00)Asunción       (01)Concepción        (02)San Pedro 
##                  162                  162                  162 
##       (03)Cordillera           (04)Guairá         (05)Caaguazú 
##                  162                  163                  162 
##          (06)Caazapá           (07)Itapúa         (08)Misiones 
##                  162                  162                  162 
##        (09)Paraguarí      (10)Alto Paraná          (11)Central 
##                  162                  162                  162 
##         (12)Ñeembucú          (13)Amambay        (14)Canindeyú 
##                  162                  162                  162 
## (15)Presidente Hayes         (16)Boquerón    (17)Alto Paraguay 
##                  162                  163                  163

2.8 Eliminar las filas donde la variable “año2000” es NA

dataproy <- dataproy[!is.na(dataproy$year_2000), ]

# Convertir las columnas a tipo número entero
dataproy <- dataproy %>%
  mutate(across(starts_with("year_"), as.numeric))
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `across(starts_with("year_"), as.numeric)`.
## Caused by warning:
## ! NAs introducidos por coerción
# Utilizar pivot_longer para reorganizar las columnas
dataproylong <- dataproy %>%
  pivot_longer(
    cols = starts_with("year_"),
    names_to = "year",
    values_to = "valor"
  )

# Visualizar la nueva estructura de la base
head(base_long)
sexo year edad departamento valor nuevo_valor codquinquenio quinquenio tipo llave
Hombres 2002 0 (00)Asunción 4587 4587 0 Menor de 5 años Dato censal 0-2002-(00)Asunción-Hombres
Hombres 2002 0 (01)Concepción 2250 2250 0 Menor de 5 años Dato censal 0-2002-(01)Concepción-Hombres
Hombres 2002 0 (02)San Pedro 3941 3941 0 Menor de 5 años Dato censal 0-2002-(02)San Pedro-Hombres
Hombres 2002 0 (03)Cordillera 2457 2457 0 Menor de 5 años Dato censal 0-2002-(03)Cordillera-Hombres
Hombres 2002 0 (04)Guairá 1825 1825 0 Menor de 5 años Dato censal 0-2002-(04)Guairá-Hombres
Hombres 2002 0 (05)Caaguazú 5256 5256 0 Menor de 5 años Dato censal 0-2002-(05)Caaguazú-Hombres

2.9 Eliminar filas donde la columna “sexo” es igual a “Total”

dataproy <- dataproy %>%
  filter(sexo != "Total")

2.10 Reemplazar “year_” por nada en la columna “edad”

dataproylong$year <- str_replace_all(dataproylong$year, "year_", "")

2.11 Reemplazar “80 y más” por “80” en la columna “edad”

dataproylong$edad <- gsub("80 y más", "80", dataproylong$edad)

# Eliminar "Dpto." de los nombres de las variables
dataproy$departamento <- gsub("Dpto. ", "", dataproy$departamento)

2.12 Convertir la columna “edad” a tipo numérico

dataproylong$edad <- as.numeric(dataproylong$edad)
## Warning: NAs introducidos por coerción
str(dataproylong)
## tibble [75,894 × 5] (S3: tbl_df/tbl/data.frame)
##  $ edad        : num [1:75894] 0 0 0 0 0 0 0 0 0 0 ...
##  $ departamento: chr [1:75894] "(00)Asunción" "(00)Asunción" "(00)Asunción" "(00)Asunción" ...
##  $ sexo        : chr [1:75894] "Hombres" "Hombres" "Hombres" "Hombres" ...
##  $ year        : chr [1:75894] "2000" "2001" "2002" "2003" ...
##  $ valor       : num [1:75894] 5205 5331 5315 5305 5282 ...
tabla=xtabs(valor~edad+year ,dataproylong)
tabla
##     year
## edad       2000       2001       2002       2003       2004       2005
##   0  137773.498 137760.264 137702.510 137760.892 138009.524 138199.298
##   1  137582.201 136863.716 136877.773 136848.745 136934.521 137208.863
##   2  137209.095 137256.054 136549.885 136573.298 136554.070 136649.136
##   3  136701.493 137002.104 137055.354 136356.635 136385.883 136372.631
##   4  136106.712 136545.018 136849.962 136907.806 136214.497 136248.049
##   5  135476.477 136063.743 136501.548 136806.393 136864.616 136172.539
##   6  134858.104 135505.171 136088.374 136522.834 136825.012 136881.343
##   7  134285.672 134897.921 135540.583 136120.031 136551.413 136851.195
##   8  133771.203 134332.622 134940.294 135578.966 136155.046 136583.749
##   9  133260.543 133822.525 134379.274 134982.855 135617.998 136191.188
##   10 132628.949 133283.344 133839.273 134390.704 134989.709 135621.006
##   11 131689.918 132620.934 133267.896 133817.310 134363.188 134957.508
##   12 130230.473 131678.764 132602.230 133242.692 133786.628 134327.925
##   13 128112.638 130217.757 131658.171 132574.997 133209.975 133749.383
##   14 125419.022 128085.191 130182.096 131615.750 132527.217 133157.949
##   15 122628.027 124929.712 127589.201 129681.403 131112.223 132022.618
##   16 119641.872 121672.749 123970.122 126626.804 128718.355 130150.947
##   17 115886.960 118662.933 120689.878 122984.868 125640.224 127732.940
##   18 111210.584 114885.520 117656.357 119681.342 121975.491 124631.230
##   19 105931.557 110191.084 113858.967 116626.496 118651.100 120946.170
##   20 100308.723 104840.449 109095.181 112761.569 115531.034 117560.734
##   21  94979.972  99152.804 103682.501 107937.855 111607.800 114384.453
##   22  90505.670  93823.806  97994.937 102524.118 106781.275 110456.167
##   23  87272.076  89352.023  92670.166  96841.193 101371.090 105631.450
##   24  84995.559  86121.484  88204.357  91524.146  95696.358 100228.416
##   25  83006.603  84210.883  85334.635  87414.473  90729.725  94897.050
##   26  80934.662  82587.847  83782.243  84897.744  86968.473  90273.096
##   27  79007.849  80521.248  82163.220  83349.071  84457.727  86520.640
##   28  77143.318  78599.752  80102.118  81734.240  82912.943  84015.963
##   29  75337.568  76740.238  78185.594  79678.273  81301.972  82474.737
##   30  73705.435  75037.276  76428.483  77863.641  79347.503  80963.374
##   31  72197.222  73506.389  74826.454  76206.974  77632.738  79108.292
##   32  70617.001  71999.910  73297.214  74606.619  75977.720  77395.149
##   33  68891.758  70420.507  71791.213  73077.773  74377.789  75740.535
##   34  67073.584  68695.330  70211.322  71570.947  72848.039  74139.733
##   35  65236.311  66878.288  68487.296  69992.084  71342.263  72611.297
##   36  63487.404  65041.124  66670.548  68268.335  69763.472  71105.597
##   37  61874.710  63289.113  64830.334  66448.252  68035.931  69522.444
##   38  60444.508  61671.894  63074.053  64603.817  66211.335  67789.919
##   39  59135.067  60235.592  61451.198  62842.158  64361.567  65959.687
##   40  57855.472  58932.367  60022.877  61229.043  62611.017  64122.000
##   41  56504.284  57657.910  58726.199  59808.856  61007.627  62382.367
##   42  55042.330  56297.651  57442.186  58502.566  59578.145  60770.178
##   43  53419.452  54826.353  56071.898  57208.020  58261.263  59330.430
##   44  51659.462  53194.258  54590.355  55826.772  56955.229  58001.996
##   45  49914.654  51421.250  52945.663  54332.911  55562.146  56684.698
##   46  48151.648  49663.039  51160.384  52676.188  54056.340  55279.992
##   47  46181.908  47890.456  49392.067  50880.444  52387.974  53761.334
##   48  43953.008  45912.254  47609.230  49101.314  50581.033  52080.527
##   49  41562.782  43676.728  45621.991  47307.554  48790.385  50261.657
##   50  39090.486  41285.015  43382.688  45313.785  46987.893  48461.419
##   51  36735.220  38812.666  40988.914  43070.016  44986.777  46649.265
##   52  34670.830  36454.016  38512.805  40670.591  42735.056  44637.390
##   53  33016.308  34384.816  36150.604  38190.534  40329.694  42377.310
##   54  31678.156  32722.534  34076.388  35824.641  37845.528  39965.746
##   55  30462.183  31371.255  32404.557  33744.899  35476.540  37479.023
##   56  29230.436  30141.072  31041.007  32064.393  33392.167  35107.816
##   57  28012.346  28898.113  29798.873  30689.652  31703.039  33017.969
##   58  26764.436  27668.949  28544.335  29435.158  30316.730  31319.967
##   59  25508.599  26410.805  27303.781  28168.696  29049.489  29921.735
##   60  24301.261  25145.799  26036.197  26918.110  27773.012  28644.136
##   61  23175.226  23929.276  24762.545  25641.479  26512.667  27357.813
##   62  22108.115  22793.100  23536.411  24358.059  25225.193  26085.268
##   63  21104.194  21715.460  22390.036  23122.277  23931.961  24786.856
##   64  20154.204  20700.414  21301.852  21965.703  22686.558  23483.832
##   65  19248.105  19735.496  20272.135  20863.192  21515.759  22224.563
##   66  18369.430  18814.229  19292.267  19818.832  20398.990  21039.649
##   67  17506.529  17923.691  18359.322  18827.803  19344.062  19912.985
##   68  16649.782  17049.340  17457.207  17883.473  18342.187  18847.832
##   69  15804.154  16181.950  16571.816  16970.191  17386.890  17835.553
##   70  14979.570  15320.801  15689.864  16070.996  16460.770  16868.657
##   71  14184.203  14481.536  14815.504  15176.646  15549.779  15931.569
##   72  13422.144  13677.401  13968.146  14294.446  14647.231  15011.876
##   73  12692.816  12906.846  13156.279  13440.053  13758.262  14102.198
##   74  11991.266  12169.307  12378.424  12621.671  12898.074  13207.718
##   75  11311.083  11459.733  11633.408  11836.964  12073.346  12341.635
##   76  10644.981  10772.386  10917.074  11085.786  11283.153  11511.985
##   77   9985.383  10100.762  10224.627  10365.086  10528.534  10719.359
##   78   9325.002   9437.602   9549.437   9669.500   9805.445   9963.300
##   79   8656.551   8776.371   8884.878   8992.910   9108.897   9240.015
##   80  52892.000  55285.718  57543.011  59670.395  61683.713  63604.768
##     year
## edad       2006       2007       2008       2009       2010       2011
##   0  138480.525 138846.564 139138.663 139485.717 139869.190 140195.088
##   1  137424.192 137730.009 138119.864 138435.303 138803.368 139205.596
##   2  136932.233 137156.244 137470.520 137868.353 138191.299 138565.997
##   3  136473.400 136761.850 136991.246 137310.625 137713.074 138040.280
##   4  136239.174 136344.106 136636.520 136869.792 137192.692 137598.268
##   5  136206.925 136199.189 136305.487 136599.314 136834.486 137159.572
##   6  136188.518 136222.085 136214.227 136320.762 136615.788 136853.082
##   7  136905.887 136212.447 136245.554 136237.711 136345.293 136642.169
##   8  136881.532 136934.918 136241.260 136274.178 136267.273 136376.655
##   9  136617.695 136913.908 136966.520 136272.945 136306.692 136301.551
##   10 136191.166 136615.390 136910.257 136962.210 136269.936 136305.939
##   11 135585.049 136152.259 136574.688 136868.491 136921.545 136232.410
##   12 134918.580 135543.204 136108.611 136529.990 136824.852 136880.757
##   13 134287.098 134874.906 135497.741 136062.066 136484.488 136782.132
##   14 133694.124 134229.364 134815.738 135437.775 136003.372 136428.814
##   15 132653.806 133191.655 133729.939 134320.352 134955.726 135542.036
##   16 131065.303 131702.269 132247.660 132794.897 133410.824 134084.671
##   17 129169.220 130089.464 130734.340 131289.143 131862.376 132517.198
##   18 126726.915 128168.725 129096.958 129751.594 130332.843 130945.445
##   19 123604.001 125704.377 127153.730 128091.726 128773.100 129394.119
##   20 119862.057 122527.128 124637.614 126099.512 127066.825 127790.479
##   21 116424.442 118737.104 121414.737 123540.033 125033.219 126044.883
##   22 113241.417 115293.175 117618.977 120310.276 122465.664 124002.360
##   23 109312.662 112107.925 114173.216 116513.224 119233.401 121431.004
##   24 104493.375 108182.314 110989.318 113069.155 115438.534 118199.660
##   25  99425.197 103688.628 107379.392 110191.579 112288.949 114684.035
##   26  94429.580  98947.745 103203.771 106889.995 109705.873 111813.602
##   27  89816.175  93963.246  98473.136 102723.081 106410.887 109235.448
##   28  86072.504  89360.320  93499.656  98002.622 102252.662 105947.111
##   29  83573.489  85624.934  88906.637  93039.565  97541.816 101797.070
##   30  82130.859  83225.775  85272.620  88548.503  92678.516  97181.110
##   31  80716.973  81879.575  82970.871  85013.397  88285.211  92411.998
##   32  78863.678  80466.307  81625.028  82713.971  84754.868  88024.981
##   33  77150.915  78613.556  80211.154  81367.273  82456.546  84498.163
##   34  75495.413  76899.887  78357.660  79951.519  81107.745  82199.707
##   35  73896.229  75246.183  76646.018  78100.324  79692.828  80850.835
##   36  72368.060  73647.502  74993.052  76389.511  77842.306  79434.775
##   37  70857.662  72114.563  73389.645  74731.811  76126.761  77579.726
##   38  69268.944  70598.255  71850.726  73122.471  74463.135  75858.273
##   39  67530.296  69002.817  70327.345  71576.406  72846.712  74187.582
##   40  65712.566  67276.758  68744.276  70065.262  71312.698  72582.836
##   41  63886.567  65470.974  67030.037  68493.600  69812.473  71059.240
##   42  62138.399  63636.474  65215.400  66769.953  68230.740  69548.572
##   43  60516.460  61878.826  63371.448  64945.492  66496.697  67955.760
##   44  59065.498  60246.205  61603.397  63091.160  64661.472  66210.360
##   45  57726.749  58786.135  59962.990  61316.232  62800.772  64368.717
##   46  56398.251  57436.957  58493.616  59667.715  61018.512  62501.064
##   47  54979.846  56094.128  57130.013  58184.281  59356.537  60705.666
##   48  53447.468  54661.105  55771.898  56805.284  57858.099  59029.327
##   49  51753.418  53114.132  54323.328  55430.907  56462.733  57514.938
##   50  49924.281  51408.193  52762.833  53967.548  55072.503  56103.226
##   51  48113.477  49567.791  51043.953  52392.343  53593.055  54695.745
##   52  46288.357  47743.309  49189.372  50657.722  52000.514  53197.846
##   53  44265.167  45904.546  47350.490  48788.202  50249.310  51587.043
##   54  41996.336  43869.489  45497.402  46934.187  48364.092  49818.414
##   55  39580.900  41594.908  43454.009  45070.803  46499.347  47922.090
##   56  37092.364  39176.134  41173.946  43019.090  44625.313  46046.022
##   57  34717.195  36683.134  38748.253  40729.114  42560.035  44155.544
##   58  32621.778  34303.984  36250.744  38296.333  40259.830  42076.199
##   59  30914.677  32202.938  33867.636  35794.319  37819.841  39765.490
##   60  29507.425  30490.214  31764.998  33411.704  35318.021  37323.070
##   61  28219.528  29073.985  30046.777  31307.714  32936.180  34821.646
##   62  26920.358  27772.261  28617.643  29579.833  30826.556  32436.140
##   63  25635.451  26460.047  27301.842  28137.586  29088.976  30321.054
##   64  24326.071  25162.678  25976.448  26807.520  27633.482  28573.815
##   65  23008.768  23837.573  24661.598  25463.695  26283.626  27099.351
##   66  21735.789  22506.169  23320.922  24131.453  24921.407  25729.682
##   67  20541.388  21224.380  21980.536  22780.474  23577.176  24354.679
##   68  19405.205  20020.894  20690.374  21431.547  22216.296  22998.803
##   69  18330.298  18875.698  19478.333  20133.586  20859.417  21628.571
##   70  17307.969  17792.313  18326.286  18915.943  19557.362  20268.107
##   71  16331.224  16761.583  17236.008  17758.530  18335.540  18963.340
##   72  15385.231  15776.105  16197.127  16660.793  17171.484  17735.396
##   73  14457.899  14822.272  15203.991  15614.868  16067.434  16565.886
##   74  13542.350  13888.556  14243.578  14615.356  15015.782  15456.879
##   75  12641.992  12966.494  13302.514  13647.145  14008.457  14397.876
##   76  11771.501  12061.796  12375.476  12700.365  13034.139  13384.492
##   77  10940.309  11190.601  11470.459  11772.720  12086.294  12408.979
##   78  10147.280  10359.934  10600.664  10869.531  11160.215  11462.261
##   79   9391.998   9568.753   9772.810  10003.476  10261.232  10540.156
##   80  65459.937  67277.618  69087.431  70916.925  72792.375  74737.624
##     year
## edad       2012       2013       2014       2015       2016       2017
##   0  140626.378 140875.808 141084.179 141359.163 141537.206 141756.583
##   1  139550.049 139999.365 140266.962 140493.533 140785.947 140981.579
##   2  138974.749 139325.684 139781.304 140055.249 140288.141 140586.688
##   3  138419.061 138831.833 139186.774 139646.261 139924.108 140160.918
##   4  137928.597 138310.399 138726.135 139084.025 139546.335 139827.081
##   5  137567.465 137900.435 138285.093 138703.961 139065.267 139531.217
##   6  137180.647 137591.562 137928.135 138316.979 138740.570 139107.197
##   7  136881.761 137212.172 137626.430 137967.004 138360.380 138789.055
##   8  136675.649 136917.987 137251.640 137669.724 138014.720 138413.065
##   9  136413.055 136714.675 136960.210 137297.638 137720.025 138069.928
##   10 136303.501 136418.357 136723.967 136974.251 137317.139 137745.662
##   11 136271.701 136273.354 136393.155 136704.465 136961.416 137311.776
##   12 136195.333 136238.800 136245.525 136371.178 136689.190 136953.712
##   13 136841.432 136160.587 136209.188 136221.870 136354.358 136679.956
##   14 136730.046 136793.891 136118.926 136173.812 136193.698 136334.157
##   15 135987.061 136309.174 136395.253 135744.197 135823.821 135869.466
##   16 134706.535 135188.844 135549.822 135676.478 135068.322 135191.478
##   17 133226.912 133886.309 134407.770 134809.540 134978.934 134415.435
##   18 131636.560 132384.112 133082.888 133645.414 134090.102 134303.896
##   19 130043.468 130772.831 131560.034 132300.058 132905.730 133394.947
##   20 128451.016 129141.384 129913.054 130743.907 131529.262 132181.705
##   21 126810.580 127514.755 128250.050 129067.842 129946.223 130780.439
##   22 125055.724 125865.065 126614.332 127395.989 128261.502 129188.776
##   23 123008.463 124105.029 124959.369 125755.067 126584.592 127499.103
##   24 120436.674 122056.327 123197.370 124097.966 124941.515 125820.105
##   25 117468.911 119732.311 121381.017 122553.360 123487.075 124365.212
##   26 114218.571 117014.213 119290.988 120955.625 122146.058 123099.755
##   27 111353.388 113769.613 116577.454 118868.876 120550.616 121760.487
##   28 108780.249 110909.759 113338.658 116159.996 118467.266 120167.476
##   29 105498.110 108341.227 110483.715 112926.571 115762.639 118087.156
##   30 101437.833 105143.119 107993.744 110146.507 112600.481 115448.528
##   31  96911.584 101167.394 104874.384 107729.805 109889.944 112352.182
##   32  92149.241  96647.138 100903.285 104613.202 107474.522 109643.240
##   33  87767.230  91890.242  96387.672 100645.365 104359.315 107227.745
##   34  84242.673  87511.939  91634.882  96133.016 100393.339 104112.518
##   35  81945.491  83990.328  87260.192  91383.382  95882.407 100145.616
##   36  80594.651  81692.462  83739.542  87010.242  91133.795  95633.875
##   37  79172.935  80335.770  81437.852  83488.191  86760.660  90885.565
##   38  77312.184  78907.196  80074.103  81181.518  83236.093  86511.324
##   39  75583.682  77039.607  78637.499  79809.533  80923.318  82983.183
##   40  73924.102  75321.493  76779.579  78380.267  79557.181  80677.010
##   41  72329.274  73671.114  75069.752  76529.765  78132.772  79314.065
##   42  70795.180  72065.871  73408.976  74809.554  76272.114  77878.160
##   43  69273.039  70520.242  71792.280  73137.336  74540.469  76006.301
##   44  67668.147  68985.604  70234.084  71508.152  72855.769  74262.176
##   45  65915.947  67373.244  68691.523  69941.810  71218.274  72568.798
##   46  64067.172  65613.340  67070.638  68390.106  69642.457  70921.534
##   47  62186.408  63750.995  65296.450  66754.071  68075.091  69329.950
##   48  60376.974  61856.213  63419.595  64964.609  66422.859  67745.836
##   49  58685.347  60031.827  61509.869  63072.279  64617.104  66076.325
##   50  57154.674  58324.236  59669.496  61146.173  62707.428  64251.957
##   51  55725.224  56775.899  57944.597  59288.455  60763.573  62323.526
##   52  54298.459  55327.025  56377.294  57545.340  58888.000  60361.789
##   53  52781.108  53879.917  54907.918  55958.003  57125.627  58467.326
##   54  51151.096  52342.086  53439.373  54467.005  55517.149  56684.619
##   55  49369.703  50697.515  51885.631  52981.468  54008.804  55059.048
##   56  47461.598  48902.491  50225.414  51410.577  52504.875  53531.836
##   57  45568.136  46976.307  48410.236  49728.056  50910.131  52002.871
##   58  43660.549  45064.722  46465.193  47891.813  49204.256  50383.117
##   59  41566.655  43139.369  44534.762  45927.132  47346.030  48652.824
##   60  39250.209  41035.585  42596.183  43982.325  45366.082  46776.740
##   61  36805.375  38713.185  40482.012  42029.772  43406.035  44780.546
##   62  34299.683  36260.962  38148.383  39899.637  41433.729  42799.442
##   63  31910.790  33751.257  35688.874  37554.688  39287.287  40806.830
##   64  29790.493  31359.341  33175.504  35088.085  36931.007  38643.810
##   65  28027.803  29228.044  30774.686  32564.961  34450.879  36269.385
##   66  26534.412  27450.149  28632.884  30155.886  31918.647  33776.231
##   67  25150.739  25943.928  26846.287  28010.536  29508.609  31242.364
##   68  23763.261  24546.506  25327.543  26215.740  27360.473  28832.276
##   69  22396.223  23147.005  23916.770  24684.931  25558.142  26682.289
##   70  21021.540  21774.151  22511.003  23266.889  24021.715  24879.323
##   71  19658.778  20396.166  21133.326  21855.738  22597.152  23338.014
##   72  18348.755  19028.002  19748.391  20469.094  21176.079  21902.040
##   73  17115.915  17714.001  18376.124  19078.482  19781.692  20472.253
##   74  15942.352  16477.706  17059.647  17703.646  18386.918  19071.598
##   75  14826.579  15298.113  15817.763  16382.427  17007.098  17670.056
##   76  13762.029  14177.451  14634.100  15136.992  15683.273  16287.464
##   77  12747.754  13112.795  13514.257  13955.238  14440.535  14967.563
##   78  11773.270  12099.891  12451.811  12838.592  13263.142  13730.047
##   79  10830.119  11128.913  11442.805  11780.943  12152.350  12559.750
##   80  76766.846  78883.417  81088.441  83388.661  85798.916  88341.156
##     year
## edad       2018       2019       2020       2021       2022       2023
##   0  141841.172 142051.706 142103.850 142274.179 142312.211 142485.451
##   1  141218.178 141319.917 141546.961 141615.948 141802.232 141856.434
##   2  140788.431 141031.064 141138.808 141371.636 141446.497 141638.385
##   3  140463.226 140668.748 140915.090 141026.547 141262.924 141341.406
##   4  140066.761 140371.845 140580.155 140829.226 140943.411 141182.408
##   5  139815.963 140059.936 140369.546 140582.722 140836.908 140956.518
##   6  139579.015 139870.292 140121.381 140438.700 140660.199 140923.244
##   7  139161.399 139639.465 139937.640 140196.271 140521.683 140751.867
##   8  138847.301 139225.812 139710.572 140016.149 140282.774 140616.714
##   9  138473.771 138914.068 139299.240 139791.250 140104.733 140379.834
##   10 138102.476 138513.990 138962.620 139356.940 139858.803 140182.913
##   11 137748.614 138114.749 138536.347 138995.994 139402.266 139916.883
##   12 137312.473 137758.654 138134.942 138567.626 139039.250 139458.367
##   13 136952.960 137321.135 137777.475 138164.901 138609.613 139094.092
##   14 136668.486 136951.216 137329.840 137797.536 138197.256 138655.077
##   15 136036.937 136399.341 136711.391 137120.484 137619.914 138052.415
##   16 135282.450 135496.548 135907.093 136268.785 136729.169 137281.017
##   17 134584.358 134722.461 134985.225 135445.730 135859.127 136372.318
##   18 133787.378 134003.886 134191.178 134504.454 135016.972 135483.606
##   19 133655.336 133187.668 133453.807 133692.128 134057.967 134624.005
##   20 132719.471 133029.977 132614.971 132934.183 133227.088 133648.440
##   21 131483.406 132073.030 132437.263 132078.202 132453.871 132804.160
##   22 130073.434 130828.229 131471.417 131890.758 131589.321 132022.615
##   23 128476.761 129413.069 130221.303 130919.338 131395.331 131152.611
##   24 126785.027 127814.196 128803.685 129666.564 130420.900 130954.544
##   25 125279.752 126281.770 127349.396 128378.801 129283.215 130080.397
##   26 123999.325 124936.602 125962.537 127055.487 128111.629 129044.241
##   27 122735.390 123657.619 124618.811 125670.032 126789.522 127873.547
##   28 121398.014 122395.346 123341.404 124327.869 125405.582 126552.753
##   29 119807.093 121059.537 122080.474 123051.720 124064.667 125170.013
##   30 117787.336 119523.919 120795.061 121836.441 122829.499 123865.404
##   31 115209.227 117559.192 119309.203 120595.788 121654.209 122665.509
##   32 112114.931 114982.098 117344.372 119108.980 120412.163 121488.663
##   33 109406.230 111888.491 114766.937 117142.698 118923.078 120243.909
##   34 106989.241 109178.610 111672.593 114563.489 116953.918 118751.126
##   35 103870.205 106755.329 108955.646 111461.402 114364.738 116769.671
##   36  99900.035 103630.078 106523.547 108734.837 111252.297 114167.857
##   37  95387.610  99657.675 103394.049 106296.930 108520.243 111050.371
##   38  90638.462  95143.364  99418.141 103161.837 106075.129 108311.429
##   39  86262.075  90392.313  94900.809  99181.205 102933.134 105857.733
##   40  82741.510  86023.146  90155.235  94666.007  98950.506 102708.964
##   41  80439.200  82507.337  85790.364  89922.786  94434.065  98720.718
##   42  79064.531  80195.697  82268.039  85552.949  89686.076  94198.164
##   43  77616.013  78808.174  79946.047  82023.209  85310.432  89444.549
##   44  75731.909  77345.923  78544.530  79689.843  81772.394  85062.281
##   45  73978.596  75452.272  77070.417  78275.334  79427.812  81515.160
##   46  72274.938  73688.069  75165.385  76787.327  77998.130  79157.213
##   47  70611.975  71968.694  73385.442  74866.806  76492.863  77709.943
##   48  69003.518  70288.919  71649.227  73069.985  74555.716  76186.165
##   49  67401.533  68662.448  69951.488  71315.760  72740.834  74231.212
##   50  65711.957  67039.352  68303.329  69595.962  70964.060  72393.287
##   51  63867.503  65328.159  66657.515  67924.486  69220.547  70592.297
##   52  61920.526  63464.154  64925.563  66257.167  67527.353  68827.083
##   53  59939.857  61497.526  63040.828  64503.189  65837.199  67110.809
##   54  58025.433  59496.836  61053.401  62596.493  64059.868  65396.427
##   55  56226.157  57565.822  59035.570  60590.523  62132.739  63596.444
##   56  54581.913  55748.347  57086.279  58553.761  60106.298  61646.789
##   57  53029.395  54079.313  55244.923  56580.986  58045.933  59595.771
##   58  51474.149  52500.207  53549.826  54714.508  56048.438  57510.541
##   59  49828.205  50917.407  51942.817  52992.044  54155.568  55487.059
##   60  48077.318  49248.769  50335.618  51359.938  52408.200  53569.888
##   61  46182.202  47475.893  48642.732  49726.619  50749.197  51795.773
##   62  44163.979  45555.943  46842.094  48003.816  49084.280  50104.692
##   63  42161.183  43514.989  44896.436  46174.359  47330.356  48406.852
##   64  40147.773  41489.922  42832.104  44202.166  45471.060  46620.634
##   65  37960.931  39448.091  40776.915  42106.408  43463.979  44722.838
##   66  35568.666  37237.461  38706.475  40020.837  41336.469  42680.364
##   67  33069.974  34834.787  36479.355  37928.984  39227.743  40528.374
##   68  30535.389  32331.314  34066.811  35685.620  37114.477  38396.399
##   69  28126.348  29797.117  31559.508  33263.938  34855.305  36261.903
##   70  25981.865  27396.757  29033.389  30760.310  32431.675  33993.646
##   71  24179.146  25258.883  26642.938  28243.461  29932.707  31568.781
##   72  22627.898  23451.418  24506.892  25858.304  27420.592  29069.904
##   73  21181.683  21891.482  22696.175  23725.904  25042.770  26564.626
##   74  19744.653  20436.468  21129.078  21913.714  22916.135  24196.496
##   75  18334.916  18989.219  19662.103  20336.234  21099.365  22072.729
##   76  16928.844  17572.651  18206.914  18859.594  19513.924  20254.092
##   77  15550.259  16169.032  16790.670  17403.821  18035.139  18668.476
##   78  14236.908  14797.164  15392.255  15990.671  16581.603  17190.392
##   79  13007.439  13493.296  14030.134  14600.552  15174.685  15742.298
##   80  91037.305  93911.327  96982.368 100280.068 103814.850 107567.919
##     year
## edad       2024       2025
##   0  142500.170 142815.350
##   1  142044.757 142071.904
##   2  141698.048 141890.572
##   3  141536.620 141598.993
##   4  141263.459 141460.642
##   5  141201.106 141287.729
##   6  141052.301 141306.490
##   7  141024.128 141162.691
##   8  140856.015 141137.642
##   9  140722.787 140971.415
##   10 140469.363 140824.106
##   11 140254.684 140555.466
##   12 139986.652 140338.810
##   13 139526.950 140069.545
##   14 139153.498 139600.890
##   15 138544.465 139077.656
##   16 137768.080 138315.212
##   17 136978.990 137521.436
##   18 136052.008 136714.269
##   19 135146.260 135770.575
##   20 134271.682 134851.460
##   21 133284.529 133966.682
##   22 132432.235 132971.870
##   23 131645.380 132114.487
##   24 130772.311 131324.638
##   25 130658.787 130522.678
##   26 129871.163 130480.201
##   27 128835.634 129692.833
##   28 127665.941 128658.071
##   29 126346.154 127489.110
##   30 124994.885 126195.778
##   31 123720.775 124870.157
##   32 122519.295 123594.504
##   33 121339.596 122390.156
##   34 120090.727 121206.203
##   35 118583.531 119941.188
##   36 116587.018 118416.786
##   37 113979.063 116412.965
##   38 110855.142 113797.425
##   39 108107.946 110665.703
##   40 105643.043 107904.765
##   41 102483.592 105424.477
##   42  98487.241 102254.402
##   43  93957.631  98248.890
##   44  89197.570  93711.318
##   45  84806.750  88941.570
##   46  81248.451  84540.119
##   47  78875.977  80970.907
##   48  77409.836  78582.808
##   49  75866.239  77096.465
##   50  73888.075  75527.080
##   51  72025.425  73524.029
##   52  70202.634  71639.497
##   53  68414.341  69793.536
##   54  66673.562  67980.754
##   55  64934.770  66214.401
##   56  63109.860  64448.822
##   57  61134.202  62596.244
##   58  59057.274  60593.188
##   59  56945.889  58489.028
##   60  54898.078  56352.662
##   61  52954.785  54278.709
##   62  51149.170  52305.083
##   63  49424.642  50466.669
##   64  47692.588  48707.413
##   65  45865.177  46932.095
##   66  43928.191  45062.711
##   67  41857.515  43093.672
##   68  39680.893  40994.506
##   69  37525.776  38793.356
##   70  35376.299  36621.019
##   71  33099.333  34456.696
##   72  30668.645  32166.440
##   73  28171.858  29731.788
##   74  25675.865  27239.479
##   75  23314.662  24750.009
##   76  21196.871  22399.152
##   77  19384.591  20296.082
##   78  17801.789  18493.449
##   79  16327.668  16916.878
##   80 111516.217 115668.085

2.13 Crear la tabla de frecuencias

tabla <- xtabs(valor ~ departamento + year, dataproylong)
tabla
##                       year
## departamento                 2000       2001       2002       2003       2004
##   (00)Asunción          527712.00  528865.42  529802.85  530565.21  531153.42
##   (01)Concepción        189927.00  192799.47  195669.30  198552.80  201461.80
##   (02)San Pedro         333882.00  339171.47  344338.61  349425.00  354445.87
##   (03)Cordillera        242141.00  244883.13  247657.53  250487.03  253389.03
##   (04)Guairá            147592.00  149471.00  151356.61  153259.72  155195.13
##   (05)Caaguazú          468519.00  476522.53  484326.45  491964.12  499422.67
##   (06)Caazapá           105288.00  106092.74  106897.14  107714.89  108555.01
##   (07)Itapúa            235283.00  236443.09  237543.01  238610.64  239653.04
##   (08)Misiones          568074.00  583983.82  599540.65  614730.26  629584.31
##   (09)Paraguarí        1342589.00 1384522.33 1426611.32 1468812.09 1511201.32
##   (10)Alto Paraná        79925.00   80457.68   80980.77   81501.64   82017.47
##   (11)Central           119660.00  122300.40  124942.46  127584.72  130233.78
##   (12)Ñeembucú          141575.00  146476.72  151361.24  156223.85  161068.82
##   (13)Amambay            84408.00   86454.61   88508.44   90570.49   92648.43
##   (14)Canindeyú          41127.00   42323.16   43537.80   44771.95   46020.92
##   (15)Presidente Hayes   12612.00   12841.24   13075.13   13312.70   13555.48
##   (16)Boquerón          187724.00  189461.72  191192.81  192922.18  194668.06
##   (17)Alto Paraguay     456442.00  461931.29  467267.94  472474.40  477597.43
##                       year
## departamento                 2005       2006       2007       2008       2009
##   (00)Asunción          531561.06  531780.92  531831.03  531701.21  531388.91
##   (01)Concepción        204401.08  207386.53  210435.12  213538.18  216707.19
##   (02)San Pedro         359430.56  364364.26  369301.91  374229.68  379173.35
##   (03)Cordillera        256359.67  259410.88  262558.44  265815.30  269173.66
##   (04)Guairá            157165.31  159171.21  161226.97  163335.50  165505.24
##   (05)Caaguazú          506714.29  513814.71  520738.70  527505.50  534129.74
##   (06)Caazapá           109419.29  110313.26  111248.39  112225.68  113254.01
##   (07)Itapúa            240686.96  241725.90  242772.81  243843.55  244951.00
##   (08)Misiones          644078.84  658242.46  672107.82  685656.81  698926.13
##   (09)Paraguarí        1553729.78 1596476.39 1639381.41 1682388.88 1725429.84
##   (10)Alto Paraná        82533.25   83047.55   83563.46   84081.56   84604.07
##   (11)Central           132884.03  135540.24  138187.38  140841.92  143486.56
##   (12)Ñeembucú          165889.14  170689.14  175460.48  180196.23  184914.86
##   (13)Amambay            94734.71   96836.88   98954.07  101086.48  103241.20
##   (14)Canindeyú          47286.36   48567.27   49860.79   51162.00   52475.16
##   (15)Presidente Hayes   13802.33   14053.84   14310.16   14573.38   14841.50
##   (16)Boquerón          196443.77  198235.76  200061.82  201937.66  203861.48
##   (17)Alto Paraguay     482648.34  487665.80  492665.15  497661.43  502693.58
##                       year
## departamento                 2010       2011       2012       2013       2014
##   (00)Asunción          530895.42  530226.74  529432.80  528528.08  527496.56
##   (01)Concepción        219936.07  223232.20  226584.97  230000.37  233452.02
##   (02)San Pedro         384150.84  389153.36  394168.96  399213.71  404300.05
##   (03)Cordillera        272637.34  276192.84  279859.58  283602.10  287419.59
##   (04)Guairá            167730.95  170013.74  172344.58  174723.26  177138.03
##   (05)Caaguazú          540787.97  547653.31  554652.89  561810.18  569109.58
##   (06)Caazapá           114339.30  115476.62  116671.95  117920.58  119220.33
##   (07)Itapúa            246085.64  247253.29  248460.86  249695.61  250964.67
##   (08)Misiones          711901.64  724627.44  737092.04  749348.86  761398.37
##   (09)Paraguarí        1768598.77 1811838.04 1855240.97 1898592.39 1941991.58
##   (10)Alto Paraná        85128.75   85653.56   86179.66   86705.26   87227.44
##   (11)Central           146126.78  148768.69  151394.86  154026.93  156646.47
##   (12)Ñeembucú          189608.06  194268.23  198899.14  203507.88  208084.94
##   (13)Amambay           105415.54  107608.53  109817.62  112040.27  114281.04
##   (14)Canindeyú          53793.97   55116.85   56440.23   57765.27   59085.13
##   (15)Presidente Hayes   15115.24   15395.29   15681.51   15974.80   16275.14
##   (16)Boquerón          205831.41  207840.02  209900.38  212004.93  214147.50
##   (17)Alto Paraguay     507793.00  512957.73  518217.87  523566.65  528993.56
##                       year
## departamento                 2015       2016       2017       2018       2019
##   (00)Asunción          526407.67  525293.52  524189.54  523183.98  522286.80
##   (01)Concepción        236959.01  240495.00  244070.62  247674.73  251314.28
##   (02)San Pedro         409381.03  414503.21  419628.56  424774.30  429957.20
##   (03)Cordillera        291311.24  295256.20  299233.94  303242.45  307255.95
##   (04)Guairá            179575.91  182038.87  184529.68  187034.84  189540.93
##   (05)Caaguazú          576576.56  584200.71  592016.66  600011.17  608214.79
##   (06)Caazapá           120576.05  121984.82  123442.24  124954.10  126517.17
##   (07)Itapúa            252254.82  253557.32  254884.17  256224.29  257586.64
##   (08)Misiones          773302.76  785065.88  796689.19  808172.46  819588.85
##   (09)Paraguarí        1985383.78 2028699.64 2072041.47 2115174.38 2158215.48
##   (10)Alto Paraná        87749.54   88269.85   88783.91   89290.35   89794.29
##   (11)Central           159262.53  161869.41  164461.78  167049.85  169615.07
##   (12)Ñeembucú          212636.88  217153.95  221647.06  226110.84  230556.40
##   (13)Amambay           116536.48  118801.24  121074.57  123360.67  125657.96
##   (14)Canindeyú          60402.05   61713.49   63011.43   64298.26   65572.32
##   (15)Presidente Hayes   16582.29   16896.61   17218.64   17548.12   17885.73
##   (16)Boquerón          216335.02  218560.33  220818.18  223104.10  225409.74
##   (17)Alto Paraguay     534522.36  540175.72  545904.41  551774.32  557733.12
##                       year
## departamento                 2020       2021       2022       2023       2024
##   (00)Asunción          521558.83  521101.15  520917.44  521091.11  521630.50
##   (01)Concepción        254976.44  258653.45  262360.07  266071.70  269804.94
##   (02)San Pedro         435126.40  440334.70  445550.14  450802.19  456088.77
##   (03)Cordillera        311272.61  315244.72  319176.45  323040.14  326842.49
##   (04)Guairá            192031.04  194511.56  196993.72  199470.53  201936.22
##   (05)Caaguazú          616564.96  625096.13  633846.86  642752.81  651856.41
##   (06)Caazapá           128129.88  129786.64  131493.13  133235.52  135022.38
##   (07)Itapúa            258957.47  260331.20  261701.34  263079.37  264460.34
##   (08)Misiones          830943.46  842307.16  853610.46  864920.13  876234.42
##   (09)Paraguarí        2201109.50 2243792.17 2286193.10 2328453.44 2370332.89
##   (10)Alto Paraná        90286.71   90773.54   91251.62   91720.59   92180.02
##   (11)Central           172169.42  174721.21  177252.36  179773.14  182281.02
##   (12)Ñeembucú          234977.59  239386.05  243778.59  248151.90  252521.54
##   (13)Amambay           127951.39  130257.54  132564.30  134879.54  137190.66
##   (14)Canindeyú          66835.66   68079.89   69303.99   70504.99   71687.55
##   (15)Presidente Hayes   18230.62   18581.30   18937.07   19298.16   19663.54
##   (16)Boquerón          227747.48  230112.41  232503.49  234920.27  237364.29
##   (17)Alto Paraguay     563802.52  569967.41  576260.65  582630.37  589117.12
##                       year
## departamento                 2025
##   (00)Asunción          522615.84
##   (01)Concepción        273578.69
##   (02)San Pedro         461413.31
##   (03)Cordillera        330537.61
##   (04)Guairá            204387.84
##   (05)Caaguazú          661146.20
##   (06)Caazapá           136852.50
##   (07)Itapúa            265840.11
##   (08)Misiones          887612.85
##   (09)Paraguarí        2411983.41
##   (10)Alto Paraná        92629.98
##   (11)Central           184771.74
##   (12)Ñeembucú          256887.41
##   (13)Amambay           139505.76
##   (14)Canindeyú          72844.81
##   (15)Presidente Hayes   20032.40
##   (16)Boquerón          239854.91
##   (17)Alto Paraguay     595767.16

2.14 Generar la variable dataproy$edadt dividiendo la columna edad por 5

dataproylong$edadt <- floor(dataproylong$edad / 5)
table(dataproylong$edadt)
## 
##    0    1    2    3    4    5    6    7    8    9   10   11   12   13   14   15 
## 4680 4680 4680 4680 4680 4680 4680 4680 4680 4680 4680 4680 4680 4680 4680 4680 
##   16 
##  936
# Etiquetar los valores en función de los grupos de edades
etiquetas <- c("0 a 4", "5 a 9", "10 a 14", "15 a 19", "20 a 24", "25 a 29", "30 a 34", "35 a 39", "40 a 44", "45 a 49", "50 a 54", "55 a 59", "60 a 64", "65 a 69", "70 a 74", "75 a 79", "80 y más")
dataproylong$edadt <- factor(dataproylong$edadt, levels = 0:16, labels = etiquetas)

table(dataproylong$edadt )
## 
##    0 a 4    5 a 9  10 a 14  15 a 19  20 a 24  25 a 29  30 a 34  35 a 39 
##     4680     4680     4680     4680     4680     4680     4680     4680 
##  40 a 44  45 a 49  50 a 54  55 a 59  60 a 64  65 a 69  70 a 74  75 a 79 
##     4680     4680     4680     4680     4680     4680     4680     4680 
## 80 y más 
##      936
dataproylong2022 <- subset(dataproylong, year == 2022 & sexo=="Hombres")
tabla <- xtabs(valor ~ (departamento + edadt), dataproylong2022)
tabla
##                       edadt
## departamento                 0 a 4       5 a 9     10 a 14     15 a 19
##   (00)Asunción          18932.7677  20542.6237  22377.7857  22926.1161
##   (01)Concepción        14935.7867  14791.0026  14258.8343  13394.0199
##   (02)San Pedro         24173.4981  24225.8219  23616.1983  22134.8106
##   (03)Cordillera        15253.8441  14764.1748  14143.1386  13954.8714
##   (04)Guairá            10949.9334  10962.1057  10535.6671   9749.8503
##   (05)Caaguazú          32208.2507  31694.2127  31643.1069  31311.1896
##   (06)Caazapá            6291.2783   6096.5567   5898.1277   5831.2926
##   (07)Itapúa            11346.4340  11644.6788  11778.4428  11690.2106
##   (08)Misiones          42363.7663  42180.8034  42295.5708  42383.8349
##   (09)Paraguarí        106073.0047 103431.8351 101479.4319  99494.4691
##   (10)Alto Paraná        3622.3418   3731.4113   3804.1897   3705.5581
##   (11)Central            9140.5627   9001.7786   8847.1745   8521.4469
##   (12)Ñeembucú          12945.1870  12725.5887  12437.2332  11966.9573
##   (13)Amambay            7301.5317   7009.1615   6659.7058   6292.2466
##   (14)Canindeyú          3724.1271   3558.7746   3349.4555   3109.3882
##   (15)Presidente Hayes   1045.7066    977.9447    967.0579    922.1177
##   (16)Boquerón          11019.2987  11046.4782  10748.0399  10199.8706
##   (17)Alto Paraguay     29811.7474  29634.3795  29060.1071  28032.2005
##                       edadt
## departamento               20 a 24     25 a 29     30 a 34     35 a 39
##   (00)Asunción          21085.3937  18319.1961  17314.9343  17776.5662
##   (01)Concepción        12540.2467  12128.5819  11578.9971   9636.3287
##   (02)San Pedro         20467.6523  19785.3152  18836.1523  16330.2027
##   (03)Cordillera        14850.5343  15256.5856  14923.7946  13025.0532
##   (04)Guairá             8950.9292   8550.3726   8323.2743   7174.8568
##   (05)Caaguazú          29745.2709  26996.1191  24688.0720  21617.6023
##   (06)Caazapá            6038.3289   5767.5531   5727.2769   5106.6889
##   (07)Itapúa            11613.1616  11392.7894  11511.5253  10444.9201
##   (08)Misiones          40964.7646  37162.3798  34060.9421  30226.8795
##   (09)Paraguarí         98952.8211  99121.6189  92985.3308  85157.8749
##   (10)Alto Paraná        3383.0976   3191.6659   3369.9949   3240.1192
##   (11)Central            7965.2590   7479.8066   7090.1949   6287.9983
##   (12)Ñeembucú          11548.3000  11168.4577  10380.2919   9160.7119
##   (13)Amambay            6026.3052   5782.0661   5450.3765   4936.8116
##   (14)Canindeyú          2904.5770   2821.3217   2763.8308   2696.7415
##   (15)Presidente Hayes    899.8304    930.5505    798.4432    676.8581
##   (16)Boquerón           9829.9458   9867.9720  10072.9540   9401.7626
##   (17)Alto Paraguay     27329.7225  25749.5790  24047.5710  20719.9349
##                       edadt
## departamento               40 a 44     45 a 49     50 a 54     55 a 59
##   (00)Asunción          18098.5226  15331.4433  11749.9149  10116.0992
##   (01)Concepción         6628.4606   5078.5209   4561.3050   4113.0099
##   (02)San Pedro         12495.2984  10401.0464   9461.3367   8297.1751
##   (03)Cordillera         9820.0532   7769.2430   6792.2946   6139.7790
##   (04)Guairá             5197.2042   4055.8676   3638.4247   3317.5414
##   (05)Caaguazú          17446.4614  14974.5105  13658.1176  11982.8510
##   (06)Caazapá            3455.6724   2915.8688   2720.3680   2476.1155
##   (07)Itapúa             7880.6914   6398.6343   5970.1709   5620.0949
##   (08)Misiones          25043.2998  22039.7452  19804.2158  16475.7702
##   (09)Paraguarí         72539.7874  61346.8426  54283.0011  45437.1404
##   (10)Alto Paraná        2832.0920   2754.0563   2621.0201   2371.1784
##   (11)Central            5114.1385   4350.8302   3779.4030   3157.8059
##   (12)Ñeembucú           7558.3251   6527.5816   5790.7080   4741.5188
##   (13)Amambay            4029.8782   3346.8265   2956.5199   2502.3640
##   (14)Canindeyú          2319.5292   1999.3101   1766.7309   1417.6143
##   (15)Presidente Hayes    503.6249    427.5656    448.4451    372.9312
##   (16)Boquerón           7345.1963   5970.0826   5439.3383   4939.3794
##   (17)Alto Paraguay     15957.6892  13459.3905  12389.4136  10981.2157
##                       edadt
## departamento               60 a 64     65 a 69     70 a 74     75 a 79
##   (00)Asunción           9334.0802   7971.8136   6052.9580   4166.2015
##   (01)Concepción         3614.7627   2954.0640   2071.2394   1326.2928
##   (02)San Pedro          7110.9572   5734.6816   3992.8666   2569.9017
##   (03)Cordillera         5506.0158   4680.2626   3457.1850   2348.7747
##   (04)Guairá             3004.6626   2524.4458   1768.4875   1135.3573
##   (05)Caaguazú          10394.2146   8423.4639   5809.5652   3657.4552
##   (06)Caazapá            2326.6036   2046.8597   1505.6309    992.7202
##   (07)Itapúa             5243.7642   4554.7334   3356.2420   2249.9370
##   (08)Misiones          13447.2671  10177.3821   6542.8929   3776.8546
##   (09)Paraguarí         36903.7918  28167.8769  18518.1104  11215.1364
##   (10)Alto Paraná        2072.5118   1766.5510   1334.3931    902.6315
##   (11)Central            2585.2168   2048.7050   1396.3977    862.5902
##   (12)Ñeembucú           3762.2368   2842.8608   1861.9318   1128.4528
##   (13)Amambay            2086.1594   1647.4502   1126.2782    706.8125
##   (14)Canindeyú          1092.9247    836.9910    568.3122    363.3880
##   (15)Presidente Hayes    312.6127    260.0653    214.2974    165.0063
##   (16)Boquerón           4336.1346   3601.2778   2495.8080   1598.8976
##   (17)Alto Paraguay      9483.7391   7634.6902   5331.5501   3467.0824
##                       edadt
## departamento              80 y más
##   (00)Asunción           4460.5461
##   (01)Concepción         1362.0897
##   (02)San Pedro          2572.7983
##   (03)Cordillera         2600.9602
##   (04)Guairá             1259.1415
##   (05)Caaguazú           3677.9247
##   (06)Caazapá            1051.8795
##   (07)Itapúa             2490.0948
##   (08)Misiones           3064.0994
##   (09)Paraguarí         10684.7497
##   (10)Alto Paraná         945.0613
##   (11)Central             854.7592
##   (12)Ñeembucú            969.8722
##   (13)Amambay             691.2022
##   (14)Canindeyú           361.8130
##   (15)Presidente Hayes    150.1211
##   (16)Boquerón           1722.3213
##   (17)Alto Paraguay      3505.9364

2.15 Crear un nuevo campo “quinquenio” basado en la edad

dataproylong2022$codquinquenio<-floor(dataproylong2022$edad/5)
table(dataproylong2022$codquinquenio)
## 
##  0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 
## 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 18
dataproylong2022$codquinquenio<-ifelse(dataproylong2022$codquinquenio>17,17,dataproylong2022$codquinquenio)
table(dataproylong2022$codquinquenio)
## 
##  0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 
## 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 18

2.16 Generar la variable de llave

dataproylong$tipo<-"Dato proyectado"
dataproylong$llave <- paste(dataproylong$edad, dataproylong$year, dataproylong$departamento, dataproylong$sexo, sep = "-")

names(dataproylong)
## [1] "edad"         "departamento" "sexo"         "year"         "valor"       
## [6] "edadt"        "tipo"         "llave"

2.17 Exportar la base de datos a un archivo Excel

library(writexl)

write.csv2(dataproylong, "D:/OneDrive/INE_Py/base_long_proyeccionesINE.csv")
base<-read.csv2("D:/OneDrive/INE_Py/base_long_proyeccionesINE.csv")
names(base)
## [1] "X"            "edad"         "departamento" "sexo"         "year"        
## [6] "valor"        "edadt"        "tipo"         "llave"

#JUNTAR LOS REGISTROS CON DATOS CENSALES CON LOS DATOS PROYECTADOS

2.18 UNIÓN DE LAS BASES

library(dplyr)
# Leer los archivos CSV en dataframes
base_proyecciones <- read.csv2("D:/OneDrive/INE_Py/base_long_proyeccionesINE.csv")
names(base_proyecciones)
## [1] "X"            "edad"         "departamento" "sexo"         "year"        
## [6] "valor"        "edadt"        "tipo"         "llave"
base_datos_censales <- read.csv2("D:/OneDrive/INE_Py/base_long_datoscensales_INE.csv")
names(base_datos_censales)
##  [1] "X"             "sexo"          "year"          "edad"         
##  [5] "departamento"  "valor"         "nuevo_valor"   "codquinquenio"
##  [9] "quinquenio"    "tipo"          "llave"

2.19 Conservar solo las variables comunes

columnas_comunes <- c("edad", "departamento", "sexo", "year", "valor", "tipo", "llave")

base_proyecciones <- select(base_proyecciones, all_of(columnas_comunes))
base_datos_censales <- select(base_datos_censales, all_of(columnas_comunes))
# Realizar un append de las bases de datos
resultado_append <- rbind(base_proyecciones, base_datos_censales)
write.csv2(resultado_append, "D:/OneDrive/INE_Py/base_INE_proyectados_y_censales.csv")
base<-read.csv2("D:/OneDrive/INE_Py/base_INE_proyectados_y_censales.csv")
names(base)
## [1] "X"            "edad"         "departamento" "sexo"         "year"        
## [6] "valor"        "tipo"         "llave"
# Crear una base que suma la población por año, tipo, sexo y departamento
base_agregada <- aggregate(valor ~ year + tipo + sexo, data = base, FUN = sum)

# Renombrar la columna resultante
colnames(base_agregada) <- c("year", "tipo", "sexo", "valor")

# Visualizar las primeras filas de la base agregada
head(base_agregada)
year tipo sexo valor
2002 Dato censal Hombres 2603242
2012 Dato censal Hombres 2425510
2022 Dato censal Hombres 2828594
2000 Dato proyectado Hombres 2671656
2001 Dato proyectado Hombres 2722569
2002 Dato proyectado Hombres 2772953
library(ggplot2)

# Crear un gráfico de barras apiladas con la suma de la población por año, tipo y sexo
ggplot(base_agregada, aes(x = as.factor(year), y = valor, fill = tipo)) +
  geom_bar(stat = "identity", position = "dodge", alpha = 0.5) +
  labs(title = "Suma de Población por Año y Tipo (Censal vs. Proyectado)",
       x = "Año",
       y = "Suma de Población") +
  facet_grid(. ~ sexo) +
  theme_minimal() +
  theme(axis.text.x = element_text(angle = 90, hjust = 1))  # Rotar el texto en el eje x

library(ggplot2)
library(plotly)
## 
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
## 
##     last_plot
## The following object is masked from 'package:stats':
## 
##     filter
## The following object is masked from 'package:graphics':
## 
##     layout
# Crear un gráfico de barras apiladas con la suma de la población por año, tipo y sexo
gg <- ggplot(base_agregada, aes(x = as.factor(year), y = valor, fill = tipo)) +
  geom_bar(stat = "identity", position = "dodge", alpha = 0.5) +
  labs(title = "Suma de Población por Año y Tipo (Censal vs. Proyectado)",
       x = "Año",
       y = "Suma de Población") +
  facet_grid(. ~ sexo) +
  theme_minimal() +
  theme(axis.text.x = element_text(angle = 90, hjust = 1) )

# Convertir el gráfico de ggplot2 en una gráfica interactiva
ggplotly(gg)