2017 PPP Benchmark results

Data - OECD

Info

Info

This dataset contains Purchasing Power Parities (PPPs) for all OECD countries. PPPs are the rates of currency conversion that eliminate the differences in price levels between countries. Per capita volume indices based on PPP converted data reflect only differences in the volume of goods and services produced. Comparative price levels are defined as the ratios of PPPs to exchange rates. They provide measures of the differences in price levels between countries. The PPPs are given in national currency units per US dollar. The price levels and volume indices derived using these PPPs have been rebased on the OECD average

Data on inflation

Code
inflation |>
  arrange(-(dataset == "PPP2017")) |>
  print_table_conditional_30()
source dataset
oecd PPP2017
bis CPI
ecb CES
eurostat nama_10_co3_p3
eurostat prc_hicp_cow
eurostat prc_hicp_ctrb
eurostat prc_hicp_inw
eurostat prc_hicp_manr
eurostat prc_hicp_midx
eurostat prc_hicp_mmor
eurostat prc_ppp_ind
eurostat sts_inpp_m
eurostat sts_inppd_m
eurostat sts_inppnd_m
fred cpi
fred inflation
imf CPI
oecd MEI_PRICES_PPI
oecd PRICES_CPI
wdi FP.CPI.TOTL.ZG
wdi NY.GDP.DEFL.KD.ZG

Last

obsTime Nobs
2017 56680

TAB

Code
PPP2017 |>
  left_join(PPP2017_var$TAB, by = "TAB") |>
  group_by(TAB, Tab) |>
  summarise(Nobs = n()) |>
  arrange(-Nobs) |>
  print_table_conditional()
TAB Tab Nobs
TAB1_1 Table 1.1: Nominal expenditure in national currency (millions) 2548
TAB1_3 Table 1.3: Nominal expenditure in US dollars (millions) 2548
TAB1_4 Table 1.4: Nominal expenditure per capita in US dollars 2548
TAB2_1 Table 2.1: Nominal expenditure in national currency (millions) 2548
TAB2_3 Table 2.3: Nominal expenditure in euros (millions) 2548
TAB2_4 Table 2.4: Nominal expenditure per capita in euros 2548
TAB1_11 Table 1.11: Price level indices (OECD=100) 2496
TAB1_12 Table 1.12: Purchasing Power Parities (USA=1) 2496
TAB1_2 Table 1.2: Purchasing Power Parities (OECD=1) 2496
TAB2_11 Table 2.11: Price level indices (EU28=100) 2496
TAB2_2 Table 2.2: Purchasing Power Parities (EU28=1) 2496
TAB1_7 Table 1.7: Real expenditure in PPPs (International US dollars: OECD PPP=1) 2444
TAB1_8 Table 1.8: Real expenditure per capita in PPPs (International US dollars: OECD PPP=1) 2444
TAB2_7 Table 2.7: Real expenditure in PPPs (EU28 PPP=1) 2444
TAB2_8 Table 2.8: Real expenditure per capita in PPPs (EU28 PPP=1) 2444
TAB1_10 Table 1.10: Volume indices of real expenditure per capita (OECD=100) 2392
TAB1_5 Table 1.5: Indices of nominal expenditure (OECD=100) 2392
TAB1_6 Table 1.6: Indices of nominal expenditure per capita (OECD=100) 2392
TAB1_9 Table 1.9: Volume indices of real expenditure (OECD=100) 2392
TAB2_10 Table 2.10: Volume indices of real expenditure per capita (EU28=100) 2392
TAB2_5 Table 2.5: Indices of nominal expenditure (EU28=100) 2392
TAB2_6 Table 2.6: Indices of nominal expenditure per capita (EU28=100) 2392
TAB2_9 Table 2.9: Volume indices of real expenditure (EU28=100) 2392

CAT

Code
PPP2017 |>
  left_join(PPP2017_var$CAT, by = "CAT") |>
  group_by(CAT, Cat) |>
  summarise(Nobs = n()) |>
  arrange(-Nobs) |>
  print_table_conditional()

UNIT

Code
PPP2017 |>
  left_join(PPP2017_var$UNIT, by = "UNIT") |>
  group_by(UNIT, Unit) |>
  summarise(Nobs = n()) |>
  print_table_conditional()
UNIT Unit Nobs
EUIDX European Union = 100 12064
EUR Euro 9984
NATCUR National currency 5096
NATEU National currency per Euro 2496
NATUSD National currency per US dollar 4992
OECDIDX OECD=100 12064
USD US Dollar 9984

LOCATION

Code
PPP2017 |>
  left_join(PPP2017_var$LOCATION, by = "LOCATION") |>
  group_by(LOCATION, Location) |>
  summarise(Nobs = n()) |>
  arrange(-Nobs) |>
  mutate(Flag = gsub(" ", "-", str_to_lower(gsub(" ", "-", Location))),
         Flag = paste0('<img src="../../icon/flag/vsmall/', Flag, '.png" alt="Flag">')) |>
  select(Flag, everything()) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .}

Table 1.11: Price level indices (OECD = 100)

Table

Code
PPP |>
  filter(TAB == "TAB1_11",
         LOCATION %in% c("FRA", "ITA", "USA"),
         obsTime == "2017") |>
  left_join(PPP2017_var$CAT, by = "CAT") |>
  left_join(PPP2017_var$LOCATION, by = "LOCATION") |>
  select(-LOCATION) %>%
  select_if(~ n_distinct(.) > 1) |>
  spread(Location, obsValue) |>
  arrange(-`France`) |>
  print_table_conditional()

A0104 - Housing, water, electricity, gas and other fuels

Code
PPP |>
  filter(TAB == "TAB1_11",
         LOCATION %in% c("FRA", "ITA", "USA", "DEU", "EA19"),
         CAT == "A0104") |>
  left_join(PPP2017_var$LOCATION, by = "LOCATION") |>
  mutate(Location = ifelse(LOCATION == "EA19", "Europe", Location)) |>
  year_to_date() |>
  left_join(colors, by = c("Location" = "country")) |>
  ggplot() + theme_minimal() + scale_color_identity() +
  geom_line(aes(x = date, y = obsValue, color = color)) + 
  xlab("") + ylab("A0104, Price level indices (OECD = 100)") + add_4flags +
  scale_x_date(breaks = seq(2005, 2100,3) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_log10(breaks = seq(0, 200, 10))

Biggest change

Code
PPP |>
  filter(TAB == "TAB1_11",
         LOCATION %in% c("FRA", "USA"),
         obsTime %in% c("2008", "2017")) |>
  spread(obsTime, obsValue) |>
  transmute(CAT, LOCATION, obsValue = `2017`/`2008`) |>
  spread(LOCATION, obsValue) |>
  mutate(Difference = USA-FRA) |>
  arrange(-Difference) |>
  left_join(PPP2017_var$CAT, by = "CAT") |>
  select(CAT, Cat, everything()) |>
  print_table_conditional()