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)
## Warning: package 'wbstats' was built under R version 4.4.3
#install.packages("tidyverse")
library(tidyverse)
## Warning: package 'tidyverse' was built under R version 4.4.3
## Warning: package 'ggplot2' was built under R version 4.4.3
## ── 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   4.0.2     āœ” tibble    3.2.1
## āœ” lubridate 1.9.4     āœ” tidyr     1.3.1
## āœ” purrr     1.0.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
# 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("CA","USA","CH"), 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()

LS0tDQp0aXRsZTogIldvcmxkIEJhbmsiDQphdXRob3I6ICJSZWJlY2EgUmVjaW8iDQpkYXRlOiAiMjYvMDIvMjAyNiINCm91dHB1dDogDQogIGh0bWxfZG9jdW1lbnQ6DQogICAgdG9jOiBUUlVFDQogICAgdG9jX2Zsb2F0OiBUUlVFDQogICAgY29kZV9kb3dubG9hZDogVFJVRQ0KICAgIHRoZW1lOiB5ZXRpDQotLS0NCg0KIVtdKGRpbmVyby5wbmcpDQoNCiMgPHNwYW4gc3R5bGU9ImNvbG9yOiBibHVlOyI+SW50cm9kdWNjacOzbjwvc3Bhbj4NCkxvcyBkYXRvcyBkZWwgKldvcmxkIEJhbmsgSW5kaWNhdG9ycyAoV0JJKSogc29uIHVuYSBmdWVudGUgY29tcGxldGEgZGUgaW5kaWNhZG9yZXMgKiplY29uw7NtaWNvcyoqLCAqKnNvY2lhbGVzKiogeSAqKm1lZGlvYW1iaWVudGFsZXMqKiBkZSBtw6FzIGRlIDIwMCBwYcOtc2VzLiAgDQpbRnVlbnRlOiBXQl0oaHR0cHM6Ly9kYXRhLndvcmxkYmFuay5vcmcvaW5kaWNhdG9yP3RhYj1hbGwpDQoNCiMgPHNwYW4gc3R5bGU9ImNvbG9yOiBibHVlOyI+SW5zdGFsYXIgcGFxdWV0ZXMgeSBsbGFtYXIgbGlicmVyw61hczwvc3Bhbj4NCmBgYHtyIG1lc3NhZ2U9RkFMU0UsIHdhcm5pbmc9RkFMU0V9DQojaW5zdGFsbC5wYWNrYWdlcygiV0RJIikNCmxpYnJhcnkoV0RJKQ0KYGBgDQoNCmBgYHtyfQ0KI2luc3RhbGwucGFja2FnZXMoIndic3RhdHMiKQ0KbGlicmFyeSh3YnN0YXRzKQ0KYGBgDQoNCmBgYHtyfQ0KI2luc3RhbGwucGFja2FnZXMoInRpZHl2ZXJzZSIpDQpsaWJyYXJ5KHRpZHl2ZXJzZSkNCmBgYA0KDQpgYGB7cn0NCiMgaW5zdGFsbC5wYWNrYWdlcygiZ2dwbG90MiIpDQpsaWJyYXJ5KGdncGxvdDIpDQpgYGANCg0KIyA8c3BhbiBzdHlsZT0iY29sb3I6IGJsdWU7Ij5JbmZvcm1hY2nDs24gZGUgMSBwYcOtczwvc3Bhbj4NCmBgYHtyfQ0KZ2RwX21leGljbyA8LSB3Yl9kYXRhKGNvdW50cnkgPSAiTVgiLCBpbmRpY2F0b3IgPSAiTlkuR0RQLlBDQVAuQ0QiLCBzdGFydF9kYXRlPSAxOTAwLCBlbmRfZGF0ZT0yMDI0KQ0KIyAoSVNPMzE2Ni0yIGNvdW50cnkgY29kZXMpDQpzdW1tYXJ5KGdkcF9tZXhpY28pDQpoZWFkKGdkcF9tZXhpY28pDQp0YWlsKGdkcF9tZXhpY28pDQoNCmdncGxvdChnZHBfbWV4aWNvLCBhZXMoeCA9IGRhdGUsIHkgPSBOWS5HRFAuUENBUC5DRCkpICsNCiAgZ2VvbV9wb2ludCgpDQoNCmdncGxvdChnZHBfbWV4aWNvLCBhZXMoeCA9IGRhdGUsIHkgPSBOWS5HRFAuUENBUC5DRCkpICsNCiAgZ2VvbV9jb2woKQ0KDQpnZ3Bsb3QoZ2RwX21leGljbywgYWVzKHggPSBkYXRlLCB5ID0gTlkuR0RQLlBDQVAuQ0QpKSArDQogIGdlb21fY29sKGZpbGwgPSAiY3lhbiIpICsNCiAgZ2VvbV9wb2ludChjb2xvciA9ICJibHVlIikgKw0KICBsYWJzKHRpdGxlPSJQcm9kdWN0byBJbnRlcm5vIEJydXRvIGVuIE3DqXhpY28gKFVTIHBlciBDYXBpdGEpIiwgeCA9ICJBw7FvIiwgeSA9ICJQSUIiKQ0KDQpgYGANCg0KIyA8c3BhbiBzdHlsZT0iY29sb3I6IGJsdWU7Ij5JbmZvcm1hY2nDs24gZGUgdmFyaW9zIHBhaXNlczwvc3Bhbj4NCmBgYHtyfQ0KZ2RwX3ZhcmlvcyA8LSB3Yl9kYXRhKGNvdW50cnkgPSBjKCJDQSIsIlVTQSIsIkNIIiksIGluZGljYXRvciA9ICJOWS5HRFAuUENBUC5DRCIsIHN0YXJ0X2RhdGU9IDE5MDAsIGVuZF9kYXRlPTIwMjQpDQoNCmdncGxvdChnZHBfdmFyaW9zLCBhZXMoeD1kYXRlLCB5PU5ZLkdEUC5QQ0FQLkNELCBjb2xvcj1jb3VudHJ5KSkrDQogIGdlb21fcG9pbnQoKQ0KYGBgDQoNCg==