High-tech patent applications to the EPO by priority year by NUTS 3 regions - pat_ep_rtec

Data - Eurostat

Info

Last observation: Annual: 2012 (N = 17,730)

First observation: Annual: 1977 (N = 494)

Last data update: 23 jul 2026, 22:37. Last compile: 24 jul 2026, 03:14

Structure

High-tech Patents (per Million Inhabitants): France, Germany, Italy

Code
pat_ep_rtec %>%
  filter(geo %in% c("FR", "DE", "IT"),
         ipc == "HT",
         unit == "P_MHAB") %>%
  year_to_date %>%

  left_join(colors, by = c("Geo" = "country")) %>%
  ggplot + geom_line(aes(x = date, y = values, color = color)) +
  theme_minimal() + scale_color_identity() + add_3flags +
  scale_x_date(breaks = as.Date(paste0(seq(1975, 2100, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.2, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("High-tech patent applications (per million inhabitants)")

France: Patents by Technology Field

Code
pat_ep_rtec %>%
  filter(geo == "FR",
         ipc %in% c("CTE", "SMC", "MGE"),
         unit == "P_MHAB") %>%
  year_to_date %>%

  ggplot + geom_line(aes(x = date, y = values, color = Ipc)) +
  theme_minimal() +
  scale_x_date(breaks = as.Date(paste0(seq(1975, 2100, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Patent applications (per million inhabitants)")

Latest Year by Country

Code
latest_y <- pat_ep_rtec %>%
  filter(nchar(geo) == 2,
         ipc == "HT",
         unit == "P_MHAB",
         !is.na(values)) %>%
  summarise(m = max(time)) %>%
  pull(m)

pat_ep_rtec %>%
  filter(nchar(geo) == 2,
         ipc == "HT",
         unit == "P_MHAB",
         time == latest_y) %>%
  mutate(values = round(values, 1)) %>%
  select(Geo, values) %>%
  arrange(-values) %>%
  print_table_conditional()