Introducción

El Banco Mundial entrega información de múltiples indicadores asociados a distintas áreas de interés como: Cambio Climático, Economía, Salud, Educación, entre otros (https://datacatalog.worldbank.org/)

Utilizando herrramientas de gestión de datos como RStudio, podemos acceder a la API del Banco Mundial denominada WDI y trabajar con todos estos indicadores con el objetivo de realizar viusalizaciones, análizar de manera desciptiva y comparativa la evolución de los países.

En esta oportunidad elaboraremos una visualización basada en un gráfico de serie de tiempo para ver la evolución del ingreso per cápita de algunos países de la región.

Seleccionando el indicador

El comando WDISearch() permie realizar la búsqueda de los indicadores de interés y permite incluir vairables de país con codificación iso2c En esta oportunidad utilizaremos la data para extraer el ingreso per cápita.

WDIsearch(string = "GDP per capita (current US$)",
          field = "name",
          short = FALSE)
##      indicator name description sourceDatabase sourceOrganization

Busando la data en la API

Si queremos transformar la información obtenida en un dataframe, lo podemos hacer con el comando WDI() y usando la función data.frame. Asimismo, seleccionar los paises y la fecha de inicio y término de la serie de datos.

df <- data.frame(
WDI(country = c("CL",
                "BR",
                "CO",
                "MX",
                "PE",
                "1W",
                "ZJ"),
    indicator = "NY.GDP.PCAP.CD",
    start = 1980,
    end = 2020,
    extra = FALSE))

Si queremos explorar los primeros datos del dataframe lo podemos hacer por medio del comando head().

head(df)
##   iso2c country NY.GDP.PCAP.CD year
## 1    BR  Brazil       8717.186 2019
## 2    BR  Brazil       9001.234 2018
## 3    BR  Brazil       9925.386 2017
## 4    BR  Brazil       8710.097 2016
## 5    BR  Brazil       8814.001 2015
## 6    BR  Brazil      12112.588 2014

Filtrando la data

Se puede filtrar la informacióncon el comando filter() y diferenciar en distintos data frame para cada país.

Brasil <- df %>% filter(iso2c == "BR")
Colombia <- df %>% filter(iso2c == "CO")
Chile <- df %>% filter(iso2c == "CL")
Mexico <- df %>% filter(iso2c == "MX")
Peru <- df %>% filter(iso2c == "PE")
Mundo <- df %>% filter(iso2c == "1W")
LATAM <- df %>% filter(iso2c == "ZJ")

Graficando la data

El código que se señala permite realizar la viusalización a través de la libreria plotly.

trace0 <- Brasil$NY.GDP.PCAP.CD
trace1 <- Colombia$NY.GDP.PCAP.CD
trace2 <- Chile$NY.GDP.PCAP.CD
trace3 <- Mexico$NY.GDP.PCAP.CD
trace4 <- Peru$NY.GDP.PCAP.CD
trace5 <- Mundo$NY.GDP.PCAP.CD
trace6 <- LATAM$NY.GDP.PCAP.CD
dts <- Brasil$year
df.plot <- data.frame(dts, trace0, trace1, trace2, trace3, trace4, trace5, trace6)
p1 <- plot_ly(df.plot,
              x = ~dts,
              y = ~trace0,
              name = "Brasil",
              type = "scatter",
              mode = "lines+markers") %>% 
  add_trace(y = ~trace1,
            name = "Colombia",
            type = "scatter",
            mode = "lines+markers") %>% 
  add_trace(y = ~trace2,
            name = "Chile",
            type = "scatter",
            mode = "lines+markers") %>%
  add_trace(y = ~trace3,
            name = "Mexico",
            type = "scatter",
            mode = "lines+markers") %>%
  add_trace(y = ~trace4,
            name = "Peru",
            type = "scatter",
            mode = "lines+markers") %>%
  add_trace(y = ~trace5,
            name = "Mundo",
            type = "scatter",
            mode = "lines+markers") %>%
  add_trace(y = ~trace6,
            name = "LATAM",
            type = "scatter",
            mode = "lines+markers") %>%
  layout(title = "Ingreso per cápita LATAM",
         xaxis = list(title = "Year",
                      zeroline = FALSE),
         yaxis = list(title = "Ingreso Per cápita",
                      zeroline = FALSE))
p1

Fuente: - https://data.worldbank.org/indicator -