wbstats 1.2.0 este acum pe CRAN

URMĂREȘTE-NE
16,065FaniÎmi place
1,142CititoriConectați-vă

(Acest articol a fost publicat pentru prima dată pe https://pacha.dev/blogși cu amabilitate a contribuit la R-bloggeri). (Puteți raporta problema legată de conținutul acestei pagini aici)


Doriți să vă distribuiți conținutul pe R-bloggeri? dați clic aici dacă aveți un blog, sau aici dacă nu aveți.

Înainte de conținutul principal: creez o comunitate R pe Grupuri Google. Vă puteți alătura grupului folosind acest formular.

  • A eliminat dplyr, tidyr, readr, tidyselect, tibble, rlangși magrittr dependențe în favoarea data.table (pentru date de legare și remodelare a rândurilor) și baza R.
  • A eliminat stringr şi lubridate dependențe în favoarea șirului R de bază și a gestionării datei.
  • Funcțiile revin acum data.table obiecte în loc de tibbles.
  • am adaugat wb_country_coverage() pentru a rezuma datele disponibile înainte de a descărca seria.
  • Am eliminat toți indicatorii retrași și pe cei care returnează tabele goale din wb_cachelist.

Puteți instala cea mai recentă versiune de la CRAN cu

install.packages("wbstats")
remotes::install_github("pachadotdev/wbstats")
library(wbstats)

# Population for every country from 1960 until present
d <- wb_data("SP.POP.TOTL")
    
head(d)

#> # A tibble: 6 × 9
#>   iso2c iso3c country    date SP.POP.TOTL unit  obs_status footnote last_updated
#>                                   
#> 1 AF    AFG   Afghanis…  2024    42647492               2025-07-01  
#> 2 AF    AFG   Afghanis…  2023    41454761               2025-07-01  
#> 3 AF    AFG   Afghanis…  2022    40578842               2025-07-01  
#> 4 AF    AFG   Afghanis…  2021    40000412               2025-07-01  
#> 5 AF    AFG   Afghanis…  2020    39068979               2025-07-01  
#> 6 AF    AFG   Afghanis…  2019    37856121               2025-07-01
d <- wb_country_coverage("gross domestic product", c("Mexico", "Chile"), 2010, 2020)
d

#      iso2c  iso3c country pct_complete  from    to  nobs         indicator
#                               
#  1:     CL    CHL   Chile         56.5  1960  2100    52     CC.EG.INTS.KW
#  2:     MX    MEX  Mexico         56.5  1960  2100    52     CC.EG.INTS.KW
#  3:     CL    CHL   Chile         34.8  1960  2025    23 EG.EGY.PRIM.PP.KD
#  4:     MX    MEX  Mexico         34.8  1960  2025    23 EG.EGY.PRIM.PP.KD
#  5:     CL    CHL   Chile         53.0  1960  2025    35 EG.GDP.PUSE.KO.PP
# ---                                                                       
# 82:     MX    MEX  Mexico         54.5  1960  2025    36    PA.NUS.PRVT.PP
# 83:     CL    CHL   Chile         53.0  1960  2025    35 SL.GDP.PCAP.EM.KD
# 84:     MX    MEX  Mexico         53.0  1960  2025    35 SL.GDP.PCAP.EM.KD
# 85:     CL    CHL   Chile        100.0  2004  2023    20   SPI.D5.2.5.HOUS
# 86:     MX    MEX  Mexico         40.0  2004  2023     8   SPI.D5.2.5.HOUS

# countries with less than 15% coverage for any variable
d(pct_complete < 15, )

#     iso2c  iso3c country pct_complete  from    to  nobs                 indicator
#                                      
# 1:     MX    MEX  Mexico         12.9  1960  2100    13 UIS.XUNIT.GDPCAP.02.FSGOV

Gapminder al lui Hans Rosling folosind wbstats

library(wbstats)
library(data.table)
library(tinyplot)

my_indicators <- c(
  life_exp = "SP.DYN.LE00.IN",
  gdp_capita ="NY.GDP.PCAP.CD",
  pop = "SP.POP.TOTL"
)

d <- wb_data(my_indicators, start_date = 2016)

d <- merge(d, wb_countries(), "iso3c")
d <- na.omit(d)

png(file="man/figures/readme-gdppc-vs-lifexp.png", width = 900, height = 600)
tinyplot(
  life_exp ~ gdp_capita | region,
  data = d,
  cex = d$pop,
  pch = 19,
  alpha = 0.7,
  palette = "tableau",
  log = "x",
  xaxl = "$",
  main = "An Example of Hans Rosling's Gapminder using wbstats",
  xlab = "GDP per Capita (log scale)",
  ylab = "Life Expectancy at Birth",
  cap = "Source: World Bank"
)
dev.off()

Doar în cazul în care acest lucru este util.

Ceea ce a funcționat pentru mine pentru a interoga datele a fost să folosesc format şi per_page argumente. Tu nu nevoie de acest lucru pentru a funcționa cu pachetul.

Puncte finale utilizate pentru datele pachetului:

  • https://api.worldbank.org/v2/indicators?format=json&per_page=30000
  • https://api.worldbank.org/v2/source?format=json&per_page=100
  • https://api.worldbank.org/v2/topics?format=json&per_page=100
  • https://api.worldbank.org/v2/regions?format=json&per_page=100
  • https://api.worldbank.org/v2/incomelevel?format=json&per_page=10
  • https://api.worldbank.org/v2/lendingtypes?format=json&per_page=10
  • https://api.worldbank.org/v2/languages?format=json&per_page=100

Părți din această descriere a punctelor finale API provin de la https://dlthub.com/context/source/world-bank-indicators-api și altele doar testau lucruri precum „limba” și „limbi” actualizarea tp wbstats. Nu am creat acest pachet, doar mi-am asumat întreținerea acestuia, deoarece este o resursă foarte valoroasă.

Resursă Punct final Metodă Descriere
indicatori /v2/indicator OBŢINE Acces la aproape 28.000 de indicatori de serie
ţări /v2/țara/toate OBŢINE Toate țările
country_indicator /v2/country/{country_id}/indicator/{indicator_id} OBŢINE Indicator specific pentru o țară
surse /v2/sursa OBŢINE Toate sursele de date
indicatori_sursă /v2/source/{source_id}/indicators OBŢINE Indicatori pentru o anumită sursă
subiecte /v2/subiecte OBŢINE Metadate despre subiectele indicatorilor
regiuni /v2/țara/toate OBŢINE Toate regiunile
income_levels /v2/country/income_levels OBŢINE Toate nivelurile de venit
tipuri_de_împrumut /v2/country/lending_types OBŢINE Toate tipurile de creditare
limbi /v2/country/langages OBŢINE Toate limbile

Am adăugat asta pentru că nu am găsit prea multe informații în documentația oficială.

Dominic Botezariu
Dominic Botezariuhttps://www.noobz.ro/
Creator de site și redactor-șef.

Cele mai noi știri

Pe același subiect

LĂSAȚI UN MESAJ

Vă rugăm să introduceți comentariul dvs.!
Introduceți aici numele dvs.