Compensation of employees by NUTS 2 regions - nama_10r_2coe

Data - Eurostat

Info

Last observation: Annual: 2024 (N = 4,074)

First observation: Annual: 2000 (N = 11,284)

Last data update: 23 jul 2026, 22:45. Last compile: 24 jul 2026, 02:51

Structure

Capital Regions

Total Compensation of Employees

Code
nama_10r_2coe %>%
  filter(geo %in% c("FR10", "DE30", "ES30", "ITC4"),
         currency == "MIO_EUR",
         nace_r2 == "TOTAL") %>%
  year_to_date %>%
  mutate(values = values/1000) %>%
  ggplot + geom_line(aes(x = date, y = values, color = Geo)) +
  theme_minimal() +
  theme(legend.position = c(0.25, 0.75),
        legend.title = element_blank()) +
  scale_x_date(breaks = as.Date(paste0(seq(2000, 2100, 2), "-01-01")),
               labels = date_format("%Y")) +
  xlab("") + ylab("Total compensation of employees (Bn€)")

France

Compensation of Employees by Region

Code
nama_10r_2coe %>%
  filter(geo %in% c("FR10", "FRL0", "FRI1"),
         currency == "MIO_EUR",
         nace_r2 == "TOTAL") %>%
  year_to_date %>%
  mutate(values = values/1000) %>%
  ggplot + geom_line(aes(x = date, y = values, color = Geo)) +
  theme_minimal() +
  theme(legend.position = c(0.25, 0.75),
        legend.title = element_blank()) +
  scale_x_date(breaks = as.Date(paste0(seq(2000, 2100, 2), "-01-01")),
               labels = date_format("%Y")) +
  xlab("") + ylab("Total compensation of employees (Bn€)")

Table

Code
nama_10r_2coe %>%
  filter(time == "2015", 
         nchar(geo) == 4,
         currency == "MIO_EUR",
         nace_r2 == "TOTAL") %>%
  select(geo, Geo, value_added = values) %>%
  full_join(nama_10r_3empers %>%
              filter(time == "2015",
                     nchar(geo) == 4,
                     wstatus == "EMP",
                     nace_r2 == "TOTAL") %>%
              select(geo, employment = values), by = "geo") %>%
  mutate(emp_person = round(1000*value_added / employment)) %>%
  
  select(geo, Geo, emp_person) %>%
  na.omit %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

Maps

Code
nama_10r_2coe %>%
  filter(time == "2015", 
         nchar(geo) == 4,
         currency == "MIO_EUR",
         nace_r2 == "C") %>%
  select(geo, Geo, value_added = values) %>%
  full_join(nama_10r_3empers %>%
              filter(time == "2015",
                     nchar(geo) == 4,
                     wstatus == "EMP",
                     nace_r2 == "TOTAL") %>%
              select(geo, employment = values), 
            by = "geo") %>%
  mutate(value = round(1000*value_added / employment)) %>%
  
  select(geo, Geo, value) %>%
  right_join(europe_NUTS2, by = "geo") %>%
  filter(long >= -15, lat >= 33, value <= 80000) %>%
  ggplot(., aes(x = long, y = lat, group = group, fill = value/1000)) +
  geom_polygon() + coord_map() +
  scale_fill_viridis_c(na.value = "white",
                       labels = scales::dollar_format(accuracy = 1, prefix = "", suffix = " k€"),
                       breaks = c(seq(0, 80, 2), 100, 200),
                       values = c(0, 0.1, 0.2, 0.3, 0.4, 0.5, 1)) +
  theme_void() + theme(legend.position = c(0.25, 0.85)) + 
  labs(fill = "Compensation / Person")