Mean hourly earnings by NUTS 1 regions (enterprises with 10 employees or more) - NACE Rev. 2, B-S excluding O - earn_ses18_rhr

Data - Eurostat

Info

Last observation: Annual: 2018 (N = 995)

First observation: Annual: 2018 (N = 995)

Last data update: 11 aoû 2026, 22:03. Last compile: 11 aoû 2026, 23:32

Structure

Table

Javascript

Code
earn_ses18_rhr |>
  filter(sex == "T") |>
  
  
  select(geo, Geo, Unit, values) |>
  na.omit() |>
  mutate(Geo = ifelse(geo == "DE", "Germany", Geo),
         values = round(values, 1)) |>
  spread(Unit, values) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

Maps

Total

Code
earn_ses18_rhr |>
  filter(sex == "T",
         unit == "EUR") |>
  
  select(geo, Geo, values) |>
  right_join(europe_NUTS1, by = "geo") |>
  filter(long >= -15, lat >= 33) |>
  ggplot(aes(x = long, y = lat, group = group, fill = values)) +
  geom_polygon() + coord_map() +
  scale_fill_viridis_c(na.value = "white",
                       labels = scales::dollar_format(accuracy = 1, prefix = "", suffix = "€"),
                       breaks = seq(0, 100, 5),
                       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 = "Avg Wage")

Men

Code
earn_ses18_rhr |>
  filter(sex == "M",
         unit == "EUR") |>
  
  select(geo, Geo, values) |>
  right_join(europe_NUTS1, by = "geo") |>
  filter(long >= -15, lat >= 33) |>
  ggplot(aes(x = long, y = lat, group = group, fill = values)) +
  geom_polygon() + coord_map() +
  scale_fill_viridis_c(na.value = "white",
                       labels = scales::dollar_format(accuracy = 1, prefix = "", suffix = "€"),
                       breaks = seq(0, 100, 5),
                       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 = "Avg Wage")

Women

Code
earn_ses18_rhr |>
  filter(sex == "F",
         unit == "EUR") |>
  
  select(geo, Geo, values) |>
  right_join(europe_NUTS1, by = "geo") |>
  filter(long >= -15, lat >= 33) |>
  ggplot(aes(x = long, y = lat, group = group, fill = values)) +
  geom_polygon() + coord_map() +
  scale_fill_viridis_c(na.value = "white",
                       labels = scales::dollar_format(accuracy = 1, prefix = "", suffix = "€"),
                       breaks = seq(0, 100, 5),
                       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 = "Avg Wage")