Introducción

Los datos del World Bank Indicators (WBI) son una fuente completa de indicadores económicos, sociales y medioambientales de más de 200 países. [Fuente: WB] (https:://data.worldbank.org/indicador?tab=all)

Instalar paquetes y llamar librerías

#install.packages("tidyverse") #Paquete global para manipulación y análisis de datos
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ readr     2.1.5
## ✔ forcats   1.0.0     ✔ stringr   1.5.1
## ✔ ggplot2   3.5.1     ✔ tibble    3.2.1
## ✔ lubridate 1.9.3     ✔ tidyr     1.3.1
## ✔ purrr     1.0.2     
## ── 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
#install.packages("WDI")
library(WDI)

#install.packages("wbstats")
library(wbstats)

#install.packages("ggplot2")
library(ggplot2)

Información de 1 país

gdp_mexico <- wb_data(country = "MX", indicator = "NY.GDP.PCAP.CD", start_date=1900, end_date=2024)
#(ISO3166-2 country codes)
summary(gdp_mexico)
##     iso2c              iso3c             country               date     
##  Length:64          Length:64          Length:64          Min.   :1960  
##  Class :character   Class :character   Class :character   1st Qu.:1976  
##  Mode  :character   Mode  :character   Mode  :character   Median :1992  
##                                                           Mean   :1992  
##                                                           3rd Qu.:2007  
##                                                           Max.   :2023  
##  NY.GDP.PCAP.CD        unit            obs_status          footnote        
##  Min.   :  359.5   Length:64          Length:64          Length:64         
##  1st Qu.: 1431.5   Class :character   Class :character   Class :character  
##  Median : 4017.8   Mode  :character   Mode  :character   Mode  :character  
##  Mean   : 5132.1                                                           
##  3rd Qu.: 8959.9                                                           
##  Max.   :13926.1                                                           
##   last_updated       
##  Min.   :2024-06-28  
##  1st Qu.:2024-06-28  
##  Median :2024-06-28  
##  Mean   :2024-06-28  
##  3rd Qu.:2024-06-28  
##  Max.   :2024-06-28
head(gdp_mexico)
## # A tibble: 6 × 9
##   iso2c iso3c country  date NY.GDP.PCAP.CD unit  obs_status footnote
##   <chr> <chr> <chr>   <dbl>          <dbl> <chr> <chr>      <chr>   
## 1 MX    MEX   Mexico   1960           360. <NA>  <NA>       <NA>    
## 2 MX    MEX   Mexico   1961           378. <NA>  <NA>       <NA>    
## 3 MX    MEX   Mexico   1962           393. <NA>  <NA>       <NA>    
## 4 MX    MEX   Mexico   1963           424. <NA>  <NA>       <NA>    
## 5 MX    MEX   Mexico   1964           486. <NA>  <NA>       <NA>    
## 6 MX    MEX   Mexico   1965           511. <NA>  <NA>       <NA>    
## # ℹ 1 more variable: last_updated <date>
tail(gdp_mexico)
## # A tibble: 6 × 9
##   iso2c iso3c country  date NY.GDP.PCAP.CD unit  obs_status footnote
##   <chr> <chr> <chr>   <dbl>          <dbl> <chr> <chr>      <chr>   
## 1 MX    MEX   Mexico   2018         10130. <NA>  <NA>       <NA>    
## 2 MX    MEX   Mexico   2019         10435. <NA>  <NA>       <NA>    
## 3 MX    MEX   Mexico   2020          8896. <NA>  <NA>       <NA>    
## 4 MX    MEX   Mexico   2021         10363. <NA>  <NA>       <NA>    
## 5 MX    MEX   Mexico   2022         11477. <NA>  <NA>       <NA>    
## 6 MX    MEX   Mexico   2023         13926. <NA>  <NA>       <NA>    
## # ℹ 1 more variable: last_updated <date>
ggplot(gdp_mexico, aes(x = date, y = NY.GDP.PCAP.CD)) +
  geom_point()

ggplot(gdp_mexico, aes(x = date, y = NY.GDP.PCAP.CD)) +
  geom_col()

ggplot(gdp_mexico, aes(x = date, y = NY.GDP.PCAP.CD)) +
  geom_col(fill = "cyan") +
  geom_point(color = "blue") +
  labs(title = "Producto Interno Bruto en México (US per Capita)", x = "Año", y = "PIB")

Información de varios países

gdp_varios <- wb_data(country = c("MX","EC","CL"), indicator = "NY.GDP.PCAP.CD", start_date=1900, end_date=2024)

ggplot(gdp_varios, aes(x = date, y = NY.GDP.PCAP.CD, color = country)) +
  geom_point()

LS0tCnRpdGxlOiAiV29ybGQgQmFuayIKYXV0aG9yOiAiU2VydmFuZG8gQmFjYSBEw61heiIKZGF0ZTogIjIwMjQtMDktMTEiCm91dHB1dDoKICBodG1sX2RvY3VtZW50OgogICAgdG9jOiBUUlVFCiAgICB0b2NfZmxvYXQ6IFRSVUUKICAgIGNvZGVfZG93bmxvYWQ6IFRSVUUKICAgIHRoZW1lOiB5ZXRpCi0tLQoKYGBge3Igc2V0dXAsIGluY2x1ZGU9RkFMU0V9CmtuaXRyOjpvcHRzX2NodW5rJHNldChlY2hvID0gVFJVRSkKYGBgCgohW10oL2Nsb3VkL3Byb2plY3QvV29ybGQtQmFuay0xMDI0eDU3MC0xLmpwZykKCiMgPHNwYW4gc3R5bGU9ImNvbG9yOmJsdWU7Ij5JbnRyb2R1Y2Npw7NuPC9zcGFuPgpMb3MgZGF0b3MgZGVsICpXb3JsZCBCYW5rIEluZGljYXRvcnMgKFdCSSkqIHNvbiB1bmEgZnVlbnRlIGNvbXBsZXRhIGRlIGluZGljYWRvcmVzICoqZWNvbsOzbWljb3MqKiwgKipzb2NpYWxlcyoqIHkgKiptZWRpb2FtYmllbnRhbGVzKiogZGUgbcOhcyBkZSAyMDAgcGHDrXNlcy4KW0Z1ZW50ZTogV0JdIChodHRwczo6Ly9kYXRhLndvcmxkYmFuay5vcmcvaW5kaWNhZG9yP3RhYj1hbGwpCgojIDxzcGFuIHN0eWxlPSJjb2xvcjpibHVlOyI+SW5zdGFsYXIgcGFxdWV0ZXMgeSBsbGFtYXIgbGlicmVyw61hczwvc3Bhbj4KYGBge3J9CiNpbnN0YWxsLnBhY2thZ2VzKCJ0aWR5dmVyc2UiKSAjUGFxdWV0ZSBnbG9iYWwgcGFyYSBtYW5pcHVsYWNpw7NuIHkgYW7DoWxpc2lzIGRlIGRhdG9zCmxpYnJhcnkodGlkeXZlcnNlKQoKI2luc3RhbGwucGFja2FnZXMoIldESSIpCmxpYnJhcnkoV0RJKQoKI2luc3RhbGwucGFja2FnZXMoIndic3RhdHMiKQpsaWJyYXJ5KHdic3RhdHMpCgojaW5zdGFsbC5wYWNrYWdlcygiZ2dwbG90MiIpCmxpYnJhcnkoZ2dwbG90MikKYGBgCgojIDxzcGFuIHN0eWxlPSJjb2xvcjpibHVlOyI+SW5mb3JtYWNpw7NuIGRlIDEgcGHDrXM8L3NwYW4+CmBgYHtyfQpnZHBfbWV4aWNvIDwtIHdiX2RhdGEoY291bnRyeSA9ICJNWCIsIGluZGljYXRvciA9ICJOWS5HRFAuUENBUC5DRCIsIHN0YXJ0X2RhdGU9MTkwMCwgZW5kX2RhdGU9MjAyNCkKIyhJU08zMTY2LTIgY291bnRyeSBjb2RlcykKc3VtbWFyeShnZHBfbWV4aWNvKQpoZWFkKGdkcF9tZXhpY28pCnRhaWwoZ2RwX21leGljbykKCmdncGxvdChnZHBfbWV4aWNvLCBhZXMoeCA9IGRhdGUsIHkgPSBOWS5HRFAuUENBUC5DRCkpICsKICBnZW9tX3BvaW50KCkKCmdncGxvdChnZHBfbWV4aWNvLCBhZXMoeCA9IGRhdGUsIHkgPSBOWS5HRFAuUENBUC5DRCkpICsKICBnZW9tX2NvbCgpCgpnZ3Bsb3QoZ2RwX21leGljbywgYWVzKHggPSBkYXRlLCB5ID0gTlkuR0RQLlBDQVAuQ0QpKSArCiAgZ2VvbV9jb2woZmlsbCA9ICJjeWFuIikgKwogIGdlb21fcG9pbnQoY29sb3IgPSAiYmx1ZSIpICsKICBsYWJzKHRpdGxlID0gIlByb2R1Y3RvIEludGVybm8gQnJ1dG8gZW4gTcOpeGljbyAoVVMgcGVyIENhcGl0YSkiLCB4ID0gIkHDsW8iLCB5ID0gIlBJQiIpCmBgYAoKIyA8c3BhbiBzdHlsZT0iY29sb3I6Ymx1ZTsiPkluZm9ybWFjacOzbiBkZSB2YXJpb3MgcGHDrXNlczwvc3Bhbj4KYGBge3J9CmdkcF92YXJpb3MgPC0gd2JfZGF0YShjb3VudHJ5ID0gYygiTVgiLCJFQyIsIkNMIiksIGluZGljYXRvciA9ICJOWS5HRFAuUENBUC5DRCIsIHN0YXJ0X2RhdGU9MTkwMCwgZW5kX2RhdGU9MjAyNCkKCmdncGxvdChnZHBfdmFyaW9zLCBhZXMoeCA9IGRhdGUsIHkgPSBOWS5HRFAuUENBUC5DRCwgY29sb3IgPSBjb3VudHJ5KSkgKwogIGdlb21fcG9pbnQoKQpgYGAK