Employees, domestic concept - annual data

Data - Eurostat

geo

Code
tipsna62 %>%
  left_join(geo, by = "geo") %>%
  group_by(geo, Geo) %>%
  summarise(Nobs = n()) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

geo - Eurozone

List of Countries: Austria, Belgium, Cyprus, Estonia, Finland, France, Germany, Greece, Ireland, Italy, Latvia, Lithuania, Luxembourg, Malta, The Netherlands, Portugal, Slovakia, Slovenia and Spain

Code
tipsna62 %>%
  filter(geo %in% c("AT", "BE", "CY", "EE", "FI", "FR", "DE", "EL", "IE",
                    "IT", "LV", "LT", "LU", "MT", "NL", "PT", "SK", "SI", "ES")) %>%
  left_join(geo, by = "geo") %>%
  group_by(geo, Geo) %>%
  summarise(Nobs = n()) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

geo - Non Eurozone

Code
tipsna62 %>%
  filter(!(geo %in% c("AT", "BE", "CY", "EE", "FI", "FR", "DE", "EL", "IE",
                    "IT", "LV", "LT", "LU", "MT", "NL", "PT", "SK", "SI", "ES"))) %>%
  left_join(geo, by = "geo") %>%
  group_by(geo, Geo) %>%
  summarise(Nobs = n()) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

unit

Code
tipsna62 %>%
  left_join(unit, by = "unit") %>%
  group_by(unit, Unit) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  {if (is_html_output()) print_table(.) else .}
unit Unit Nobs
THS_PER Thousand persons 783
PCH_PRE_PER Percentage change on previous period (based on persons) 761

na_item

Code
tipsna62 %>%
  left_join(na_item, by = "na_item") %>%
  group_by(na_item, Na_item) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  {if (is_html_output()) print_table(.) else .}
na_item Na_item Nobs
SAL_DC Employees domestic concept 1544

France, Germany, Portugal

Code
tipsna62 %>%
  filter(geo %in% c("FR", "DE", "PT"),
         unit == "THS_PER") %>%
  select(geo, time, values) %>%
  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, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Employees domestic concept")

Compensation per employee, domestic concept

France, Germany, Portugal

Code
tipsna62 %>%
  filter(geo %in% c("DE", "FR", "PT"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              filter(geo %in% c("DE", "FR", "PT")) %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  year_to_date %>%
  left_join(geo, by = "geo") %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = comp/emp, color = Geo, linetype = Geo) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0, 100, 5),
               labels = dollar_format(suffix = "K€", prefix = "")) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Compensation of employees Per Employee")

France, Italy, Malta

Code
tipsna62 %>%
  filter(geo %in% c("FR", "IT", "MT"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              filter(geo %in% c("IT", "FR", "MT")) %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  year_to_date %>%
  left_join(geo, by = "geo") %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = comp/emp, color = Geo, linetype = Geo) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0, 100, 5),
               labels = dollar_format(suffix = "K€", prefix = "")) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Compensation of employees Per Employee")

Denmark, Sweden, Poland

Code
tipsna62 %>%
  filter(geo %in% c("DK", "SE", "PL"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              filter(geo %in% c("DK", "SE", "PL")) %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  year_to_date %>%
  left_join(geo, by = "geo") %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = comp/emp, color = Geo, linetype = Geo) +
  scale_color_manual(values = viridis(5)[1:4]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0, 100, 5),
               labels = dollar_format(suffix = "K€", prefix = "")) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Compensation of employees Per Employee")

Austria, Germany, Netherlands

Code
tipsna62 %>%
  filter(geo %in% c("AT", "NL", "DE"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              filter(geo %in% c("AT", "NL", "DE")) %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  year_to_date %>%
  left_join(geo, by = "geo") %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = comp/emp, color = Geo, linetype = Geo) +
  scale_color_manual(values = viridis(5)[1:4]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 100, 1),
               labels = percent_format()) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Compensation of employees Per Employee")

Growth Compensation per employee, domestic concept

France, Germany, Portugal

Code
tipsna62 %>%
  filter(geo %in% c("DE", "FR", "PT"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              filter(geo %in% c("DE", "FR", "PT")) %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  year_to_date %>%
  left_join(geo, by = "geo") %>%
  group_by(geo) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = comp_emp_d1, 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")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.7, 0.9),
        legend.title = element_blank()) +
  xlab("") + ylab("Growth of Compensation Per Employee")

France, Italy, Malta

Code
tipsna62 %>%
  filter(geo %in% c("FR", "IT", "MT"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              filter(geo %in% c("IT", "FR", "MT")) %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  year_to_date %>%
  left_join(geo, by = "geo") %>%
  group_by(geo) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = comp_emp_d1, 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")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.7, 0.9),
        legend.title = element_blank()) +
  xlab("") + ylab("Growth of Compensation Per Employee")

Denmark, Sweden, Poland

Code
tipsna62 %>%
  filter(geo %in% c("DK", "SE", "PL"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              filter(geo %in% c("DK", "SE", "PL")) %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  year_to_date %>%
  left_join(geo, by = "geo") %>%
  group_by(geo) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = comp_emp_d1, 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")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 5),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.7, 0.9),
        legend.title = element_blank()) +
  xlab("") + ylab("Growth of Compensation Per Employee")

Austria, Germany, Netherlands

Code
tipsna62 %>%
  filter(geo %in% c("AT", "NL", "DE"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              filter(geo %in% c("AT", "NL", "DE")) %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  year_to_date %>%
  left_join(geo, by = "geo") %>%
  group_by(geo) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = comp_emp_d1, 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")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.7, 0.9),
        legend.title = element_blank()) +
  xlab("") + ylab("Growth of Compensation Per Employee")

Wage Phillips curves - Eurozone

Data

  • Employees: tipsna62
  • Compensation: tipslm13
  • Unemployment: une_rt_a

Austria

Code
tipsna62 %>%
  filter(geo %in% c("AT"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.2, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Belgium

Code
tipsna62 %>%
  filter(geo %in% c("BE"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.2, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Cyprus

Code
tipsna62 %>%
  filter(geo %in% c("CY"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.2, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Germany

Code
tipsna62 %>%
  filter(geo %in% c("DE"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Estonia

Code
tipsna62 %>%
  filter(geo %in% c("EE"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Greece

Code
tipsna62 %>%
  filter(geo %in% c("EL"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.2, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Spain

Code
tipsna62 %>%
  filter(geo %in% c("ES"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.2, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Finland

Code
tipsna62 %>%
  filter(geo %in% c("FI"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

France

Code
tipsna62 %>%
  filter(geo %in% c("FR"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.2, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Ireland

Code
tipsna62 %>%
  filter(geo %in% c("IE"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Italy

Code
tipsna62 %>%
  filter(geo %in% c("IT"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.4, 0.9),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Lithuania

Code
tipsna62 %>%
  filter(geo %in% c("LT"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.4, 0.9),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Luxembourg

Code
tipsna62 %>%
  filter(geo %in% c("LU"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.4, 0.9),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Latvia

Code
tipsna62 %>%
  filter(geo %in% c("LV"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.9),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Malta

Code
tipsna62 %>%
  filter(geo %in% c("MT"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.9),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Netherlands

Code
tipsna62 %>%
  filter(geo %in% c("NL"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.3, 0.9),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Portugal

Code
tipsna62 %>%
  filter(geo %in% c("PT"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.2, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Slovenia

Code
tipsna62 %>%
  filter(geo %in% c("SI"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.3, 0.9),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Slovakia

Code
tipsna62 %>%
  filter(geo %in% c("SK"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.9),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Wage Phillips curves - Non Eurozone

Data

  • Employees: tipsna62
  • Compensation: tipslm13
  • Unemployment: une_rt_a

Bulgaria

Code
tipsna62 %>%
  filter(geo %in% c("BG"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.2, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Bulgaria (1999-)

Code
tipsna62 %>%
  filter(geo %in% c("BG"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  filter(date >= as.Date("1999-01-01")) %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Czechia

Code
tipsna62 %>%
  filter(geo %in% c("CZ"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.2, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Denmark

Code
tipsna62 %>%
  filter(geo %in% c("DK"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Croatia

Code
tipsna62 %>%
  filter(geo %in% c("HR"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.2, 0.15),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Hungary

Code
tipsna62 %>%
  filter(geo %in% c("HU"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.2, 0.15),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Poland

Code
tipsna62 %>%
  filter(geo %in% c("PL"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Romania

Code
tipsna62 %>%
  filter(geo %in% c("RO"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 5),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")

Sweden

Code
tipsna62 %>%
  filter(geo %in% c("SE"),
         unit == "THS_PER") %>%
  select(geo, time, emp = values) %>%
  left_join(tipslm13 %>%
              select(geo, time, comp = values),
            by = c("geo", "time")) %>%
  left_join(une_rt_a %>%
              filter(age == "Y20-64",
                     sex == "T",
                     unit == "PC_ACT") %>%
              select(geo, time, unr = values),
            by = c("geo", "time")) %>%
  mutate(comp_emp = comp/emp,
         comp_emp_d1 = comp_emp/lag(comp_emp, 1)-1) %>%
  year_to_date %>%
  transmute(date, comp_emp_d1=100*comp_emp_d1, unr = unr) %>%
  gather(variable, value, -date) %>%
  mutate(Variable = case_when(variable == "comp_emp_d1" ~ "Wage Inflation (%)",
                              variable == "unr" ~ "Unemployment Rate (%)")) %>%
  ggplot + geom_line() + theme_minimal()  +
  aes(x = date, y = value/100, color = Variable, linetype = Variable) +
  scale_color_manual(values = viridis(3)[1:2]) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-100, 100, 1),
                     labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.85),
        legend.title = element_blank()) +
  xlab("") + ylab("Unemployment Rate, Wage Inflation (%)")