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

Data - Eurostat

Info

LAST_DOWNLOAD

Code
tibble(LAST_DOWNLOAD = as.Date(file.info("~/Library/Mobile\ Documents/com~apple~CloudDocs/website/data/eurostat/lfsa_urgaed.RData")$mtime)) %>%
  print_table_conditional()
LAST_DOWNLOAD
2024-10-08

LAST_COMPILE

LAST_COMPILE
2024-11-05

Last

Code
lfsa_urgaed %>%
  group_by(time) %>%
  summarise(Nobs = n()) %>%
  arrange(desc(time)) %>%
  head(1) %>%
  print_table_conditional()
time Nobs
2023 19344

unit

Code
lfsa_urgaed %>%
  left_join(unit, by = "unit") %>%
  group_by(unit, Unit) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional()
unit Unit Nobs
PC Percentage 418975

sex

Code
lfsa_urgaed %>%
  left_join(sex, by = "sex") %>%
  group_by(sex, Sex) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional()
sex Sex Nobs
T Total 140070
F Females 139474
M Males 139431

age

Code
lfsa_urgaed %>%
  left_join(age, by = "age") %>%
  group_by(age, Age) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional()
age Age Nobs
Y15-24 From 15 to 24 years 15844
Y25-29 From 25 to 29 years 15675
Y20-24 From 20 to 24 years 15657
Y30-34 From 30 to 34 years 15629
Y15-74 From 15 to 74 years 14471
Y15-64 From 15 to 64 years 14465
Y15-59 From 15 to 59 years 14464
Y15-39 From 15 to 39 years 14414
Y15-19 From 15 to 19 years 14337
Y20-64 From 20 to 64 years 14335
Y25-74 From 25 to 74 years 14329
Y25-64 From 25 to 64 years 14323
Y25-59 From 25 to 59 years 14321
Y25-54 From 25 to 54 years 14314
Y25-49 From 25 to 49 years 14288
Y40-64 From 40 to 64 years 14246
Y25-39 From 25 to 39 years 14243
Y40-59 From 40 to 59 years 14242
Y50-74 From 50 to 74 years 14226
Y50-64 From 50 to 64 years 14194
Y50-59 From 50 to 59 years 14174
Y55-64 From 55 to 64 years 14132
Y45-49 From 45 to 49 years 14130
Y40-44 From 40 to 44 years 14113
Y50-54 From 50 to 54 years 14111
Y35-39 From 35 to 39 years 14097
Y55-59 From 55 to 59 years 14085
Y60-64 From 60 to 64 years 14064
Y65-69 From 65 to 69 years 14052

isced11

Code
load_data("eurostat/isced11_fr.RData")
lfsa_urgaed %>%
  left_join(isced11, by = "isced11") %>%
  group_by(isced11, Isced11) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional()
isced11 Isced11 Nobs
TOTAL Ensemble des niveaux de la CITE 2011 95178
ED0-2 Inférieur à l'enseignement primaire, enseignement primaire et premier cycle de l'enseignement secondaire (niveaux 0-2) 85083
ED3_4 Deuxième cycle de l'enseignement secondaire et enseignement post-secondaire non-supérieur (niveaux 3 et 4) 85081
ED5-8 Enseignement supérieur (niveaux 5-8) 83728
NRP Sans réponse 44219
ED3_4VOC Deuxième cycle de l'enseignement secondaire et enseignement post-secondaire non-supérieur (niveaux 3 et 4) - professionnel 12903
ED3_4GEN Deuxième cycle de l'enseignement secondaire et enseignement post-secondaire non-supérieur (niveaux 3 et 4) - général 12711
NAP Non applicable 72

geo

Code
lfsa_urgaed %>%
  left_join(geo, by = "geo") %>%
  group_by(geo, Geo) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) %>%
  mutate(Flag = gsub(" ", "-", str_to_lower(Geo)),
         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 .}

time

Code
lfsa_urgaed %>%
  group_by(time) %>%
  summarise(Nobs = n()) %>%
  arrange(desc(time)) %>%
  print_table_conditional()

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")) %>%
  left_join(geo, by = "geo") %>%
  mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) %>%
  mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(color = ifelse(geo == "EA19", color2, color)) %>%
  mutate(color = ifelse(geo == "ES", color2, color)) %>%
  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_5flags +
  scale_x_date(breaks = seq(1960, 2026, 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")) %>%
  left_join(geo, by = "geo") %>%
  mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) %>%
  mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(color = ifelse(geo == "EA19", color2, color)) %>%
  mutate(color = ifelse(geo == "ES", color2, color)) %>%
  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_5flags +
  scale_x_date(breaks = seq(1960, 2026, 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")) %>%
  left_join(geo, by = "geo") %>%
  mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) %>%
  mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(color = ifelse(geo == "EA19", color2, color)) %>%
  mutate(color = ifelse(geo == "ES", color2, color)) %>%
  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_5flags +
  scale_x_date(breaks = seq(1960, 2026, 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")) %>%
  left_join(geo, by = "geo") %>%
  mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) %>%
  mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(color = ifelse(geo == "EA19", color2, color)) %>%
  mutate(color = ifelse(geo == "ES", color2, color)) %>%
  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_5flags +
  scale_x_date(breaks = seq(1960, 2026, 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 %>%
  left_join(geo, by = "geo") %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = values/100, color = Geo, linetype = Geo) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 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 %>%
  left_join(geo, by = "geo") %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = values/100, color = Geo, linetype = Geo) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 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 %>%
  left_join(geo, by = "geo") %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = values/100, color = Geo, linetype = Geo) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 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))