Looking at the relationship between wages and unemployment over a 20 year span.

library(ggplot2)
library(dplyr)
library(lubridate)
library(broom)
wages <- readRDS("data/wages.rds")
unemployment <- readRDS("data/unemployment.rds")
ggplot(wages, aes(date, hourly_wages_2016)) + 
  geom_line() +
  labs(x = "Date", y = "Hourly wages (2016 dollars)") +
  theme_minimal()

ggplot(unemployment, aes(date, unemployment_rate)) + 
  geom_line() +
  labs(x = "Date", y = "Unemployment rate") +
  theme_minimal()

Now let’s look at the relationship between the two.

wages <- wages %>% left_join(unemployment, by = "date")
ggplot(wages, aes(unemployment_rate, hourly_wages_2016)) + 
  geom_point() +
  geom_smooth(method = lm) +
  labs(x = "Unemployment rate", y = "Hourly wages (2016 dollars)") +
  theme_minimal()

So there is a linear relationship between unemployment rate and hourly wages, but two things are weird:

  1. Wages increase with unemployment, which is the opposite of what we expect (an increasing “supply” of workers should devalue labor).
  2. There are some pretty startling residuals where the pattern seems reversed (i.e., what we would expect).

Let’s look at this again by year.

wages <- wages %>%
  mutate(year = year(date))
ggplot(wages, aes(unemployment_rate, hourly_wages_2016,
                  color = year, group = year)) + 
  geom_point() +
  geom_smooth(method = lm) +
  labs(x = "Unemployment rate", y = "Hourly wages (2016 dollars)") +
  theme_minimal()

This makes it clear that there are years that fit the “expected” pattern (wages go up as unemployment drops) and years that don’t. Let’s fit a linear model to each year and then plot the slopes.

yearlyModels <- wages %>%
  group_by(year) %>%
  do(tidy(lm(hourly_wages_2016 ~ unemployment_rate, data = .)))
yearlyModels %>%
  filter(term == "unemployment_rate") %>%
  ggplot(aes(year, estimate)) +
  geom_line() +
  geom_hline(yintercept = 0, linetype = "dashed") +
  labs(x = "Year", y = "Estimated wages/unemployment slope") +
  theme_minimal()

There’s a mix of positive and negative slopes across years with a varying periodicity. There is not strong evidence that low unemployment leads to increased hourly wages.

LS0tDQp0aXRsZTogIldhZ2VzIHZzLiBVbmVtcGxveW1lbnQiDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQpMb29raW5nIGF0IHRoZSByZWxhdGlvbnNoaXAgYmV0d2VlbiB3YWdlcyBhbmQgdW5lbXBsb3ltZW50IG92ZXIgYSAyMCB5ZWFyIHNwYW4uDQoNCiogV2FnZSBkYXRhOiBhdmVyYWdlIGhvdXJseSBlYXJuaW5ncyBvZiBwcm9kdWN0aW9uIGFuZCBub25zdXBlcnZpc29yeSBlbXBsb3llZXMgKGFkanVzdGVkIHRvIDIwMTYtZG9sbGFycywgc291cmNlOiBGUkVEKS4NCiogVW5lbXBsb3ltZW50IGRhdGE6IGxhYm9yIGZvcmNlIHN0YXRpc3RpY3MgZnJvbSB0aGUgY3VycmVudCBwb3B1bGF0aW9uIHN1cnZleSAoc291cmNlOiBCTFMpLg0KDQpgYGB7ciwgcmVzdWx0cz0naGlkZSd9DQpsaWJyYXJ5KGdncGxvdDIpDQpsaWJyYXJ5KGRwbHlyKQ0KbGlicmFyeShsdWJyaWRhdGUpDQpsaWJyYXJ5KGJyb29tKQ0KYGBgDQpgYGB7cn0NCndhZ2VzIDwtIHJlYWRSRFMoImRhdGEvd2FnZXMucmRzIikNCnVuZW1wbG95bWVudCA8LSByZWFkUkRTKCJkYXRhL3VuZW1wbG95bWVudC5yZHMiKQ0KDQpnZ3Bsb3Qod2FnZXMsIGFlcyhkYXRlLCBob3VybHlfd2FnZXNfMjAxNikpICsgDQogIGdlb21fbGluZSgpICsNCiAgbGFicyh4ID0gIkRhdGUiLCB5ID0gIkhvdXJseSB3YWdlcyAoMjAxNiBkb2xsYXJzKSIpICsNCiAgdGhlbWVfbWluaW1hbCgpDQpnZ3Bsb3QodW5lbXBsb3ltZW50LCBhZXMoZGF0ZSwgdW5lbXBsb3ltZW50X3JhdGUpKSArIA0KICBnZW9tX2xpbmUoKSArDQogIGxhYnMoeCA9ICJEYXRlIiwgeSA9ICJVbmVtcGxveW1lbnQgcmF0ZSIpICsNCiAgdGhlbWVfbWluaW1hbCgpDQpgYGANCg0KTm93IGxldCdzIGxvb2sgYXQgdGhlIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIHRoZSB0d28uDQoNCmBgYHtyfQ0Kd2FnZXMgPC0gd2FnZXMgJT4lIGxlZnRfam9pbih1bmVtcGxveW1lbnQsIGJ5ID0gImRhdGUiKQ0KZ2dwbG90KHdhZ2VzLCBhZXModW5lbXBsb3ltZW50X3JhdGUsIGhvdXJseV93YWdlc18yMDE2KSkgKyANCiAgZ2VvbV9wb2ludCgpICsNCiAgZ2VvbV9zbW9vdGgobWV0aG9kID0gbG0pICsNCiAgbGFicyh4ID0gIlVuZW1wbG95bWVudCByYXRlIiwgeSA9ICJIb3VybHkgd2FnZXMgKDIwMTYgZG9sbGFycykiKSArDQogIHRoZW1lX21pbmltYWwoKQ0KYGBgDQoNClNvIHRoZXJlICppcyogYSBsaW5lYXIgcmVsYXRpb25zaGlwIGJldHdlZW4gdW5lbXBsb3ltZW50IHJhdGUgYW5kIGhvdXJseSB3YWdlcywgYnV0IHR3byB0aGluZ3MgYXJlIHdlaXJkOg0KDQoxLiBXYWdlcyAqaW5jcmVhc2UqIHdpdGggdW5lbXBsb3ltZW50LCB3aGljaCBpcyB0aGUgb3Bwb3NpdGUgb2Ygd2hhdCB3ZSBleHBlY3QgKGFuIGluY3JlYXNpbmcgInN1cHBseSIgb2Ygd29ya2VycyBzaG91bGQgZGV2YWx1ZSBsYWJvcikuDQoyLiBUaGVyZSBhcmUgc29tZSBwcmV0dHkgc3RhcnRsaW5nIHJlc2lkdWFscyB3aGVyZSB0aGUgcGF0dGVybiBzZWVtcyByZXZlcnNlZCAoaS5lLiwgd2hhdCB3ZSB3b3VsZCBleHBlY3QpLg0KDQpMZXQncyBsb29rIGF0IHRoaXMgYWdhaW4gYnkgeWVhci4NCg0KYGBge3J9DQp3YWdlcyA8LSB3YWdlcyAlPiUNCiAgbXV0YXRlKHllYXIgPSB5ZWFyKGRhdGUpKQ0KDQpnZ3Bsb3Qod2FnZXMsIGFlcyh1bmVtcGxveW1lbnRfcmF0ZSwgaG91cmx5X3dhZ2VzXzIwMTYsDQogICAgICAgICAgICAgICAgICBjb2xvciA9IHllYXIsIGdyb3VwID0geWVhcikpICsgDQogIGdlb21fcG9pbnQoKSArDQogIGdlb21fc21vb3RoKG1ldGhvZCA9IGxtKSArDQogIGxhYnMoeCA9ICJVbmVtcGxveW1lbnQgcmF0ZSIsIHkgPSAiSG91cmx5IHdhZ2VzICgyMDE2IGRvbGxhcnMpIikgKw0KICB0aGVtZV9taW5pbWFsKCkNCmBgYA0KDQpUaGlzIG1ha2VzIGl0IGNsZWFyIHRoYXQgdGhlcmUgYXJlIHllYXJzIHRoYXQgZml0IHRoZSAiZXhwZWN0ZWQiIHBhdHRlcm4gKHdhZ2VzIA0KZ28gdXAgYXMgdW5lbXBsb3ltZW50IGRyb3BzKSBhbmQgeWVhcnMgdGhhdCBkb24ndC4gTGV0J3MgZml0IGEgbGluZWFyIG1vZGVsIHRvIA0KZWFjaCB5ZWFyIGFuZCB0aGVuIHBsb3QgdGhlIHNsb3Blcy4NCg0KYGBge3J9DQp5ZWFybHlNb2RlbHMgPC0gd2FnZXMgJT4lDQogIGdyb3VwX2J5KHllYXIpICU+JQ0KICBkbyh0aWR5KGxtKGhvdXJseV93YWdlc18yMDE2IH4gdW5lbXBsb3ltZW50X3JhdGUsIGRhdGEgPSAuKSkpDQoNCnllYXJseU1vZGVscyAlPiUNCiAgZmlsdGVyKHRlcm0gPT0gInVuZW1wbG95bWVudF9yYXRlIikgJT4lDQogIGdncGxvdChhZXMoeWVhciwgZXN0aW1hdGUpKSArDQogIGdlb21fbGluZSgpICsNCiAgZ2VvbV9obGluZSh5aW50ZXJjZXB0ID0gMCwgbGluZXR5cGUgPSAiZGFzaGVkIikgKw0KICBsYWJzKHggPSAiWWVhciIsIHkgPSAiRXN0aW1hdGVkIHdhZ2VzL3VuZW1wbG95bWVudCBzbG9wZSIpICsNCiAgdGhlbWVfbWluaW1hbCgpDQpgYGANCg0KVGhlcmUncyBhIG1peCBvZiBwb3NpdGl2ZSBhbmQgbmVnYXRpdmUgc2xvcGVzIGFjcm9zcyB5ZWFycyB3aXRoIGEgdmFyeWluZyANCnBlcmlvZGljaXR5LiBUaGVyZSBpcyBub3Qgc3Ryb25nIGV2aWRlbmNlIHRoYXQgbG93IHVuZW1wbG95bWVudCBsZWFkcyB0byANCmluY3JlYXNlZCBob3VybHkgd2FnZXMuDQo=