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

Instalar paquetes y llamar librerías

#install.packages("WDI")
library(WDI)
#install.packages("wbstats")
library(wbstats)
#install.packages("tidyverse")
library(tidyverse)
#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:65          Length:65          Length:65          Min.   :1960  
##  Class :character   Class :character   Class :character   1st Qu.:1976  
##  Mode  :character   Mode  :character   Mode  :character   Median :1992  
##                                                           Mean   :1992  
##                                                           3rd Qu.:2008  
##                                                           Max.   :2024  
##  NY.GDP.PCAP.CD        unit            obs_status          footnote        
##  Min.   :  355.1   Length:65          Length:65          Length:65         
##  1st Qu.: 1465.5   Class :character   Class :character   Class :character  
##  Median : 4183.9   Mode  :character   Mode  :character   Mode  :character  
##  Mean   : 5238.3                                                           
##  3rd Qu.: 9097.9                                                           
##  Max.   :14185.8                                                           
##   last_updated       
##  Min.   :2026-02-24  
##  1st Qu.:2026-02-24  
##  Median :2026-02-24  
##  Mean   :2026-02-24  
##  3rd Qu.:2026-02-24  
##  Max.   :2026-02-24
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           355. <NA>  <NA>       <NA>    
## 2 MX    MEX   Mexico   1961           374. <NA>  <NA>       <NA>    
## 3 MX    MEX   Mexico   1962           388. <NA>  <NA>       <NA>    
## 4 MX    MEX   Mexico   1963           420. <NA>  <NA>       <NA>    
## 5 MX    MEX   Mexico   1964           481. <NA>  <NA>       <NA>    
## 6 MX    MEX   Mexico   1965           506. <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   2019         10370. <NA>  <NA>       <NA>    
## 2 MX    MEX   Mexico   2020          8841. <NA>  <NA>       <NA>    
## 3 MX    MEX   Mexico   2021         10314. <NA>  <NA>       <NA>    
## 4 MX    MEX   Mexico   2022         11406. <NA>  <NA>       <NA>    
## 5 MX    MEX   Mexico   2023         13861. <NA>  <NA>       <NA>    
## 6 MX    MEX   Mexico   2024         14186. <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 paises

gdp_varios <- wb_data(country = c("MX","CU","PE","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()
## Warning: Removed 14 rows containing missing values or values outside the scale range
## (`geom_point()`).

LS0tDQp0aXRsZTogIldvcmxkIEJhbmsiDQphdXRob3I6ICJIZWxlbmEgUmFtw6xyZXogR2lsZXMiDQpkYXRlOiAiMjYtMDItMjYiDQpvdXRwdXQ6IA0KICBodG1sX2RvY3VtZW50Og0KICAgIHRvYzogVFJVRQ0KICAgIHRvY19mbG9hdDogVFJVRQ0KICAgIGNvZGVfZG93bmxvYWQ6IFRSVUUNCiAgICB0aGVtZTogeWV0aQ0KLS0tDQoNCiFbXShodHRwczovL21lZGlhLmlzdG9ja3Bob3RvLmNvbS9pZC8xMzE1Nzk5NTY1L2VzL3ZlY3Rvci9iYW5jby1tdW5kaWFsLmpwZz9zPTYxMng2MTImdz0wJms9MjAmYz1SM2treFhzWGZoMjM0OWFmVGpQbUg1Wm83TTdHTXhDUHBkMFVoWmVaZVFBPSkNCg0KIyA8c3BhbiBzdHlsZT0iY29sb3I6IGJsdWU7Ij5JbnRyb2R1Y2Npw7NuPC9zcGFuPg0KTG9zIGRhdG9zIGRlbCAqV29ybGQgQmFuayBJbmRpY2F0b3JzIChXQkkpKiBzb24gdW5hIGZ1ZW50ZSBjb21wbGV0YSBkZSBpbmRpY2Fkb3JlcyAqKmVjb27Ds21pY29zKiosICoqc29jaWFsZXMqKiB5ICoqbWVkaW9hbWJpZW50YWxlcyoqIGRlIG3DoXMgZGUgMjAwIHBhw61zZXMuICANCltGdWVudGU6IFdCXShodHRwczovL2RhdGEud29ybGRiYW5rLm9yZy9pbmRpY2F0b3I/dGFiPWFsbCkNCg0KIyA8c3BhbiBzdHlsZT0iY29sb3I6IGJsdWU7Ij5JbnN0YWxhciBwYXF1ZXRlcyB5IGxsYW1hciBsaWJyZXLDrWFzPC9zcGFuPg0KYGBge3IgbWVzc2FnZT1GQUxTRSwgd2FybmluZz1GQUxTRX0NCiNpbnN0YWxsLnBhY2thZ2VzKCJXREkiKQ0KbGlicmFyeShXREkpDQojaW5zdGFsbC5wYWNrYWdlcygid2JzdGF0cyIpDQpsaWJyYXJ5KHdic3RhdHMpDQojaW5zdGFsbC5wYWNrYWdlcygidGlkeXZlcnNlIikNCmxpYnJhcnkodGlkeXZlcnNlKQ0KI2luc3RhbGwucGFja2FnZXMoImdncGxvdDIiKQ0KbGlicmFyeShnZ3Bsb3QyKQ0KYGBgDQoNCiMgPHNwYW4gc3R5bGU9ImNvbG9yOiBibHVlOyI+SW5mb3JtYWNpw7NuIGRlIDEgcGHDrXM8L3NwYW4+DQpgYGB7cn0NCmdkcF9tZXhpY28gPC0gd2JfZGF0YShjb3VudHJ5ID0gIk1YIiwgaW5kaWNhdG9yID0gIk5ZLkdEUC5QQ0FQLkNEIiwgc3RhcnRfZGF0ZT0gMTkwMCwgZW5kX2RhdGU9MjAyNCkNCiMgKElTTzMxNjYtMiBjb3VudHJ5IGNvZGVzKQ0Kc3VtbWFyeShnZHBfbWV4aWNvKQ0KaGVhZChnZHBfbWV4aWNvKQ0KdGFpbChnZHBfbWV4aWNvKQ0KDQpnZ3Bsb3QoZ2RwX21leGljbywgYWVzKHggPSBkYXRlLCB5ID0gTlkuR0RQLlBDQVAuQ0QpKSArDQogIGdlb21fcG9pbnQoKQ0KDQpnZ3Bsb3QoZ2RwX21leGljbywgYWVzKHggPSBkYXRlLCB5ID0gTlkuR0RQLlBDQVAuQ0QpKSArDQogIGdlb21fY29sKCkNCg0KZ2dwbG90KGdkcF9tZXhpY28sIGFlcyh4ID0gZGF0ZSwgeSA9IE5ZLkdEUC5QQ0FQLkNEKSkgKw0KICBnZW9tX2NvbChmaWxsID0gImN5YW4iKSArDQogIGdlb21fcG9pbnQoY29sb3IgPSAiYmx1ZSIpICsNCiAgbGFicyh0aXRsZT0iUHJvZHVjdG8gSW50ZXJubyBCcnV0byBlbiBNw6l4aWNvIChVUyBwZXIgQ2FwaXRhKSIsIHggPSAiQcOxbyIsIHkgPSAiUElCIikNCg0KYGBgDQoNCiMgPHNwYW4gc3R5bGU9ImNvbG9yOiBibHVlOyI+SW5mb3JtYWNpw7NuIGRlIHZhcmlvcyBwYWlzZXM8L3NwYW4+DQpgYGB7cn0NCmdkcF92YXJpb3MgPC0gd2JfZGF0YShjb3VudHJ5ID0gYygiTVgiLCJDVSIsIlBFIiwiQ0wiKSwgaW5kaWNhdG9yID0gIk5ZLkdEUC5QQ0FQLkNEIiwgc3RhcnRfZGF0ZT0gMTkwMCwgZW5kX2RhdGU9MjAyNCkNCg0KZ2dwbG90KGdkcF92YXJpb3MsIGFlcyh4PWRhdGUsIHk9TlkuR0RQLlBDQVAuQ0QsIGNvbG9yPWNvdW50cnkpKSsNCiAgZ2VvbV9wb2ludCgpDQpgYGANCg0K