Introduction

2024-01-19

rgho is an R package to access WHO GHO data from R via the GHO OData API, providing a simple query interface to the World Health Organization’s data and statistics content.

The Global Health Observatory

As stated by the WHO website: The GHO data repository contains an extensive list of indicators, which can be selected by theme or through a multi-dimension query functionality. It is the World Health Organization’s main health statistics repository.

Data structure

GHO data is composed of indicators structured in dimensions. The list of dimensions is available in vignette("b-dimensions", "rgho"), the list of indicators for the GHO dimension (the main dimension) in vignette("c-values-gho", "rgho")).

It is possible to access dimensions with get_gho_dimensions():

get_gho_dimensions()
## A 'GHO' object of 143 elements.
## 
##                   Code                                    Title
## 1      ADVERTISINGTYPE        SUBSTANCE_ABUSE_ADVERTISING_TYPES
## 2             AGEGROUP                                Age Group
## 3          ALCOHOLTYPE                           Beverage Types
## 4     AMRGLASSCATEGORY                       AMR GLASS Category
## 5              ARCHIVE                             Archive date
## 6 ASSISTIVETECHBARRIER Barriers to accessing assistive products
## ...
## 
## (Printing 6 first elements.)

And codes for a given dimension with get_gho_values():

get_gho_values(dimension = "COUNTRY")
## A 'GHO' object of 233 elements.
## 
##   Code       Title
## 1  ABW       Aruba
## 2  AFG Afghanistan
## 3  AGO      Angola
## 4  AIA    Anguilla
## 5  ALB     Albania
## 6  AND     Andorra
## ...
## 
## (Printing 6 first elements.)
get_gho_values(dimension = "GHO")
## A 'GHO' object of 2833 elements.
## 
##                      Code
## 1  Adult_curr_cig_smoking
## 2        Adult_curr_e-cig
## 3    Adult_curr_smokeless
## 4  Adult_curr_tob_smoking
## 5      Adult_curr_tob_use
## 6 Adult_daily_cig_smoking
##                                                          Title
## 1     Prevalence of current cigarette smoking among adults (%)
## 2       Prevalence of current e-cigarette use among adults (%)
## 3 Prevalence of current smokeless tobacco use among adults (%)
## 4       Prevalence of current tobacco smoking among adults (%)
## 5           Prevalence of current tobacco use among adults (%)
## 6       Prevalence of daily cigarette smoking among adults (%)
## ...
## 
## (Printing 6 first elements.)

Data download

An indicator can be downloaded as a data_frame with get_gho_data(). Here we use MDG_0000000001, Infant mortality rate (probability of dying between birth and age 1 per 1000 live births):

result <- get_gho_data(
  code = "MDG_0000000001"
)

print(result)
## A 'GHO' object of 37328 elements.
## 
##        Id  IndicatorCode ParentLocationCode        ParentLocation
## 1 1403778 MDG_0000000001               <NA>                  <NA>
## 2 1448715 MDG_0000000001                EUR                Europe
## 3  378739 MDG_0000000001                AMR              Americas
## 4 1035891 MDG_0000000001                EMR Eastern Mediterranean
## 5  874412 MDG_0000000001                AFR                Africa
## 6  355877 MDG_0000000001               SEAR       South-East Asia
##                    Value NumericValue       Low      High
## 1    11.76 [11.33-12.42]     11.75755  11.32657  12.42492
## 2       2.48 [2.29-2.68]      2.47646   2.28634   2.67760
## 3 160.46 [137.26-187.84]    160.45813 137.26335 187.83739
## 4  104.51 [84.65-136.78]    104.50555  84.64581 136.77897
## 5 119.68 [110.63-128.92]    119.67624 110.62894 128.91993
## 6 215.57 [181.37-258.94]    215.57298 181.36834 258.94449
##                        Date TimeDimensionValue        TimeDimensionBegin
## 1 2023-02-16T07:31:03+01:00               2019 2019-01-01T00:00:00+01:00
## 2 2023-02-16T07:56:51+01:00               2021 2021-01-01T00:00:00+01:00
## 3 2023-02-16T07:54:36+01:00               1954 1954-01-01T00:00:00+01:00
## 4 2023-02-16T08:07:16+01:00               1998 1998-01-01T00:00:00+01:00
## 5 2023-02-16T07:55:59+01:00               1990 1990-01-01T00:00:00+01:00
## 6 2023-02-16T07:53:44+01:00               1950 1950-01-01T00:00:00+01:00
##            TimeDimensionEnd REGION COUNTRY GLOBAL YEAR      SEX
## 1 2019-12-31T00:00:00+01:00    AMR    <NA>   <NA> 2019 SEX_BTSX
## 2 2021-12-31T00:00:00+01:00   <NA>     CZE   <NA> 2021  SEX_MLE
## 3 1954-12-31T00:00:00+01:00   <NA>     BRA   <NA> 1954  SEX_MLE
## 4 1998-12-31T00:00:00+01:00   <NA>     SOM   <NA> 1998 SEX_BTSX
## 5 1990-12-31T00:00:00+01:00   <NA>     COD   <NA> 1990 SEX_BTSX
## 6 1950-12-31T00:00:00+01:00   <NA>     BGD   <NA> 1950 SEX_FMLE
## ...
## 
## (Printing 6 first elements.)

Filter requests

The filter argument in get_gho_data() allows request filtering:

result <- get_gho_data(
  code = "MDG_0000000001",
  filter = list(
    REGION = "EUR",
    YEAR = 2015
  )
)

print(result)
## A 'GHO' object of 3 elements.
## 
##        Id  IndicatorCode            Value NumericValue     Low    High
## 1 1334428 MDG_0000000001 8.09 [7.84-8.37]      8.09124 7.83819 8.36952
## 2 1334430 MDG_0000000001 8.96 [8.67-9.28]      8.95834 8.66572 9.28486
## 3 1334429 MDG_0000000001 7.18 [6.95-7.44]      7.18045 6.95096 7.44140
##                        Date TimeDimensionValue        TimeDimensionBegin
## 1 2023-03-01T16:34:25+01:00               2015 2015-01-01T00:00:00+01:00
## 2 2023-03-01T16:34:32+01:00               2015 2015-01-01T00:00:00+01:00
## 3 2023-03-01T16:34:39+01:00               2015 2015-01-01T00:00:00+01:00
##            TimeDimensionEnd REGION YEAR      SEX
## 1 2015-12-31T00:00:00+01:00    EUR 2015 SEX_BTSX
## 2 2015-12-31T00:00:00+01:00    EUR 2015  SEX_MLE
## 3 2015-12-31T00:00:00+01:00    EUR 2015 SEX_FMLE

Other parameters

For details about how the requests are performed and the options available (especially proxy settings) see vignette("e-details", "rgho").