| source | dataset | Title | .html | .rData |
|---|---|---|---|---|
| oecd | SNA_TABLE4 | PPPs and exchange rates | 2026-08-12 | 2026-08-02 |
PPPs and exchange rates
Data - OECD
Info
Data on xrates
| source | dataset | Title | .html | .rData |
|---|---|---|---|---|
| oecd | SNA_TABLE4 | PPPs and exchange rates | 2026-08-12 | 2026-08-02 |
| bdf | EXR | Exchange Rate | 2026-08-11 | 2026-08-10 |
| bis | EER | Real Effective Exchange Rates, Monthly | 2026-08-11 | 2026-07-25 |
| bis | EER_D | Real Effective Exchange Rates, Daily | 2026-08-11 | 2026-07-25 |
| bis | XRU | Exchange Rates | 2026-08-11 | 2026-07-25 |
| bis | XRU_D | Exchange Rates, Daily | 2026-08-11 | 2026-07-25 |
| ecb | EXR | Exchange Rates | 2026-08-12 | 2026-08-11 |
| eurostat | ert_bil_eur_d | Euro/ECU exchange rates - daily data | 2026-08-11 | 2026-07-14 |
| eurostat | ert_h_eur_d | Former euro area national currencies vs. euro/ECU - daily data | 2026-08-11 | 2026-08-02 |
| fred | xrates | Exchange Rates | 2026-08-11 | 2026-08-11 |
| gfd | xrates | Exchange Rates | 2026-08-01 | 2026-08-01 |
| oecd | REFSERIES_MSIT | Exchange rates | 2026-08-11 | 2026-08-02 |
| wdi | PA.NUS.FCRF | Official exchange rate (LCU per USD, period average) | 2026-08-11 | 2026-08-11 |
Data on industry
| source | dataset | Title | .html | .rData |
|---|---|---|---|---|
| oecd | SNA_TABLE4 | PPPs and exchange rates | 2026-08-12 | 2026-08-02 |
| ec | INDUSTRY | Industry (sector data) | 2026-08-11 | 2026-08-01 |
| eurostat | ei_isin_m | Industry - monthly data - index (2015 = 100) (NACE Rev. 2) - ei_isin_m | 2026-08-11 | 2026-08-11 |
| eurostat | htec_trd_group4 | High-tech trade by high-tech group of products in million euro (from 2007, SITC Rev. 4) | 2026-08-11 | 2026-08-11 |
| eurostat | nama_10_a64 | National accounts aggregates by industry (up to NACE A*64) | 2026-08-11 | 2026-08-11 |
| eurostat | nama_10_a64_e | National accounts employment data by industry (up to NACE A*64) | 2026-08-11 | 2026-08-11 |
| eurostat | namq_10_a10_e | Employment A*10 industry breakdowns | 2026-08-12 | 2026-08-11 |
| eurostat | road_eqr_carmot | New registrations of passenger cars by type of motor energy and engine size - road_eqr_carmot | 2026-08-12 | 2026-08-11 |
| eurostat | sts_inpp_m | Producer prices in industry, total - monthly data | 2026-08-12 | 2026-08-11 |
| eurostat | sts_inppd_m | Producer prices in industry, domestic market - monthly data | 2026-08-12 | 2026-08-11 |
| eurostat | sts_inpr_m | Production in industry - monthly data | 2026-08-12 | 2026-08-11 |
| eurostat | sts_intvnd_m | Turnover in industry, non domestic market - monthly data - sts_intvnd_m | 2026-08-12 | 2026-08-11 |
| fred | industry | Manufacturing, Industry | 2026-08-11 | 2026-08-11 |
| oecd | ALFS_EMP | Employment by activities and status (ALFS) | 2026-08-11 | 2026-08-02 |
| oecd | BERD_MA_SOF | Business enterprise R&D expenditure by main activity (focussed) and source of funds | 2026-08-11 | 2026-08-02 |
| oecd | GBARD_NABS2007 | Government budget allocations for R and D | 2026-08-11 | 2026-08-02 |
| oecd | MEI_REAL | Production and Sales (MEI) | 2026-08-11 | 2026-08-02 |
| oecd | MSTI_PUB | Main Science and Technology Indicators | 2026-08-11 | 2026-08-02 |
| wdi | NV.IND.EMPL.KD | Industry, value added per worker (constant 2010 USD) | 2026-08-11 | 2026-08-11 |
| wdi | NV.IND.MANF.CD | Manufacturing, value added (current USD) | 2026-08-11 | 2026-08-11 |
| wdi | NV.IND.MANF.ZS | Manufacturing, value added (% of GDP) | 2026-08-11 | 2026-08-11 |
| wdi | NV.IND.TOTL.KD | Industry (including construction), value added (constant 2015 USD) - NV.IND.TOTL.KD | 2026-08-11 | 2026-08-11 |
| wdi | NV.IND.TOTL.ZS | Industry, value added (including construction) (% of GDP) | 2026-08-11 | 2026-08-11 |
| wdi | SL.IND.EMPL.ZS | Employment in industry (% of total employment) | 2026-08-11 | 2026-08-11 |
| wdi | TX.VAL.MRCH.CD.WT | Merchandise exports (current USD) | 2026-08-11 | 2026-08-11 |
COMPILE_TIME
| COMPILE_TIME |
|---|
| 2026-08-13 |
Last
| TIME_PERIOD | Nobs |
|---|---|
| 2024 | 163 |
TRANSACT
Code
SNA_TABLE4 |>
left_join(SNA_TABLE4_var$TRANSACT, by = "TRANSACT") |>
group_by(TRANSACT, Transact) |>
summarise(Nobs = n()) |>
arrange(-Nobs) %>%
{if (is_html_output()) print_table(.) else .}| TRANSACT | Transact | Nobs |
|---|---|---|
| EXC | Exchange rates, period-average | 335 |
| PPPGDP | Purchasing Power Parities for GDP | 330 |
| PPPPRC | Purchasing Power Parities for private consumption | 330 |
| PPPP41 | Purchasing Power Parities for actual individual consumption | 326 |
| EXCE | Exchange rates, end of period | 270 |
MEASURE
Code
SNA_TABLE4 |>
left_join(SNA_TABLE4_var$MEASURE, by = "MEASURE") |>
group_by(MEASURE, Measure) |>
summarise(Nobs = n()) |>
arrange(-Nobs) %>%
{if (is_html_output()) print_table(.) else .}| MEASURE | Measure | Nobs |
|---|---|---|
| CD | National currency per US dollar | 1591 |
LOCATION
Code
SNA_TABLE4 |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
group_by(LOCATION, Location) |>
summarise(Nobs = n()) |>
arrange(-Nobs) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}Exchange Rate
Flat
Code
include_graphics3b("bib/oecd/SNA_TABLE4_ex1.png")
Javascript
Code
SNA_TABLE4 |>
filter(TRANSACT == "EXC") |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
group_by(LOCATION, UNIT, Location) |>
summarise(year_first = first(TIME_PERIOD),
year_last = last(TIME_PERIOD),
`$1 = ` = last(obsValue)) |>
ungroup() |>
mutate(`USD` = paste0("$", round(1/`$1 = `, 3)),
`EUR` = paste0(round(`$1 = `[UNIT == "EUR"]/`$1 = `, 3), "€"),
`$1 = ` = paste0(round(`$1 = `, 3), " ", UNIT)) |>
select(-UNIT) |>
mutate(Loc = gsub(" ", "-", str_to_lower(Location)),
Loc = paste0('<img src="../../bib/flags/vsmall/', Loc, '.png" alt="Flag">')) |>
select(Loc, everything()) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .}EXC - Period Average: Time Series
Argentina
Code
SNA_TABLE4 |>
filter(TRANSACT == "EXC",
LOCATION == "ARG") |>
year_to_date() |>
ggplot() + theme_minimal() +
geom_line(aes(x = date, y = obsValue)) +
xlab("") + ylab("$1 in Argentine Pesos") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = 10^seq(-6, 2, 1),
labels = dollar_format(a = 0.000001, p = "$ ", su = "/$"))
Australia, Austria, Belgium
Code
SNA_TABLE4 |>
filter(TRANSACT == "EXC",
LOCATION %in% c("AUS", "AUT", "BEL")) |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
left_join(colors, by = c("Location" = "country")) |>
year_to_date() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
add_3flags + xlab("") + ylab("Exchange Rate ($1 = ? National Currency)") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 10, 0.1),
labels = dollar_format(a = 0.1, p = "", su = " ../$"))
Bulgaria
Code
SNA_TABLE4 |>
filter(TRANSACT == "EXC",
LOCATION == "BGR") |>
year_to_date() |>
ggplot() + theme_minimal() +
geom_line(aes(x = date, y = obsValue)) +
xlab("") + ylab("$1 in Bulgarian lev") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = c(c(0, 0.1, 0.2, 0.3, 0.5, 1, 2, 3),
0.1*c(0, 0.1, 0.2, 0.3, 0.5, 1),
0.01*c(0, 0.1, 0.2, 0.3, 0.5, 1)),
labels = dollar_format(a = 0.001, p = "", su = " lev/$"))
Brazil
Code
SNA_TABLE4 |>
filter(TRANSACT == "EXC",
LOCATION == "BRA") |>
year_to_date() |>
ggplot() + theme_minimal() +
geom_line(aes(x = date, y = obsValue)) +
xlab("") + ylab("$1 in Brazilian Real") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = 10^seq(-6, 2, 1),
labels = dollar_format(a = 0.000001, p = "", su = " R$/$"))
France, Germany, Italy, Spain, Greece
Code
SNA_TABLE4 |>
filter(TRANSACT == "EXC",
LOCATION %in% c("FRA", "DEU", "ITA", "ESP", "GRC")) |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
left_join(colors, by = c("Location" = "country")) |>
year_to_date() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
add_5flags + xlab("") + ylab("Exchange Rate ($1 = ? National Currency)") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 10, 0.1),
labels = dollar_format(a = 0.1, p = "", su = " ../$"))
Canada, United Kingdom
Code
SNA_TABLE4 |>
filter(TRANSACT == "EXC",
LOCATION %in% c("CAN", "GBR", "DEU")) |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
left_join(colors, by = c("Location" = "country")) |>
year_to_date() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
add_3flags + xlab("") + ylab("Exchange Rate ($1 = ? National Currency)") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 10, 0.1),
labels = dollar_format(a = 0.1, p = "", su = " ../$"))
Switzerland, United Kingdom
Code
SNA_TABLE4 |>
filter(TRANSACT == "EXC",
LOCATION %in% c("CHE", "GBR", "DEU")) |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
left_join(colors, by = c("Location" = "country")) |>
year_to_date() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
add_3flags + xlab("") + ylab("Exchange Rate ($1 = ? National Currency)") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 10, 0.1),
labels = dollar_format(a = 0.1, p = "", su = " ../$"))
Chile
Code
SNA_TABLE4 |>
filter(TRANSACT == "EXC",
LOCATION == "CHL") |>
year_to_date() |>
ggplot() + theme_minimal() +
geom_line(aes(x = date, y = obsValue)) +
xlab("") + ylab("$1 in Chilean Peso") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = 10^seq(-6, 3, 1),
labels = dollar_format(a = 0.0001, p = "", su = " CLP/$"))
China
Code
SNA_TABLE4 |>
filter(TRANSACT == "EXC",
LOCATION == "CHN") |>
year_to_date() |>
ggplot() + theme_minimal() +
geom_line(aes(x = date, y = obsValue)) +
xlab("") + ylab("$1 in Chinese Yuan") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(1, 10, 1),
labels = dollar_format(a = 1, p = "", su = " ¥/$"))
Colombia
Code
SNA_TABLE4 |>
filter(TRANSACT == "EXC",
LOCATION == "COL") |>
year_to_date() |>
ggplot() + theme_minimal() +
geom_line(aes(x = date, y = obsValue)) +
xlab("") + ylab("$1 in Colombian Peso") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = c(5, 10, 20, 30, 50,
100, 200, 300, 500,
1000, 2000, 3000, 5000),
labels = dollar_format(a = 1, p = "", su = " COL$/$"))
EXCE - End of Period: Time Series
Argentina
Code
SNA_TABLE4 |>
filter(TRANSACT == "EXCE",
LOCATION == "ARG") |>
year_to_date() |>
ggplot() + theme_minimal() +
geom_line(aes(x = date, y = obsValue)) +
xlab("") + ylab("$1 in Argentine Pesos") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = 10^seq(-6, 2, 1),
labels = dollar_format(a = 0.000001, p = "$ ", su = "/$"))
Australia, Austria, Belgium
Code
SNA_TABLE4 |>
filter(TRANSACT == "EXCE",
LOCATION %in% c("AUS", "AUT", "BEL")) |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
left_join(colors, by = c("Location" = "country")) |>
year_to_date() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
add_3flags + xlab("") + ylab("Exchange Rate ($1 = ? National Currency)") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 10, 0.1),
labels = dollar_format(a = 0.1, p = "", su = " ../$"))
Individual Countries
Australia
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "PPPPRC", "PPPP41", "EXC"),
LOCATION %in% c("AUS")) |>
year_to_date() |>
group_by(date) |>
mutate(obsValue = obsValue/obsValue[match("EXC", TRANSACT)]) |>
filter(TRANSACT != "EXC") |>
left_join(SNA_TABLE4_var$TRANSACT, by = "TRANSACT") |>
ggplot() + theme_minimal() +
geom_line(aes(x = date, y = obsValue, color = Transact, linetype = Transact)) +
xlab("") + ylab("Purchasing Power Parity") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1)) +
scale_color_manual(values = viridis(4)[1:3]) +
theme(legend.position = c(0.4, 0.85),
legend.title = element_blank())
Austria
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "PPPPRC", "PPPP41", "EXC"),
LOCATION %in% c("AUT")) |>
year_to_date() |>
group_by(date) |>
mutate(obsValue = obsValue/obsValue[match("EXC", TRANSACT)]) |>
filter(TRANSACT != "EXC") |>
left_join(SNA_TABLE4_var$TRANSACT, by = "TRANSACT") |>
ggplot() + theme_minimal() +
geom_line(aes(x = date, y = obsValue, color = Transact, linetype = Transact)) +
xlab("") + ylab("Purchasing Power Parity") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1)) +
scale_color_manual(values = viridis(4)[1:3]) +
theme(legend.position = c(0.4, 0.85),
legend.title = element_blank())
France
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "PPPPRC", "PPPP41", "EXC"),
LOCATION %in% c("FRA")) |>
year_to_date() |>
group_by(date) |>
mutate(obsValue = obsValue/obsValue[match("EXC", TRANSACT)]) |>
filter(TRANSACT != "EXC") |>
left_join(SNA_TABLE4_var$TRANSACT, by = "TRANSACT") |>
ggplot() + theme_minimal() +
geom_line(aes(x = date, y = obsValue, color = Transact, linetype = Transact)) +
xlab("") + ylab("Purchasing Power Parity") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1)) +
scale_color_manual(values = viridis(4)[1:3]) +
theme(legend.position = c(0.4, 0.85),
legend.title = element_blank())
Germany
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "PPPPRC", "PPPP41", "EXC"),
LOCATION %in% c("DEU")) |>
year_to_date() |>
group_by(date) |>
mutate(obsValue = obsValue/obsValue[match("EXC", TRANSACT)]) |>
filter(TRANSACT != "EXC") |>
left_join(SNA_TABLE4_var$TRANSACT, by = "TRANSACT") |>
ggplot() + theme_minimal() +
geom_line(aes(x = date, y = obsValue, color = Transact, linetype = Transact)) +
xlab("") + ylab("Purchasing Power Parity") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1)) +
scale_color_manual(values = viridis(4)[1:3]) +
theme(legend.position = c(0.4, 0.85),
legend.title = element_blank())
Japan
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "PPPPRC", "PPPP41", "EXC"),
LOCATION %in% c("JPN")) |>
year_to_date() |>
group_by(date) |>
mutate(obsValue = obsValue/obsValue[match("EXC", TRANSACT)]) |>
filter(TRANSACT != "EXC") |>
left_join(SNA_TABLE4_var$TRANSACT, by = "TRANSACT") |>
ggplot() + theme_minimal() +
geom_line(aes(x = date, y = obsValue, color = Transact, linetype = Transact)) +
xlab("") + ylab("Purchasing Power Parity") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1)) +
scale_color_manual(values = viridis(4)[1:3]) +
theme(legend.position = c(0.6, 0.15),
legend.title = element_blank())
United States
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "PPPPRC", "PPPP41", "EXC"),
LOCATION %in% c("USA")) |>
year_to_date() |>
group_by(date) |>
mutate(obsValue = obsValue/obsValue[match("EXC", TRANSACT)]) |>
filter(TRANSACT != "EXC") |>
left_join(SNA_TABLE4_var$TRANSACT, by = "TRANSACT") |>
ggplot() + theme_minimal() +
geom_line(aes(x = date, y = obsValue, color = Transact, linetype = Transact)) +
xlab("") + ylab("Purchasing Power Parity") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1)) +
scale_color_manual(values = viridis(4)[1:3]) +
theme(legend.position = c(0.6, 0.15),
legend.title = element_blank())
PPPGDP/EXC - Purchasing Power Parities for GDP
Table - Relative to U.S.
Javascript
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC")) |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, TRANSACT, TIME_PERIOD, obsValue) |>
spread(TRANSACT, obsValue) |>
na.omit() |>
group_by(LOCATION, Location) |>
summarise(`First Year` = first(TIME_PERIOD),
`Last Year` = last(TIME_PERIOD),
`Last PPP` = round(last(PPPGDP/EXC),2),
Nobs = n()) |>
arrange(-Nobs) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}png
Code
include_graphics3b("bib/oecd/SNA_TABLE4_ex2.png")
United States
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("USA")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
na.omit() |>
ggplot() + theme_minimal() +
geom_line(aes(x = date, y = PPPGDP/EXC)) +
xlab("") + ylab("Purchasing Power Parity") +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1)) +
scale_color_manual(values = viridis(4)[1:3]) +
theme(legend.position = c(0.15, 0.85),
legend.title = element_blank())
Australia, Austria, Belgium
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("AUS", "AUT", "BEL")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
Canada, US, Germany
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("CAN", "USA", "DEU")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
Switzerland, Germany, France
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("CHE", "DEU", "FRA")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
Denmark, Spain, Finland
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("DNK", "ESP", "FIN")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
France, Greece, United Kingdom
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("FRA", "GBR", "GRC")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
Iceland, Ireland, Italy
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("IRL", "ISL", "ITA")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
Japan, Luxembourg, Mexico
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("JPN", "LUX", "MEX")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
Netherlands, Norway, New Zealand
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("NLD", "NOR", "NZL")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
Portugal, Sweden, Turkey
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("PRT", "SWE", "TUR")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
China, India, Korea
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("CHN", "IND", "KOR")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
Saudi Arabia, South Africa, Colombia
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("SAU", "ZAF", "COL")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
Israel, Indonesia, Germany FFR
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("ISR", "IDN", "DEW")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
Chile, Argentina, Brazil
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("CHL", "ARG", "BRA")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
Costa Rica, Czech Republic, Poland
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("CRI", "CZE", "POL")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
Cabo Verde, Hong Kong, China, Hungary
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("CPV", "HKG", "HUN")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
Morocco, Madagascar, Peru
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPGDP", "EXC"),
LOCATION %in% c("MAR", "MDG", "PER")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPGDP/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
PPPPRC - Purchasing Power Parities for private consumption
Table
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPPRC", "EXC")) |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, TRANSACT, TIME_PERIOD, obsValue) |>
spread(TRANSACT, obsValue) |>
na.omit() |>
group_by(LOCATION, Location) |>
summarise(`First Year` = first(TIME_PERIOD),
`Last Year` = last(TIME_PERIOD),
`Last PPP` = round(last(PPPPRC/EXC),2),
Nobs = n()) |>
arrange(-Nobs) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}Australia, Austria, Belgium
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPPRC", "EXC"),
LOCATION %in% c("AUS", "AUT", "BEL")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPPRC/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))
PPPP41 - Purchasing Power Parities for actual individual consumption
Table
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPP41", "EXC")) |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, TRANSACT, TIME_PERIOD, obsValue) |>
spread(TRANSACT, obsValue) |>
na.omit() |>
group_by(LOCATION, Location) |>
summarise(`First Year` = first(TIME_PERIOD),
`Last Year` = last(TIME_PERIOD),
`Last PPP` = round(last(PPPP41/EXC),2),
Nobs = n()) |>
arrange(-Nobs) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}Australia, Austria, Belgium
Code
SNA_TABLE4 |>
filter(TRANSACT %in% c("PPPP41", "EXC"),
LOCATION %in% c("AUS", "AUT", "BEL")) |>
year_to_date() |>
left_join(SNA_TABLE4_var$LOCATION, by = "LOCATION") |>
select(LOCATION, Location, date, TRANSACT, obsValue) |>
spread(TRANSACT, obsValue) |>
mutate(obsValue = PPPP41/EXC) |>
left_join(colors, by = c("Location" = "country")) |>
na.omit() |>
ggplot() + theme_minimal() + scale_color_identity() +
geom_line(aes(x = date, y = obsValue, color = color)) +
xlab("") + ylab("Purchasing Power Parity") + add_3flags +
scale_x_date(breaks = seq(1940, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1))