Mean nominal monthly earnings of employees by sex and economic activity – Harmonized series

Data - ILO

Warning: le package 'pryr' n'est pas disponible for this version of R

Une version de ce package pour votre version de R est peut-être disponible ailleurs,
Voyez des idées à
https://cran.r-project.org/doc/manuals/r-patched/R-admin.html#Installing-packages
Warning in library(package, lib.loc = lib.loc, character.only = TRUE,
logical.return = TRUE, : aucun package nommé 'pryr' n'est trouvé

Info

Data on wages

Code
wages %>%
  mutate(Title = read_lines(paste0("~/iCloud/website/data/", source, "/",dataset, ".qmd"), skip = 1, n_max = 1) %>% gsub("title: ", "", .) %>% gsub("\"", "", .)) |>
  mutate(Download = as.Date(file.info(paste0("~/iCloud/website/data/", source, "/", dataset, ".RData"))$mtime),
         Compile = as.Date(file.info(paste0("~/iCloud/website/data/", source, "/", dataset, ".html"))$mtime)) |>
  mutate(Compile = paste0("[", Compile, "](https://fgeerolf.com/data/", source, "/", dataset, '.html)')) |>
  print_table_conditional()
source dataset Title Download Compile
eurostat earn_mw_cur Monthly minimum wages - bi-annual data 2026-04-14 [2026-08-13]
eurostat ei_lmlc_q Labour cost index, nominal value - quarterly data NA [2026-08-13]
eurostat lc_lci_lev Labour cost levels by NACE Rev. 2 activity 2026-04-14 [2026-08-13]
eurostat lc_lci_r2_q Labour cost index by NACE Rev. 2 activity - nominal value, quarterly data NA [2026-08-13]
eurostat nama_10_lp_ulc Labour productivity and unit labour costs 2026-04-14 [2026-08-13]
eurostat namq_10_lp_ulc Labour productivity and unit labour costs NA [2026-08-13]
eurostat tps00155 Minimum wages NA [2026-08-13]
fred wage Wage NA [2026-08-12]
ilo EAR_4MTH_SEX_ECO_CUR_NB_A Mean nominal monthly earnings of employees by sex and economic activity -- Harmonized series 2023-06-01 [2026-08-12]
ilo EAR_XEES_SEX_ECO_NB_Q Mean nominal monthly earnings of employees by sex and economic activity -- Harmonized series 2023-06-01 [2026-08-12]
oecd AV_AN_WAGE Average annual wages 2026-04-14 [2026-08-13]
oecd AWCOMP Taxing Wages - Comparative tables NA [2026-08-13]
oecd EAR_MEI Hourly Earnings (MEI) NA [2026-08-13]
oecd HH_DASH Household Dashboard NA [2026-08-13]
oecd MIN2AVE Minimum relative to average wages of full-time workers - MIN2AVE NA [2026-08-13]
oecd RMW Real Minimum Wages - RMW NA [2026-08-13]
oecd ULC_EEQ Unit labour costs and labour productivity (employment based), Total economy NA [2026-08-13]

Données sur les salaires

Code
salaires %>%
  mutate(Title = read_lines(paste0("~/iCloud/website/data/", source, "/",dataset, ".qmd"), skip = 1, n_max = 1) %>% gsub("title: ", "", .) %>% gsub("\"", "", .)) |>
  mutate(Download = as.Date(file.info(paste0("~/iCloud/website/data/", source, "/", dataset, ".RData"))$mtime),
         Compile = as.Date(file.info(paste0("~/iCloud/website/data/", source, "/", dataset, ".html"))$mtime)) |>
  mutate(Compile = paste0("[", Compile, "](https://fgeerolf.com/data/", source, "/", dataset, '.html)')) |>
  print_table_conditional()
source dataset Title Download Compile
dares les-indices-de-salaire-de-base Les indices de salaire de base NA [2026-08-13]
insee CNA-2014-RDB Revenu et pouvoir d’achat des ménages 2026-07-23 [2026-08-13]
insee CNT-2014-CSI Comptes de secteurs institutionnels NA [2026-08-13]
insee ECRT2023 Emploi, chômage, revenus du travail - Edition 2023 NA [2026-08-13]
insee INDICE-TRAITEMENT-FP Indice de traitement brut dans la fonction publique de l'État NA [2026-08-13]
insee SALAIRES-ACEMO Indices trimestriels de salaires dans le secteur privé - Résultats par secteur d’activité NA [2026-08-13]
insee SALAIRES-ACEMO-2017 Indices trimestriels de salaires dans le secteur privé NA [2026-08-13]
insee SALAIRES-ANNUELS Salaires annuels NA [2026-08-13]
insee T_2101 2.101 – Revenu disponible brut des ménages et évolution du pouvoir d'achat par personne, par ménage et par unité de consommation (En milliards euros et %) NA [2026-08-13]
insee T_7401 7.401 – Compte des ménages (S14) (En milliards d'euros) NA [2026-08-13]
insee if230 Séries longues sur les salaires dans le secteur privé NA [2026-08-13]
insee ir_salaires_SL_23_csv Séries longues sur les salaires dans le secteur privé - Base Tous salariés - Insee Résultats NA [2026-08-13]
insee ir_salaires_SL_csv Séries longues sur les salaires dans le secteur privé - Base Tous salariés - Insee Résultats NA [2026-08-13]
insee t_salaire_val Salaire moyen par tête - SMPT (données CVS) NA [2026-08-13]

ref_area

Code
EAR_4MTH_SEX_ECO_CUR_NB_A |>
  left_join(ref_area, by = "ref_area") |>
  group_by(ref_area, Ref_area) |>
  summarise(Nobs = n()) |>
  mutate(Flag = gsub(" ", "-", str_to_lower(Ref_area)),
         Flag = paste0('<img src="../../bib/flags/vsmall/', Flag, '.png" alt="Flag">')) |>
  select(Flag, everything()) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .}

indicator

Code
EAR_4MTH_SEX_ECO_CUR_NB_A |>
  left_join(indicator, by = "indicator") |>
  group_by(indicator, Indicator) |>
  summarise(Nobs = n()) |>
  print_table_conditional()
indicator Indicator Nobs
EAR_4MTH_SEX_ECO_CUR_NB Mean nominal monthly earnings of employees by sex and economic activity -- Harmonized series 340750

sex

Code
EAR_4MTH_SEX_ECO_CUR_NB_A |>
  left_join(sex, by = "sex") |>
  group_by(sex, Sex) |>
  summarise(Nobs = n()) |>
  arrange(-Nobs) |>
  print_table_conditional()
sex Sex Nobs
SEX_T Sex: Total 135340
SEX_M Sex: Male 104335
SEX_F Sex: Female 101057
SEX_O Sex: Other 18

classif1

Code
EAR_4MTH_SEX_ECO_CUR_NB_A |>
  left_join(classif1, by = "classif1") |>
  group_by(classif1, Classif1) |>
  summarise(Nobs = n()) |>
  print_table_conditional()

classif2

Code
EAR_4MTH_SEX_ECO_CUR_NB_A |>
  left_join(classif2, by = "classif2") |>
  group_by(classif2, Classif2) |>
  summarise(Nobs = n()) |>
  print_table_conditional()
classif2 Classif2 Nobs
CUR_TYPE_LCU Currency: Local currency 129067
CUR_TYPE_PPP Currency: 2017 PPP $ 98895
CUR_TYPE_USD Currency: U.S. dollars 112788

source

Code
EAR_4MTH_SEX_ECO_CUR_NB_A |>
  left_join(source, by = "source") |>
  group_by(source, Source) |>
  summarise(Nobs = n()) |>
  arrange(-Nobs) |>
  print_table_conditional()

ECO_AGGREGATE_TOTAL, CUR_TYPE_LCU

Table

Code
EAR_4MTH_SEX_ECO_CUR_NB_A |>
  filter(classif1 == "ECO_AGGREGATE_TOTAL",
         sex == "SEX_T") |>
  left_join(ref_area, by = "ref_area") |>
  group_by(ref_area, Ref_area, classif2) |>
  summarise(Nobs = n()) |>
  spread(classif2, Nobs) |>
  arrange(-CUR_TYPE_LCU) |>
  mutate(Flag = gsub(" ", "-", str_to_lower(Ref_area)),
         Flag = paste0('<img src="../../bib/flags/vsmall/', Flag, '.png" alt="Flag">')) |>
  select(Flag, everything()) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .}

China

Code
EAR_4MTH_SEX_ECO_CUR_NB_A |>
  filter(classif1 == "ECO_AGGREGATE_TOTAL",
         sex == "SEX_T",
         ref_area == "CHN") |>
  left_join(classif2, by = "classif2") |>
  year_to_date() |>
  ggplot() + geom_line(aes(x = date, y = obs_value, color = Classif2)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.3, 0.8),
        legend.title = element_blank()) +
  scale_y_log10(breaks = c(1000, 2000, 3000, 5000, 8000, 10000, 20000, 30000, 50000),
                labels = dollar_format(suffix = "", prefix = "", accuracy = 1))

Individual Countries

Argentina

Table

Code
EAR_4MTH_SEX_ECO_CUR_NB_A |>
  filter(ref_area == "ARG",
         classif2 == "CUR_TYPE_LCU",
         sex == "SEX_T") |>
  left_join(classif1, by = "classif1") |>
  group_by(classif1, Classif1) |>
  summarise(Nobs = n()) |>
  print_table_conditional()

Essai

Code
EAR_4MTH_SEX_ECO_CUR_NB_A |>
  filter(ref_area == "ARG",
         classif1 %in% c("ECO_AGGREGATE_MAN", "ECO_AGGREGATE_TOTAL"),
         classif2 == "CUR_TYPE_LCU",
         sex == "SEX_T") |>
  left_join(classif1, by = "classif1") |>
  year_to_date() |>
  ggplot() + geom_line(aes(x = date, y = obs_value, color = Classif1)) +
  scale_color_manual(values = viridis(3)[1:2]) +
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 1), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.3, 0.8),
        legend.title = element_blank()) +
  scale_y_log10(breaks = c(1000, 2000, 3000, 5000, 8000, 10000, 20000, 30000, 50000),
                labels = dollar_format(suffix = "", prefix = "", accuracy = 1))

France

Code
EAR_4MTH_SEX_ECO_CUR_NB_A |>
  filter(ref_area == "FRA",
         classif1 %in% c("ECO_AGGREGATE_MAN", "ECO_AGGREGATE_TOTAL"),
         classif2 == "CUR_TYPE_LCU",
         sex == "SEX_T") |>
  left_join(classif1, by = "classif1") |>
  year_to_date() |>
  ggplot() + geom_line(aes(x = date, y = obs_value, color = Classif1)) +
  scale_color_manual(values = viridis(3)[1:2]) +
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 1), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.7, 0.2),
        legend.title = element_blank()) +
  scale_y_log10(breaks = seq(200, 3000, 200),
                labels = dollar_format(suffix = "", prefix = "", accuracy = 1))