Unemployment rates by sex, age and educational attainment level (%) - lfsa_urgaed

Data - Eurostat

Structure

France, EU, Italy, Germany, Spain, Netherlands

15-74, peu d’éducation

Code
lfsa_urgaed |>
  filter(isced11 == "ED0-2",
         age == "Y15-74",
         geo %in% c("EA19", "DE", "ES", "FR", "IT"),
         sex == "T") |>
  year_to_date() |>
  filter(date >= as.Date("1995-01-01")) |>
  
  mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) |>
  mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) |>
  add_flag_color("Geo") |>
  mutate(values = values / 100) |>
  ggplot() + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Taux d'emploi (1er cycle de l'enseignement secondaire)") +
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1960, 2100, 5) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 2),
                     labels = percent_format(accuracy = 1))

Education moyenne

Code
lfsa_urgaed |>
  filter(isced11 == "ED3_4",
         age == "Y15-74",
         geo %in% c("EA19", "DE", "ES", "FR", "IT"),
         sex == "T") |>
  year_to_date() |>
  filter(date >= as.Date("1995-01-01")) |>
  
  mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) |>
  mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) |>
  add_flag_color("Geo") |>
  mutate(values = values / 100) |>
  ggplot() + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Taux d'emploi") +
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1960, 2100, 5) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 2),
                     labels = percent_format(accuracy = 1))

Enseignement supérieur

Code
lfsa_urgaed |>
  filter(isced11 == "ED5-8",
         age == "Y15-74",
         geo %in% c("EA19", "DE", "ES", "FR", "IT"),
         sex == "T") |>
  year_to_date() |>
  filter(date >= as.Date("1995-01-01")) |>
  
  mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) |>
  mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) |>
  add_flag_color("Geo") |>
  mutate(values = values / 100) |>
  ggplot() + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Taux d'emploi") +
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1960, 2100, 5) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 2),
                     labels = percent_format(accuracy = 1))

TOTAL

Code
lfsa_urgaed |>
  filter(isced11 == "TOTAL",
         age == "Y15-74",
         geo %in% c("ES", "DE", "FR", "IT", "EA19"),
         sex == "T") |>
  year_to_date() |>
  filter(date >= as.Date("1995-01-01")) |>
  
  mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) |>
  mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) |>
  add_flag_color("Geo") |>
  mutate(values = values / 100) |>
  ggplot() + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Taux d'emploi") +
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1960, 2100, 5) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 2),
                     labels = percent_format(accuracy = 1))

EU: Employment Rates - All

All

Code
lfsa_urgaed |>
  filter(geo %in% c("EU15", "EU28", "EU27_2020"),
         age == "Y15-64",
         isced11 == "TOTAL",
         sex == "T",
         unit == "PC") |>
  year_to_date() |>
  
  mutate(values = values/100) |>
  add_flag_color("Geo") |>
  ggplot() + geom_line() + theme_minimal()  +
  aes(x = date, y = values, color = color) +
  scale_color_identity() + add_flags +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Employment Rates") +
  scale_y_continuous(breaks = 0.01*seq(0, 200, 1),
                     labels = scales::percent_format(accuracy = 1))

Female

Code
lfsa_urgaed |>
  filter(geo %in% c("EU15", "EU28", "EU27_2020"),
         age == "Y15-64",
         isced11 == "TOTAL",
         sex == "F",
         unit == "PC") |>
  year_to_date() |>
  
  mutate(values = values/100) |>
  add_flag_color("Geo") |>
  ggplot() + geom_line() + theme_minimal()  +
  aes(x = date, y = values, color = color) +
  scale_color_identity() + add_flags +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Employment Rates (Female)") +
  scale_y_continuous(breaks = 0.01*seq(0, 200, 1),
                     labels = scales::percent_format(accuracy = 1))

Male

Code
lfsa_urgaed |>
  filter(geo %in% c("EU15", "EU28", "EU27_2020"),
         age == "Y15-64",
         isced11 == "TOTAL",
         sex == "M",
         unit == "PC") |>
  year_to_date() |>
  
  mutate(values = values/100) |>
  add_flag_color("Geo") |>
  ggplot() + geom_line() + theme_minimal()  +
  aes(x = date, y = values, color = color) +
  scale_color_identity() + add_flags +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.22, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Employment Rates (Male)") +
  scale_y_continuous(breaks = 0.01*seq(0, 200, 1),
                     labels = scales::percent_format(accuracy = 1))

Euro-area slack

Euro area unemployment rate by education level

Code
lfsa_urgaed |>
  filter(geo == "EA21", age == "Y15-74", sex == "T",
         isced11 %in% c("ED0-2", "ED3_4", "ED5-8")) |>
  year_to_date() |>
  filter(!is.na(values), date >= as.Date("2000-01-01")) |>
  mutate(Education = recode(isced11,
                            "ED0-2" = "Low (below upper secondary)",
                            "ED3_4" = "Medium (upper secondary)",
                            "ED5-8" = "High (tertiary)"),
         values = values / 100) |>
  ggplot() + theme_minimal() + xlab("") +
  ylab("Euro area unemployment rate") +
  geom_line(aes(x = date, y = values, color = Education)) +
  scale_color_manual(values = c("Low (below upper secondary)" = "#d95f02",
                                "Medium (upper secondary)" = "#7570b3",
                                "High (tertiary)" = "#1b9e77")) +
  scale_x_date(breaks = as.Date(paste0(seq(1990, 2100, 3), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.7, 0.85), legend.title = element_blank()) +
  scale_y_continuous(breaks = 0.01 * seq(0, 40, 2),
                     labels = scales::percent_format(accuracy = 1))