Main Science and Technology Indicators - MSTI_PUB
Data - OECD
Last observation: 2025 (N = 9)
First observation: 1981 (N = 1)
Last data update: 02 août 2026, 09:02
Last compile: 02 sept. 2026, 23:37
Structure
COMPILE_TIME
| COMPILE_TIME |
|---|
| 2026-09-02 |
MSTI_VAR
Code
MSTI_PUB |>
left_join(MSTI_PUB_var$MSTI_VAR, by = "MSTI_VAR") |>
group_by(MSTI_VAR, Msti_var) |>
summarise(Nobs = n()) |>
arrange(-Nobs) |>
print_table_conditional()REF_AREA
Code
MSTI_PUB |>
left_join(MSTI_PUB_var$COU, by = c("REF_AREA" = "COU")) |>
group_by(REF_AREA, Cou) |>
summarise(Nobs = n()) |>
arrange(-Nobs) |>
mutate(Flag = gsub(" ", "-", str_to_lower(Cou)),
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 .}obsTime
Code
MSTI_PUB |>
group_by(TIME_PERIOD) |>
summarise(Nobs = n()) |>
arrange(desc(TIME_PERIOD)) |>
print_table_conditional()High Technology Exports
Table
Code
MSTI_PUB |>
filter(MSTI_VAR %in% c("TD_EAERO", "TD_ECOMP", "TD_EDRUG"),
UNIT_MEASURE == "USD",
TIME_PERIOD %in% paste0(c(1981, 1990, 2000, 2005, 2010, 2019, 2020))) |>
left_join(MSTI_PUB_var$COU, by = c("REF_AREA" = "COU")) |>
select(MSTI_VAR, REF_AREA, Cou, TIME_PERIOD, obsValue) |>
spread(MSTI_VAR, obsValue) |>
transmute(REF_AREA, Cou, TIME_PERIOD, obsValue = (TD_EAERO + TD_ECOMP + TD_EDRUG)/1000) |>
mutate(obsValue = round(obsValue, 1)) |>
spread(TIME_PERIOD, obsValue) |>
mutate(Flag = gsub(" ", "-", str_to_lower(Cou)),
Flag = paste0('<img src="../../icon/flag/vsmall/', Flag, '.png" alt="Flag">')) |>
select(Flag, everything()) |>
arrange(-`2019`) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .}China, United States
Linear
Code
MSTI_PUB |>
filter(MSTI_VAR %in% c("TD_EAERO", "TD_ECOMP", "TD_EDRUG"),
UNIT_MEASURE == "USD",
REF_AREA %in% c("CHN", "USA")) |>
left_join(MSTI_PUB_var$COU, by = c("REF_AREA" = "COU")) |>
mutate(Cou = ifelse(REF_AREA == "CHN", "China", Cou)) |>
year_to_date() |>
select(MSTI_VAR, Location = Cou, date, obsValue) |>
spread(MSTI_VAR, obsValue) |>
mutate(obsValue = (TD_EAERO + TD_ECOMP + TD_EDRUG)/1000) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
scale_color_identity() + theme_minimal() + add_2flags +
scale_x_date(breaks = seq(1920, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 1200, 100),
labels = dollar_format(su = " Bn")) +
ylab("High Technology Exports = Aerospace + \nComputer, electronic and optical industry + Pharmaceutical") + xlab("")
Log
Code
MSTI_PUB |>
filter(MSTI_VAR %in% c("TD_EAERO", "TD_ECOMP", "TD_EDRUG"),
UNIT_MEASURE == "USD",
REF_AREA %in% c("CHN", "USA")) |>
left_join(MSTI_PUB_var$COU, by = c("REF_AREA" = "COU")) |>
mutate(Cou = ifelse(REF_AREA == "CHN", "China", Cou)) |>
year_to_date() |>
select(MSTI_VAR, Location = Cou, date, obsValue) |>
spread(MSTI_VAR, obsValue) |>
mutate(obsValue = (TD_EAERO + TD_ECOMP + TD_EDRUG)/1000) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
scale_color_identity() + theme_minimal() + add_2flags +
scale_x_date(breaks = seq(1920, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = c(1, 2, 3, 5, 8, 10, 20, 30, 50, 80, 100, 200, 300, 500, 800),
labels = dollar_format(su = " Bn", a = 1)) +
ylab("High Technology Exports = Aerospace + \nComputer, electronic and optical industry + Pharmaceutical") + xlab("")
China, United States, Germany, France
Linear
Code
MSTI_PUB |>
filter(MSTI_VAR %in% c("TD_EAERO", "TD_ECOMP", "TD_EDRUG"),
UNIT_MEASURE == "USD",
REF_AREA %in% c("CHN", "USA", "DEU", "FRA")) |>
left_join(MSTI_PUB_var$COU, by = c("REF_AREA" = "COU")) |>
mutate(Cou = ifelse(REF_AREA == "CHN", "China", Cou)) |>
year_to_date() |>
select(MSTI_VAR, Location = Cou, date, obsValue) |>
spread(MSTI_VAR, obsValue) |>
mutate(obsValue = (TD_EAERO + TD_ECOMP + TD_EDRUG)/1000) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = seq(1920, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 1200, 100),
labels = dollar_format(su = " Bn")) +
ylab("High Technology Exports = Aerospace + \nComputer, electronic and optical industry + Pharmaceutical") + xlab("")
Log
All
Code
MSTI_PUB |>
filter(MSTI_VAR %in% c("TD_EAERO", "TD_ECOMP", "TD_EDRUG"),
UNIT_MEASURE == "USD",
REF_AREA %in% c("CHN", "USA", "DEU", "FRA", "EU27_2020")) |>
left_join(MSTI_PUB_var$COU, by = c("REF_AREA" = "COU")) |>
mutate(Cou = ifelse(REF_AREA == "CHN", "China", Cou)) |>
year_to_date() |>
select(MSTI_VAR, REF_AREA, Location = Cou, date, obsValue) |>
spread(MSTI_VAR, obsValue) |>
mutate(obsValue = (TD_EAERO + TD_ECOMP + TD_EDRUG)/1000) |>
mutate(Location = ifelse(REF_AREA == "EU27_2020", "Europe", Location)) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = seq(1920, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = c(1, 2, 3, 5, 8, 10, 20, 30, 50, 80, 100, 200, 300, 500, 800),
labels = dollar_format(su = " Bn", a = 1)) +
ylab("High Technology Exports = Aerospace + \nComputer, electronic and optical industry + Pharmaceutical") + xlab("")
1995-
Code
MSTI_PUB |>
filter(MSTI_VAR %in% c("TD_EAERO", "TD_ECOMP", "TD_EDRUG"),
UNIT_MEASURE == "USD",
REF_AREA %in% c("CHN", "USA", "DEU", "FRA")) |>
left_join(MSTI_PUB_var$COU, by = c("REF_AREA" = "COU")) |>
mutate(Cou = ifelse(REF_AREA == "CHN", "China", Cou)) |>
year_to_date() |>
filter(date >= as.Date("1995-01-01")) |>
select(MSTI_VAR, REF_AREA, Location = Cou, date, obsValue) |>
spread(MSTI_VAR, obsValue) |>
mutate(obsValue = (TD_EAERO + TD_ECOMP + TD_EDRUG)/1000) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = seq(1920, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = c(1, 2, 3, 5, 8, 10, 20, 30, 50, 80, 100, 200, 300, 500, 800),
labels = dollar_format(su = " Bn", a = 1)) +
ylab("High Tech. Exports = Aerospace + Computer, \nelectronic and optical industry + Pharmaceutical") + xlab("")
1995-
Code
MSTI_PUB |>
filter(MSTI_VAR %in% c("TD_EAERO", "TD_ECOMP", "TD_EDRUG"),
UNIT_MEASURE == "USD",
REF_AREA %in% c("CHN", "USA", "DEU", "FRA")) |>
left_join(MSTI_PUB_var$COU, by = c("REF_AREA" = "COU")) |>
mutate(Cou = ifelse(REF_AREA == "CHN", "China", Cou)) |>
year_to_date() |>
filter(date >= as.Date("1995-01-01")) |>
select(MSTI_VAR, REF_AREA, Location = Cou, date, obsValue) |>
spread(MSTI_VAR, obsValue) |>
mutate(obsValue = (TD_EAERO + TD_ECOMP + TD_EDRUG)/1000) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = seq(1920, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = c(1, 2, 3, 5, 8, 10, 20, 30, 50, 80, 100, 200, 300, 500, 800),
labels = dollar_format(su = " Mds", a = 1)) +
ylab("Exportations de Haute Technologie = Aéronautique, \nInformatique, Electronique, Optique, Pharmacie") + xlab("")