Functions

## Functions
with.overlay <- function(est, s) { attr(est,'overlay') = s; est }

estimators <- function(sdid,sc,s) {
  estimator.list = list(with.overlay(sdid, s), sc, sdid)
  names(estimator.list)=c('SDID+fixed effect', 'synth. control', 'synth. diff-in-diff')
  estimator.list
}

plot.estimators <- function(ests, alpha.multiplier) {
  p = synthdid_plot(ests, se.method='none',
                    alpha.multiplier=alpha.multiplier, facet=rep(1,length(ests)),
                    trajectory.linetype = 1, effect.curvature=-.4,
                    trajectory.alpha=1, effect.alpha=.5, diagram.alpha=1)
  suppressMessages(p + scale_alpha(range=c(0,1), guide='none'))
}

Civil Labor

df2 <- read.csv("Civil Labor Ballance.csv") %>%
    filter(COUNTY != "jefferson parish", COUNTY != "orleans parish",
        COUNTY != "plaquemines parish", COUNTY != "st. bernard parish",
        COUNTY != "st. charles parish", COUNTY != "st. helena parish",
        COUNTY != "st. james parish", COUNTY != "bay county",
        COUNTY != "escambia county", COUNTY != "franklin county",
        COUNTY != "gulf county", COUNTY != "okaloosa county",
        COUNTY != "santa rosa county", COUNTY != "walton county",
        COUNTY != "collier county", COUNTY != "pickens county",
        COUNTY != "tuscaloosa county", COUNTY != "hale county",
        COUNTY != "greene county", COUNTY != "choctaw county",
        COUNTY != "sumter county", COUNTY != "clarke county",
        COUNTY != "mobile county", COUNTY != "washington county",
        COUNTY != "baldwin county") %>%
    mutate(DATE = as.Date(DATE),
        treat = ifelse(STATE == "LA" & DATE >= as.Date("2005-08-01"), 1, 0),
        year = as.numeric(format(DATE, "%Y"))) %>%
    group_by(COUNTY, STATE) %>%
    filter(!any(is.na(Civil.Labor)))

Balancing Data and Calculating Unit Weights

dt <- seq.Date(from = as.Date("2000-01-01"),
    to = as.Date("2015-12-01"), by = "month")

df.fix <- data.frame(FIPS = rep(unique(df2$FIPS), length(dt))) %>%
    arrange(FIPS) %>%
    mutate(DATE = rep(dt, length(unique(df2$FIPS))))

bal_df <- left_join(df.fix, df2, by = c("FIPS", "DATE")) %>%
    select(COUNTY, FIPS, STATE, DATE, treat, Civil.Labor) %>%
    group_by(FIPS) %>%
    filter(!any(is.na(Civil.Labor))) %>%
    ungroup()

bal_df$FIPS <- factor(bal_df$FIPS)
bal_df <- as.data.frame(bal_df)
bal_df$lg <- log(bal_df$Civil.Labor)

setup <- panel.matrices(bal_df,
    unit = "FIPS", time = "DATE", outcome = "lg", treatment = "treat")

sdid.df <- synthdid_estimate(setup$Y, setup$N0, setup$T0)

unit.weights <- synthdid_controls(sdid.df, weight.type = 'omega', mass = 1)
unit.df <- data.frame(sdid = round(unit.weights[rev(1:nrow(unit.weights)), ], 3)) %>%
    rownames_to_column(var = "FIPS")

head(unit.df)
##    FIPS sdid
## 1 13177    0
## 2 13013    0
## 3 46061    0
## 4 13169    0
## 5  4021    0
## 6 20131    0

Subsetting data by Weight Counties (SDID > 0)

map_df <- unit.df %>%
    mutate(sdid_mp = ifelse(sdid > 0, 1, 0))

cnty_fips <- df2 %>%
    distinct(COUNTY, FIPS)

map_sdid <- map_df %>%
  filter(sdid_mp == 1) %>%
  merge(cnty_fips, by = "FIPS")

regdf <- df2 %>%
    filter(STATE == "LA" | FIPS %in% map_sdid$FIPS)

## SUbset Data, because we want focus on before Aug 2015
df3 <- regdf %>%
    filter(DATE < as.Date("2015-08-01")) %>%
    mutate(treat = as.numeric(STATE == "LA"))

Civil Labor Regression Model

## Makes Date Dummy
dloop <- data.frame(DATE = unique(df3$DATE))

dloop <- dloop %>%
  mutate(year = format(DATE,"%Y"),
         month=str_pad(string = format(DATE,"%m"),width = 2,side = "left",pad = 0))

## YEAR DUMMY
for (i in 1:nrow(dloop)) {
  df3[paste0("d.", dloop$year[i],".",dloop$month[i])] <- as.numeric(df3$DATE == unique(df3$DATE)[i])
}

## RUN MODEL
did.reg <- felm(log(Civil.Labor) ~
           treat:(d.2000.01+d.2000.02+d.2000.03+d.2000.04+d.2000.05+d.2000.06+d.2000.07+d.2000.08+d.2000.09+d.2000.10+d.2000.11+d.2000.12+
           d.2001.01+d.2001.02+d.2001.03+d.2001.04+d.2001.05+d.2001.06+d.2001.07+d.2001.08+d.2001.09+d.2001.10+d.2001.11+d.2001.12+
           d.2002.01+d.2002.02+d.2002.03+d.2002.04+d.2002.05+d.2002.06+d.2002.07+d.2002.08+d.2002.09+d.2002.10+d.2002.11+d.2002.12+
           d.2003.01+d.2003.02+d.2003.03+d.2003.04+d.2003.05+d.2003.06+d.2003.07+d.2003.08+d.2003.09+d.2003.10+d.2003.11+d.2003.12+
           d.2004.01+d.2004.02+d.2004.03+d.2004.04+d.2004.05+d.2004.06+d.2004.07+d.2004.08+d.2004.09+d.2004.10+d.2004.11+d.2004.12+
           d.2005.01+d.2005.02+d.2005.03+d.2005.04+d.2005.05+d.2005.06+d.2005.07+d.2005.09+d.2005.10+d.2005.11+d.2005.12+
           d.2006.01+d.2006.02+d.2006.03+d.2006.04+d.2006.05+d.2006.06+d.2006.07+d.2006.08+d.2006.09+d.2006.10+d.2006.11+d.2006.12+
           d.2007.01+d.2007.02+d.2007.03+d.2007.04+d.2007.05+d.2007.06+d.2007.07+d.2007.08+d.2007.09+d.2007.10+d.2007.11+d.2007.12+
           d.2008.01+d.2008.02+d.2008.03+d.2008.04+d.2008.05+d.2008.06+d.2008.07+d.2008.08+d.2008.09+d.2008.10+d.2008.11+d.2008.12+
           d.2009.01+d.2009.02+d.2009.03+d.2009.04+d.2009.05+d.2009.06+d.2009.07+d.2009.08+d.2009.09+d.2009.10+d.2009.11+d.2009.12+
           d.2010.01+d.2010.02+d.2010.03+d.2010.04+d.2010.05+d.2010.06+d.2010.07+d.2010.08+d.2010.09+d.2010.10+d.2010.11+d.2010.12+
           d.2011.01+d.2011.02+d.2011.03+d.2011.04+d.2011.05+d.2011.06+d.2011.07+d.2011.08+d.2011.09+d.2011.10+d.2011.11+d.2011.12+
           d.2012.01+d.2012.02+d.2012.03+d.2012.04+d.2012.05+d.2012.06+d.2012.07+d.2012.08+d.2012.09+d.2012.10+d.2012.11+d.2012.12+
           d.2013.01+d.2013.02+d.2013.03+d.2013.04+d.2013.05+d.2013.06+d.2013.07+d.2013.08+d.2013.09+d.2013.10+d.2013.11+d.2013.12+
           d.2014.01+d.2014.02+d.2014.03+d.2014.04+d.2014.05+d.2014.06+d.2014.07+d.2014.08+d.2014.09+d.2014.10+d.2014.11+d.2014.12+
           d.2015.01+d.2015.02+d.2015.03+d.2015.04+d.2015.05+d.2015.06+d.2015.07) |
           COUNTY + DATE | 0 | COUNTY,
              data = df3)
summary(did.reg)
## 
## Call:
##    felm(formula = log(Civil.Labor) ~ treat:(d.2000.01 + d.2000.02 +      d.2000.03 + d.2000.04 + d.2000.05 + d.2000.06 + d.2000.07 +      d.2000.08 + d.2000.09 + d.2000.10 + d.2000.11 + d.2000.12 +      d.2001.01 + d.2001.02 + d.2001.03 + d.2001.04 + d.2001.05 +      d.2001.06 + d.2001.07 + d.2001.08 + d.2001.09 + d.2001.10 +      d.2001.11 + d.2001.12 + d.2002.01 + d.2002.02 + d.2002.03 +      d.2002.04 + d.2002.05 + d.2002.06 + d.2002.07 + d.2002.08 +      d.2002.09 + d.2002.10 + d.2002.11 + d.2002.12 + d.2003.01 +      d.2003.02 + d.2003.03 + d.2003.04 + d.2003.05 + d.2003.06 +      d.2003.07 + d.2003.08 + d.2003.09 + d.2003.10 + d.2003.11 +      d.2003.12 + d.2004.01 + d.2004.02 + d.2004.03 + d.2004.04 +      d.2004.05 + d.2004.06 + d.2004.07 + d.2004.08 + d.2004.09 +      d.2004.10 + d.2004.11 + d.2004.12 + d.2005.01 + d.2005.02 +      d.2005.03 + d.2005.04 + d.2005.05 + d.2005.06 + d.2005.07 +      d.2005.09 + d.2005.10 + d.2005.11 + d.2005.12 + d.2006.01 +      d.2006.02 + d.2006.03 + d.2006.04 + d.2006.05 + d.2006.06 +      d.2006.07 + d.2006.08 + d.2006.09 + d.2006.10 + d.2006.11 +      d.2006.12 + d.2007.01 + d.2007.02 + d.2007.03 + d.2007.04 +      d.2007.05 + d.2007.06 + d.2007.07 + d.2007.08 + d.2007.09 +      d.2007.10 + d.2007.11 + d.2007.12 + d.2008.01 + d.2008.02 +      d.2008.03 + d.2008.04 + d.2008.05 + d.2008.06 + d.2008.07 +      d.2008.08 + d.2008.09 + d.2008.10 + d.2008.11 + d.2008.12 +      d.2009.01 + d.2009.02 + d.2009.03 + d.2009.04 + d.2009.05 +      d.2009.06 + d.2009.07 + d.2009.08 + d.2009.09 + d.2009.10 +      d.2009.11 + d.2009.12 + d.2010.01 + d.2010.02 + d.2010.03 +      d.2010.04 + d.2010.05 + d.2010.06 + d.2010.07 + d.2010.08 +      d.2010.09 + d.2010.10 + d.2010.11 + d.2010.12 + d.2011.01 +      d.2011.02 + d.2011.03 + d.2011.04 + d.2011.05 + d.2011.06 +      d.2011.07 + d.2011.08 + d.2011.09 + d.2011.10 + d.2011.11 +      d.2011.12 + d.2012.01 + d.2012.02 + d.2012.03 + d.2012.04 +      d.2012.05 + d.2012.06 + d.2012.07 + d.2012.08 + d.2012.09 +      d.2012.10 + d.2012.11 + d.2012.12 + d.2013.01 + d.2013.02 +      d.2013.03 + d.2013.04 + d.2013.05 + d.2013.06 + d.2013.07 +      d.2013.08 + d.2013.09 + d.2013.10 + d.2013.11 + d.2013.12 +      d.2014.01 + d.2014.02 + d.2014.03 + d.2014.04 + d.2014.05 +      d.2014.06 + d.2014.07 + d.2014.08 + d.2014.09 + d.2014.10 +      d.2014.11 + d.2014.12 + d.2015.01 + d.2015.02 + d.2015.03 +      d.2015.04 + d.2015.05 + d.2015.06 + d.2015.07) | COUNTY +      DATE | 0 | COUNTY, data = df3) 
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -3.0151 -0.0621 -0.0003  0.0614  3.4788 
## 
## Coefficients:
##                   Estimate Cluster s.e. t value Pr(>|t|)    
## treat:d.2000.01 -0.0234301    0.0093172  -2.515 0.012181 *  
## treat:d.2000.02 -0.0312951    0.0088329  -3.543 0.000427 ***
## treat:d.2000.03 -0.0257580    0.0088588  -2.908 0.003780 ** 
## treat:d.2000.04 -0.0198947    0.0089293  -2.228 0.026259 *  
## treat:d.2000.05 -0.0282045    0.0086225  -3.271 0.001135 ** 
## treat:d.2000.06 -0.0301440    0.0084504  -3.567 0.000391 ***
## treat:d.2000.07 -0.0292214    0.0090657  -3.223 0.001338 ** 
## treat:d.2000.08 -0.0271525    0.0091402  -2.971 0.003094 ** 
## treat:d.2000.09 -0.0302444    0.0093794  -3.225 0.001332 ** 
## treat:d.2000.10 -0.0241999    0.0091285  -2.651 0.008243 ** 
## treat:d.2000.11 -0.0242369    0.0090317  -2.684 0.007492 ** 
## treat:d.2000.12 -0.0241349    0.0092291  -2.615 0.009152 ** 
## treat:d.2001.01 -0.0215141    0.0086204  -2.496 0.012845 *  
## treat:d.2001.02 -0.0244451    0.0084359  -2.898 0.003900 ** 
## treat:d.2001.03 -0.0184558    0.0089363  -2.065 0.039341 *  
## treat:d.2001.04 -0.0209828    0.0082066  -2.557 0.010816 *  
## treat:d.2001.05 -0.0309369    0.0080291  -3.853 0.000130 ***
## treat:d.2001.06 -0.0259155    0.0077725  -3.334 0.000910 ***
## treat:d.2001.07 -0.0246951    0.0078036  -3.165 0.001634 ** 
## treat:d.2001.08 -0.0302890    0.0079186  -3.825 0.000145 ***
## treat:d.2001.09 -0.0244976    0.0081046  -3.023 0.002616 ** 
## treat:d.2001.10 -0.0256075    0.0081427  -3.145 0.001746 ** 
## treat:d.2001.11 -0.0201548    0.0079334  -2.540 0.011328 *  
## treat:d.2001.12 -0.0226823    0.0079077  -2.868 0.004275 ** 
## treat:d.2002.01 -0.0179219    0.0081672  -2.194 0.028603 *  
## treat:d.2002.02 -0.0206241    0.0076251  -2.705 0.007035 ** 
## treat:d.2002.03 -0.0171972    0.0079615  -2.160 0.031177 *  
## treat:d.2002.04 -0.0162591    0.0073501  -2.212 0.027346 *  
## treat:d.2002.05 -0.0199124    0.0076011  -2.620 0.009030 ** 
## treat:d.2002.06 -0.0152665    0.0072962  -2.092 0.036835 *  
## treat:d.2002.07 -0.0182867    0.0072481  -2.523 0.011903 *  
## treat:d.2002.08 -0.0135335    0.0075880  -1.784 0.075019 .  
## treat:d.2002.09 -0.0213541    0.0073237  -2.916 0.003685 ** 
## treat:d.2002.10 -0.0174444    0.0081806  -2.132 0.033390 *  
## treat:d.2002.11 -0.0148757    0.0078550  -1.894 0.058748 .  
## treat:d.2002.12 -0.0135409    0.0080927  -1.673 0.094821 .  
## treat:d.2003.01 -0.0079440    0.0083070  -0.956 0.339318    
## treat:d.2003.02 -0.0156572    0.0072521  -2.159 0.031258 *  
## treat:d.2003.03 -0.0133094    0.0076664  -1.736 0.083077 .  
## treat:d.2003.04 -0.0116392    0.0070877  -1.642 0.101095    
## treat:d.2003.05 -0.0145812    0.0070253  -2.076 0.038374 *  
## treat:d.2003.06 -0.0071750    0.0071460  -1.004 0.315767    
## treat:d.2003.07 -0.0094344    0.0061168  -1.542 0.123523    
## treat:d.2003.08 -0.0093130    0.0069335  -1.343 0.179733    
## treat:d.2003.09 -0.0179734    0.0067410  -2.666 0.007882 ** 
## treat:d.2003.10 -0.0093493    0.0074444  -1.256 0.209663    
## treat:d.2003.11 -0.0110081    0.0070537  -1.561 0.119156    
## treat:d.2003.12 -0.0104928    0.0060864  -1.724 0.085242 .  
## treat:d.2004.01 -0.0030869    0.0059553  -0.518 0.604416    
## treat:d.2004.02 -0.0082789    0.0053172  -1.557 0.120010    
## treat:d.2004.03 -0.0046459    0.0051082  -0.910 0.363460    
## treat:d.2004.04 -0.0047132    0.0049296  -0.956 0.339420    
## treat:d.2004.05 -0.0090782    0.0044259  -2.051 0.040698 *  
## treat:d.2004.06 -0.0117222    0.0042114  -2.783 0.005553 ** 
## treat:d.2004.07 -0.0037400    0.0043298  -0.864 0.388056    
## treat:d.2004.08 -0.0075741    0.0043159  -1.755 0.079796 .  
## treat:d.2004.09 -0.0079595    0.0041030  -1.940 0.052874 .  
## treat:d.2004.10  0.0020959    0.0042618   0.492 0.623060    
## treat:d.2004.11  0.0009122    0.0037399   0.244 0.807382    
## treat:d.2004.12 -0.0009165    0.0034561  -0.265 0.790959    
## treat:d.2005.01  0.0065728    0.0030513   2.154 0.031641 *  
## treat:d.2005.02 -0.0020135    0.0030051  -0.670 0.503097    
## treat:d.2005.03 -0.0035391    0.0031894  -1.110 0.267600    
## treat:d.2005.04  0.0020911    0.0025093   0.833 0.404991    
## treat:d.2005.05 -0.0010745    0.0020604  -0.521 0.602226    
## treat:d.2005.06  0.0021486    0.0019630   1.095 0.274173    
## treat:d.2005.07 -0.0004795    0.0013626  -0.352 0.725031    
## treat:d.2005.09  0.1043994    0.0047518  21.970  < 2e-16 ***
## treat:d.2005.10  0.1186557    0.0051398  23.086  < 2e-16 ***
## treat:d.2005.11  0.1140870    0.0052478  21.740  < 2e-16 ***
## treat:d.2005.12  0.0658781    0.0047817  13.777  < 2e-16 ***
## treat:d.2006.01  0.0518351    0.0062066   8.352 4.92e-16 ***
## treat:d.2006.02  0.0419430    0.0063008   6.657 6.47e-11 ***
## treat:d.2006.03  0.0436077    0.0060935   7.156 2.50e-12 ***
## treat:d.2006.04  0.0403622    0.0062388   6.470 2.08e-10 ***
## treat:d.2006.05  0.0365945    0.0058180   6.290 6.24e-10 ***
## treat:d.2006.06  0.0292912    0.0055926   5.237 2.28e-07 ***
## treat:d.2006.07  0.0254419    0.0058053   4.383 1.39e-05 ***
## treat:d.2006.08  0.0288219    0.0057951   4.974 8.66e-07 ***
## treat:d.2006.09  0.0353687    0.0060180   5.877 7.03e-09 ***
## treat:d.2006.10  0.0385312    0.0059246   6.504 1.69e-10 ***
## treat:d.2006.11  0.0377187    0.0056890   6.630 7.66e-11 ***
## treat:d.2006.12  0.0232368    0.0057560   4.037 6.14e-05 ***
## treat:d.2007.01  0.0287876    0.0063393   4.541 6.80e-06 ***
## treat:d.2007.02  0.0285487    0.0064187   4.448 1.04e-05 ***
## treat:d.2007.03  0.0308436    0.0063951   4.823 1.81e-06 ***
## treat:d.2007.04  0.0331244    0.0063729   5.198 2.80e-07 ***
## treat:d.2007.05  0.0235033    0.0066703   3.524 0.000459 ***
## treat:d.2007.06  0.0213526    0.0068977   3.096 0.002058 ** 
## treat:d.2007.07  0.0260544    0.0069472   3.750 0.000194 ***
## treat:d.2007.08  0.0354524    0.0068122   5.204 2.70e-07 ***
## treat:d.2007.09  0.0365209    0.0068189   5.356 1.23e-07 ***
## treat:d.2007.10  0.0349027    0.0069539   5.019 6.90e-07 ***
## treat:d.2007.11  0.0379256    0.0069010   5.496 5.82e-08 ***
## treat:d.2007.12  0.0312874    0.0069075   4.529 7.17e-06 ***
## treat:d.2008.01  0.0320967    0.0076650   4.187 3.26e-05 ***
## treat:d.2008.02  0.0355569    0.0076538   4.646 4.19e-06 ***
## treat:d.2008.03  0.0420214    0.0076208   5.514 5.27e-08 ***
## treat:d.2008.04  0.0378675    0.0074112   5.109 4.38e-07 ***
## treat:d.2008.05  0.0320513    0.0075978   4.219 2.85e-05 ***
## treat:d.2008.06  0.0279168    0.0078848   3.541 0.000431 ***
## treat:d.2008.07  0.0304463    0.0078601   3.874 0.000119 ***
## treat:d.2008.08  0.0300594    0.0078498   3.829 0.000142 ***
## treat:d.2008.09  0.0321602    0.0082182   3.913 0.000102 ***
## treat:d.2008.10  0.0347625    0.0079400   4.378 1.42e-05 ***
## treat:d.2008.11  0.0362037    0.0077770   4.655 4.01e-06 ***
## treat:d.2008.12  0.0229274    0.0086434   2.653 0.008205 ** 
## treat:d.2009.01  0.0248257    0.0089741   2.766 0.005848 ** 
## treat:d.2009.02  0.0231662    0.0088574   2.615 0.009142 ** 
## treat:d.2009.03  0.0254842    0.0089780   2.839 0.004690 ** 
## treat:d.2009.04  0.0311436    0.0091942   3.387 0.000753 ***
## treat:d.2009.05  0.0308970    0.0088592   3.488 0.000524 ***
## treat:d.2009.06  0.0319832    0.0090401   3.538 0.000435 ***
## treat:d.2009.07  0.0387471    0.0095040   4.077 5.20e-05 ***
## treat:d.2009.08  0.0257808    0.0098344   2.622 0.008983 ** 
## treat:d.2009.09  0.0258665    0.0100496   2.574 0.010302 *  
## treat:d.2009.10  0.0326674    0.0096222   3.395 0.000733 ***
## treat:d.2009.11  0.0340589    0.0095205   3.577 0.000376 ***
## treat:d.2009.12  0.0320264    0.0096461   3.320 0.000956 ***
## treat:d.2010.01  0.0156176    0.0131180   1.191 0.234316    
## treat:d.2010.02  0.0166157    0.0127592   1.302 0.193345    
## treat:d.2010.03  0.0227452    0.0128300   1.773 0.076780 .  
## treat:d.2010.04  0.0299253    0.0128860   2.322 0.020559 *  
## treat:d.2010.05  0.0334458    0.0127509   2.623 0.008943 ** 
## treat:d.2010.06  0.0394843    0.0126889   3.112 0.001951 ** 
## treat:d.2010.07  0.0476119    0.0125303   3.800 0.000160 ***
## treat:d.2010.08  0.0407614    0.0129488   3.148 0.001729 ** 
## treat:d.2010.09  0.0370466    0.0130674   2.835 0.004741 ** 
## treat:d.2010.10  0.0343115    0.0136340   2.517 0.012116 *  
## treat:d.2010.11  0.0318457    0.0138098   2.306 0.021459 *  
## treat:d.2010.12  0.0237829    0.0141056   1.686 0.092319 .  
## treat:d.2011.01  0.0242485    0.0140749   1.723 0.085452 .  
## treat:d.2011.02  0.0253328    0.0141317   1.793 0.073553 .  
## treat:d.2011.03  0.0217535    0.0143780   1.513 0.130830    
## treat:d.2011.04  0.0295833    0.0144594   2.046 0.041209 *  
## treat:d.2011.05  0.0264937    0.0142714   1.856 0.063898 .  
## treat:d.2011.06  0.0295043    0.0138927   2.124 0.034113 *  
## treat:d.2011.07  0.0377192    0.0137506   2.743 0.006274 ** 
## treat:d.2011.08  0.0267759    0.0138597   1.932 0.053853 .  
## treat:d.2011.09  0.0278246    0.0143931   1.933 0.053697 .  
## treat:d.2011.10  0.0277786    0.0148318   1.873 0.061580 .  
## treat:d.2011.11  0.0298801    0.0148395   2.014 0.044515 *  
## treat:d.2011.12  0.0227343    0.0145965   1.558 0.119889    
## treat:d.2012.01  0.0241666    0.0150293   1.608 0.108383    
## treat:d.2012.02  0.0264773    0.0150327   1.761 0.078709 .  
## treat:d.2012.03  0.0252689    0.0154290   1.638 0.102012    
## treat:d.2012.04  0.0293451    0.0164588   1.783 0.075115 .  
## treat:d.2012.05  0.0274347    0.0160189   1.713 0.087310 .  
## treat:d.2012.06  0.0356231    0.0156341   2.279 0.023055 *  
## treat:d.2012.07  0.0428942    0.0148595   2.887 0.004038 ** 
## treat:d.2012.08  0.0349245    0.0153812   2.271 0.023535 *  
## treat:d.2012.09  0.0300935    0.0155673   1.933 0.053704 .  
## treat:d.2012.10  0.0300752    0.0157632   1.908 0.056890 .  
## treat:d.2012.11  0.0347206    0.0159888   2.172 0.030291 *  
## treat:d.2012.12  0.0367194    0.0159804   2.298 0.021928 *  
## treat:d.2013.01  0.0351582    0.0158816   2.214 0.027231 *  
## treat:d.2013.02  0.0359042    0.0160698   2.234 0.025843 *  
## treat:d.2013.03  0.0356357    0.0167379   2.129 0.033669 *  
## treat:d.2013.04  0.0372327    0.0169449   2.197 0.028392 *  
## treat:d.2013.05  0.0356005    0.0163820   2.173 0.030171 *  
## treat:d.2013.06  0.0424337    0.0158930   2.670 0.007797 ** 
## treat:d.2013.07  0.0459719    0.0155530   2.956 0.003245 ** 
## treat:d.2013.08  0.0411137    0.0159777   2.573 0.010322 *  
## treat:d.2013.09  0.0419933    0.0163412   2.570 0.010424 *  
## treat:d.2013.10  0.0361700    0.0171099   2.114 0.034941 *  
## treat:d.2013.11  0.0423355    0.0173356   2.442 0.014898 *  
## treat:d.2013.12  0.0351756    0.0172444   2.040 0.041818 *  
## treat:d.2014.01  0.0343673    0.0172096   1.997 0.046292 *  
## treat:d.2014.02  0.0342722    0.0173308   1.978 0.048451 *  
## treat:d.2014.03  0.0383407    0.0179541   2.135 0.033137 *  
## treat:d.2014.04  0.0434854    0.0180737   2.406 0.016438 *  
## treat:d.2014.05  0.0435424    0.0180719   2.409 0.016288 *  
## treat:d.2014.06  0.0533562    0.0171873   3.104 0.001999 ** 
## treat:d.2014.07  0.0670442    0.0167226   4.009 6.88e-05 ***
## treat:d.2014.08  0.0654323    0.0170195   3.845 0.000134 ***
## treat:d.2014.09  0.0688324    0.0171801   4.007 6.96e-05 ***
## treat:d.2014.10  0.0637904    0.0177475   3.594 0.000353 ***
## treat:d.2014.11  0.0694899    0.0177653   3.912 0.000103 ***
## treat:d.2014.12  0.0715512    0.0172511   4.148 3.86e-05 ***
## treat:d.2015.01  0.0646208    0.0177617   3.638 0.000299 ***
## treat:d.2015.02  0.0624836    0.0177938   3.512 0.000480 ***
## treat:d.2015.03  0.0591938    0.0183110   3.233 0.001296 ** 
## treat:d.2015.04  0.0602183    0.0185442   3.247 0.001232 ** 
## treat:d.2015.05  0.0546252    0.0182001   3.001 0.002803 ** 
## treat:d.2015.06  0.0599800    0.0172991   3.467 0.000565 ***
## treat:d.2015.07  0.0649265    0.0172435   3.765 0.000183 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.6184 on 137237 degrees of freedom
## Multiple R-squared(full model): 0.8358   Adjusted R-squared: 0.8347 
## Multiple R-squared(proj model): 0.000159   Adjusted R-squared: -0.006799 
## F-statistic(full model, *iid*):731.5 on 955 and 137237 DF, p-value: < 2.2e-16 
## F-statistic(proj model):   134 on 186 and 583 DF, p-value: < 2.2e-16
summary_text <- capture.output(summary(did.reg))
coef_df <- coeftest(did.reg)
head(coef_df)
##                    Estimate  Std. Error   t value     Pr(>|t|)
## treat:d.2000.01 -0.02343013 0.009317201 -2.514717 0.0121807662
## treat:d.2000.02 -0.03129512 0.008832946 -3.542999 0.0004272735
## treat:d.2000.03 -0.02575798 0.008858788 -2.907620 0.0037804887
## treat:d.2000.04 -0.01989473 0.008929268 -2.228036 0.0262588239
## treat:d.2000.05 -0.02820447 0.008622538 -3.271017 0.0011348702
## treat:d.2000.06 -0.03014403 0.008450444 -3.567153 0.0003905372
# Extract and display the "Multiple R-squared (full model)" and "Adjusted R-squared" portion
cat(grep("Multiple R-squared\\(full model\\): [0-9.]+", summary_text, value = TRUE), "\n")
## Multiple R-squared(full model): 0.8358   Adjusted R-squared: 0.8347
## Export Coeffiecent and test for Heteroscedasticity SE
coef_df <- coeftest(did.reg)

coef_df <- coef_df[,] %>%
    as_tibble() %>%
    mutate(variables = rownames(coef_df))

coef_df$date <- as.Date(paste0(coef_df$variables, ".01"),
    format = "treat:d.%Y.%m.%d")
 
event_df <- data.frame(date=seq.Date(as.Date("2000-01-01"),as.Date("2015-07-01"),by = "month"))
event_df <- left_join(event_df, coef_df[, c(1, 2, 6)])
## Joining with `by = join_by(date)`
event_df[is.na(event_df)] <- 0

colnames(event_df) <- c("time","coef","se")

## Makes Confident Interval
event_df$ci_upper <- event_df$coef + 1.96 * event_df$se
event_df$ci_lower <- event_df$coef - 1.96 * event_df$se
head(event_df,3)
##         time        coef          se     ci_upper    ci_lower
## 1 2000-01-01 -0.02343013 0.009317201 -0.005168414 -0.04169184
## 2 2000-02-01 -0.03129512 0.008832946 -0.013982546 -0.04860769
## 3 2000-03-01 -0.02575798 0.008858788 -0.008394760 -0.04312121
dates <- seq.Date(as.Date("2000-01-01"),as.Date("2015-07-01"),by='month')
# Define start and end dates for plot
start_date <- as.Date("2004-08-01")
end_date <- as.Date("2015-07-01")

# Create sequence of dates for x-axis
dates_seq <- seq.Date(from = start_date, to = end_date, by = "month")

# Subset event_df to only include dates after or equal to start_date
event_df_sub <- event_df[dates >= start_date, ]

plot.theme <- theme(axis.text.x = element_text(angle = 45, hjust = 1),
    plot.title = element_text(size = 18, face = "bold", hjust = 0.5),
    axis.title.x = element_blank(),
    axis.title.y = element_text(size = 18, face = "bold"),
    axis.text = element_text(size = 14, face = "bold"),
    legend.text = element_text(size = 12),
    plot.caption = element_text(size = 12, face = c("italic", "bold")),
    axis.line = element_line(color = "black", size = 0.5),
    panel.background = element_blank(),
    panel.grid.major = element_line(color = "black", size = 0.1))

pl <- ggplot(event_df, aes(x = dates, y = coef)) +
  geom_point() +
  geom_line()+
  #geom_errorbar(aes(ymin = ci_lower, ymax = ci_upper), width = 0.2) +
  geom_ribbon(aes(ymin = ci_lower, ymax = ci_upper), alpha = 0.2) +
  geom_hline(yintercept = 0, linetype = "dashed", color = "red") +
  geom_vline(xintercept = as.Date("2005-08-01"), linetype = "dashed", color = "blue") +
  scale_y_continuous(labels = function(x) paste0(x * 100, "%")) +
  scale_x_date(date_labels = "%Y-%m", limits = c(start_date, end_date), breaks = "1 year") +
  labs(title = "Panel A: Civilian Labor Force", y = "Percentage") +
  plot.theme
pl

Employee Person

df4 <- read.csv("Merge Employee Person Full-Location Ballance.csv") %>%
    filter(COUNTY != "Jefferson Parish", COUNTY != "Orleans Parish",
        COUNTY != "Plaquemines Parish", COUNTY != "St. Bernard Parish",
        COUNTY != "St. Charles Parish", COUNTY != "St. Helena Parish",
        COUNTY != "St. James Parish", COUNTY != "Adams County",
        COUNTY != "Amite County", COUNTY != "Attala County",
        COUNTY != "Claiborne County", COUNTY != "Choctaw County",
        COUNTY != "Clarke County", COUNTY != "Copiah County",
        COUNTY != "Covington County", COUNTY != "Franklin County",
        COUNTY != "Forrest County", COUNTY != "George County",
        COUNTY != "Greene County", COUNTY != "Hancock County",
        COUNTY != "Harrison County", COUNTY != "Hinds County",
        COUNTY != "Holmes County", COUNTY != "Humphreys County",
        COUNTY != "Jackson County", COUNTY != "Jasper County",
        COUNTY != "Jefferson County", COUNTY != "Jefferson Davis County",
        COUNTY != "Jones County", COUNTY != "Kemper County",
        COUNTY != "Bay County", COUNTY != "Escambia County",
        COUNTY != "Franklin County", COUNTY != "Gulf County",
        COUNTY != "Okaloosa County", COUNTY != "Santa Rosa County",
        COUNTY != "Walton County", COUNTY != "Collier County",
        COUNTY != "Tuscaloosa County", COUNTY != "Pickens County",
        COUNTY != "Hale County", COUNTY != "Greene County",
        COUNTY != "Sumter County", COUNTY != "Choctaw County",
        COUNTY != "Clarke County", COUNTY != "Washington County",
        COUNTY != "Mobile County", COUNTY != "Baldwin County") %>%
    mutate(DATE = as.Date(DATE),
        treat = ifelse(STATE == "LA" & DATE >= as.Date("2005-08-01"), 1, 0),
        year = as.numeric(format(DATE, "%Y"))) %>%
    group_by(COUNTY, STATE) %>%
    filter(!any(is.na(Employee)))

Balancing Data and Calculating Unit Weights

dt <- seq.Date(from = as.Date("2000-01-01"),
    to = as.Date("2015-12-01"), by = "month")

df.fix <- data.frame(FIPS = rep(unique(df4$FIPS), length(dt))) %>%
    arrange(FIPS) %>%
    mutate(DATE = rep(dt, length(unique(df4$FIPS))))

bal_df <- left_join(df.fix, df4, by = c("FIPS", "DATE")) %>%
    select(COUNTY, FIPS, STATE, DATE, treat, Employee) %>%
    group_by(FIPS) %>%
    filter(!any(is.na(Employee))) %>%
    ungroup()

bal_df$FIPS <- factor(bal_df$FIPS)
bal_df <- as.data.frame(bal_df)
bal_df$lg <- log(bal_df$Employee)

setup <- panel.matrices(bal_df,
    unit = "FIPS", time = "DATE", outcome = "lg", treatment = "treat")

sdid.df <- synthdid_estimate(setup$Y, setup$N0, setup$T0)

unit.weights <- synthdid_controls(sdid.df, weight.type = 'omega', mass = 1)
unit.df <- data.frame(sdid = round(unit.weights[rev(1:nrow(unit.weights)), ], 3)) %>%
    rownames_to_column(var = "FIPS")

head(unit.df)
##    FIPS sdid
## 1 51179    0
## 2 28099    0
## 3 53039    0
## 4 38053    0
## 5 13217    0
## 6  8109    0

Subsetting data by Weight Counties (SDID > 0)

map_df <- unit.df %>%
    mutate(sdid_mp = ifelse(sdid > 0, 1, 0))

cnty_fips <- df4 %>%
    distinct(COUNTY, FIPS)

map_sdid <- map_df %>%
  filter(sdid_mp == 1) %>%
  merge(cnty_fips, by = "FIPS")

regdf <- df4 %>%
    filter(STATE == "LA" | FIPS %in% map_sdid$FIPS)

## SUbset Data, because we want focus on before Feb 2010
df5 <- regdf %>%
    filter(DATE < as.Date("2015-08-01")) %>%
    mutate(treat = as.numeric(STATE == "LA"))

Employee Person Regression Model

## Makes Date Dummy
dloop <- data.frame(DATE = unique(df5$DATE))

dloop <- dloop %>%
  mutate(year = format(DATE,"%Y"),
         month=str_pad(string = format(DATE,"%m"),width = 2,side = "left",pad = 0))
head(dloop)
##         DATE year month
## 1 2000-01-01 2000    01
## 2 2000-02-01 2000    02
## 3 2000-03-01 2000    03
## 4 2000-04-01 2000    04
## 5 2000-05-01 2000    05
## 6 2000-06-01 2000    06
## YEAR DUMMY
for (i in 1:nrow(dloop)) {
  df5[paste0("d.", dloop$year[i],".",dloop$month[i])] <- as.numeric(df5$DATE == unique(df5$DATE)[i])
}

## RUN MODEL
did.reg <- felm(log(Employee) ~
           treat:(d.2000.01+d.2000.02+d.2000.03+d.2000.04+d.2000.05+d.2000.06+d.2000.07+d.2000.08+d.2000.09+d.2000.10+d.2000.11+d.2000.12+
           d.2001.01+d.2001.02+d.2001.03+d.2001.04+d.2001.05+d.2001.06+d.2001.07+d.2001.08+d.2001.09+d.2001.10+d.2001.11+d.2001.12+
           d.2002.01+d.2002.02+d.2002.03+d.2002.04+d.2002.05+d.2002.06+d.2002.07+d.2002.08+d.2002.09+d.2002.10+d.2002.11+d.2002.12+
           d.2003.01+d.2003.02+d.2003.03+d.2003.04+d.2003.05+d.2003.06+d.2003.07+d.2003.08+d.2003.09+d.2003.10+d.2003.11+d.2003.12+
           d.2004.01+d.2004.02+d.2004.03+d.2004.04+d.2004.05+d.2004.06+d.2004.07+d.2004.08+d.2004.09+d.2004.10+d.2004.11+d.2004.12+
           d.2005.01+d.2005.02+d.2005.03+d.2005.04+d.2005.05+d.2005.06+d.2005.07+d.2005.09+d.2005.10+d.2005.11+d.2005.12+
           d.2006.01+d.2006.02+d.2006.03+d.2006.04+d.2006.05+d.2006.06+d.2006.07+d.2006.08+d.2006.09+d.2006.10+d.2006.11+d.2006.12+
           d.2007.01+d.2007.02+d.2007.03+d.2007.04+d.2007.05+d.2007.06+d.2007.07+d.2007.08+d.2007.09+d.2007.10+d.2007.11+d.2007.12+
           d.2008.01+d.2008.02+d.2008.03+d.2008.04+d.2008.05+d.2008.06+d.2008.07+d.2008.08+d.2008.09+d.2008.10+d.2008.11+d.2008.12+
           d.2009.01+d.2009.02+d.2009.03+d.2009.04+d.2009.05+d.2009.06+d.2009.07+d.2009.08+d.2009.09+d.2009.10+d.2009.11+d.2009.12+
           d.2010.01+d.2010.02+d.2010.03+d.2010.04+d.2010.05+d.2010.06+d.2010.07+d.2010.08+d.2010.09+d.2010.10+d.2010.11+d.2010.12+
           d.2011.01+d.2011.02+d.2011.03+d.2011.04+d.2011.05+d.2011.06+d.2011.07+d.2011.08+d.2011.09+d.2011.10+d.2011.11+d.2011.12+
           d.2012.01+d.2012.02+d.2012.03+d.2012.04+d.2012.05+d.2012.06+d.2012.07+d.2012.08+d.2012.09+d.2012.10+d.2012.11+d.2012.12+
           d.2013.01+d.2013.02+d.2013.03+d.2013.04+d.2013.05+d.2013.06+d.2013.07+d.2013.08+d.2013.09+d.2013.10+d.2013.11+d.2013.12+
           d.2014.01+d.2014.02+d.2014.03+d.2014.04+d.2014.05+d.2014.06+d.2014.07+d.2014.08+d.2014.09+d.2014.10+d.2014.11+d.2014.12+
           d.2015.01+d.2015.02+d.2015.03+d.2015.04+d.2015.05+d.2015.06+d.2015.07) |
           COUNTY + DATE | 0 | COUNTY,
              data = df5)

summary(did.reg)
## 
## Call:
##    felm(formula = log(Employee) ~ treat:(d.2000.01 + d.2000.02 +      d.2000.03 + d.2000.04 + d.2000.05 + d.2000.06 + d.2000.07 +      d.2000.08 + d.2000.09 + d.2000.10 + d.2000.11 + d.2000.12 +      d.2001.01 + d.2001.02 + d.2001.03 + d.2001.04 + d.2001.05 +      d.2001.06 + d.2001.07 + d.2001.08 + d.2001.09 + d.2001.10 +      d.2001.11 + d.2001.12 + d.2002.01 + d.2002.02 + d.2002.03 +      d.2002.04 + d.2002.05 + d.2002.06 + d.2002.07 + d.2002.08 +      d.2002.09 + d.2002.10 + d.2002.11 + d.2002.12 + d.2003.01 +      d.2003.02 + d.2003.03 + d.2003.04 + d.2003.05 + d.2003.06 +      d.2003.07 + d.2003.08 + d.2003.09 + d.2003.10 + d.2003.11 +      d.2003.12 + d.2004.01 + d.2004.02 + d.2004.03 + d.2004.04 +      d.2004.05 + d.2004.06 + d.2004.07 + d.2004.08 + d.2004.09 +      d.2004.10 + d.2004.11 + d.2004.12 + d.2005.01 + d.2005.02 +      d.2005.03 + d.2005.04 + d.2005.05 + d.2005.06 + d.2005.07 +      d.2005.09 + d.2005.10 + d.2005.11 + d.2005.12 + d.2006.01 +      d.2006.02 + d.2006.03 + d.2006.04 + d.2006.05 + d.2006.06 +      d.2006.07 + d.2006.08 + d.2006.09 + d.2006.10 + d.2006.11 +      d.2006.12 + d.2007.01 + d.2007.02 + d.2007.03 + d.2007.04 +      d.2007.05 + d.2007.06 + d.2007.07 + d.2007.08 + d.2007.09 +      d.2007.10 + d.2007.11 + d.2007.12 + d.2008.01 + d.2008.02 +      d.2008.03 + d.2008.04 + d.2008.05 + d.2008.06 + d.2008.07 +      d.2008.08 + d.2008.09 + d.2008.10 + d.2008.11 + d.2008.12 +      d.2009.01 + d.2009.02 + d.2009.03 + d.2009.04 + d.2009.05 +      d.2009.06 + d.2009.07 + d.2009.08 + d.2009.09 + d.2009.10 +      d.2009.11 + d.2009.12 + d.2010.01 + d.2010.02 + d.2010.03 +      d.2010.04 + d.2010.05 + d.2010.06 + d.2010.07 + d.2010.08 +      d.2010.09 + d.2010.10 + d.2010.11 + d.2010.12 + d.2011.01 +      d.2011.02 + d.2011.03 + d.2011.04 + d.2011.05 + d.2011.06 +      d.2011.07 + d.2011.08 + d.2011.09 + d.2011.10 + d.2011.11 +      d.2011.12 + d.2012.01 + d.2012.02 + d.2012.03 + d.2012.04 +      d.2012.05 + d.2012.06 + d.2012.07 + d.2012.08 + d.2012.09 +      d.2012.10 + d.2012.11 + d.2012.12 + d.2013.01 + d.2013.02 +      d.2013.03 + d.2013.04 + d.2013.05 + d.2013.06 + d.2013.07 +      d.2013.08 + d.2013.09 + d.2013.10 + d.2013.11 + d.2013.12 +      d.2014.01 + d.2014.02 + d.2014.03 + d.2014.04 + d.2014.05 +      d.2014.06 + d.2014.07 + d.2014.08 + d.2014.09 + d.2014.10 +      d.2014.11 + d.2014.12 + d.2015.01 + d.2015.02 + d.2015.03 +      d.2015.04 + d.2015.05 + d.2015.06 + d.2015.07) | COUNTY +      DATE | 0 | COUNTY, data = df5) 
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2.9655 -0.0498  0.0014  0.0558  3.4892 
## 
## Coefficients:
##                   Estimate Cluster s.e. t value Pr(>|t|)    
## treat:d.2000.01 -0.0266419    0.0095512  -2.789 0.005466 ** 
## treat:d.2000.02 -0.0307352    0.0090910  -3.381 0.000775 ***
## treat:d.2000.03 -0.0300071    0.0092601  -3.240 0.001266 ** 
## treat:d.2000.04 -0.0231797    0.0095868  -2.418 0.015939 *  
## treat:d.2000.05 -0.0278067    0.0094718  -2.936 0.003469 ** 
## treat:d.2000.06 -0.0272668    0.0092984  -2.932 0.003505 ** 
## treat:d.2000.07 -0.0226726    0.0100605  -2.254 0.024617 *  
## treat:d.2000.08 -0.0248916    0.0100770  -2.470 0.013812 *  
## treat:d.2000.09 -0.0329423    0.0105461  -3.124 0.001881 ** 
## treat:d.2000.10 -0.0304034    0.0102002  -2.981 0.003005 ** 
## treat:d.2000.11 -0.0324160    0.0096986  -3.342 0.000888 ***
## treat:d.2000.12 -0.0300528    0.0097452  -3.084 0.002147 ** 
## treat:d.2001.01 -0.0302456    0.0085111  -3.554 0.000413 ***
## treat:d.2001.02 -0.0282739    0.0085288  -3.315 0.000977 ***
## treat:d.2001.03 -0.0262569    0.0087849  -2.989 0.002927 ** 
## treat:d.2001.04 -0.0262923    0.0085208  -3.086 0.002135 ** 
## treat:d.2001.05 -0.0296724    0.0086158  -3.444 0.000618 ***
## treat:d.2001.06 -0.0235302    0.0083139  -2.830 0.004824 ** 
## treat:d.2001.07 -0.0192407    0.0083138  -2.314 0.021023 *  
## treat:d.2001.08 -0.0247619    0.0083993  -2.948 0.003335 ** 
## treat:d.2001.09 -0.0292304    0.0087275  -3.349 0.000867 ***
## treat:d.2001.10 -0.0268234    0.0089613  -2.993 0.002886 ** 
## treat:d.2001.11 -0.0244281    0.0085537  -2.856 0.004456 ** 
## treat:d.2001.12 -0.0269294    0.0082318  -3.271 0.001138 ** 
## treat:d.2002.01 -0.0232356    0.0079747  -2.914 0.003719 ** 
## treat:d.2002.02 -0.0219128    0.0078331  -2.797 0.005333 ** 
## treat:d.2002.03 -0.0209884    0.0080295  -2.614 0.009200 ** 
## treat:d.2002.04 -0.0193921    0.0076508  -2.535 0.011536 *  
## treat:d.2002.05 -0.0206862    0.0081739  -2.531 0.011663 *  
## treat:d.2002.06 -0.0150750    0.0077641  -1.942 0.052701 .  
## treat:d.2002.07 -0.0114271    0.0078284  -1.460 0.144952    
## treat:d.2002.08 -0.0116980    0.0081792  -1.430 0.153232    
## treat:d.2002.09 -0.0233158    0.0080821  -2.885 0.004071 ** 
## treat:d.2002.10 -0.0187801    0.0091319  -2.057 0.040208 *  
## treat:d.2002.11 -0.0177671    0.0085547  -2.077 0.038282 *  
## treat:d.2002.12 -0.0184218    0.0085178  -2.163 0.030996 *  
## treat:d.2003.01 -0.0092005    0.0079602  -1.156 0.248263    
## treat:d.2003.02 -0.0131265    0.0071501  -1.836 0.066928 .  
## treat:d.2003.03 -0.0152268    0.0073785  -2.064 0.039524 *  
## treat:d.2003.04 -0.0098073    0.0071770  -1.367 0.172347    
## treat:d.2003.05 -0.0098169    0.0073357  -1.338 0.181379    
## treat:d.2003.06 -0.0055804    0.0071650  -0.779 0.436411    
## treat:d.2003.07 -0.0043655    0.0063096  -0.692 0.489310    
## treat:d.2003.08 -0.0047050    0.0070972  -0.663 0.507651    
## treat:d.2003.09 -0.0124450    0.0072447  -1.718 0.086401 .  
## treat:d.2003.10 -0.0047254    0.0081276  -0.581 0.561210    
## treat:d.2003.11 -0.0059995    0.0075125  -0.799 0.424872    
## treat:d.2003.12 -0.0082294    0.0063354  -1.299 0.194511    
## treat:d.2004.01 -0.0050144    0.0054581  -0.919 0.358650    
## treat:d.2004.02 -0.0047867    0.0052583  -0.910 0.363062    
## treat:d.2004.03 -0.0053292    0.0049616  -1.074 0.283260    
## treat:d.2004.04 -0.0051391    0.0047835  -1.074 0.283152    
## treat:d.2004.05 -0.0073823    0.0045872  -1.609 0.108125    
## treat:d.2004.06 -0.0067700    0.0040658  -1.665 0.096469 .  
## treat:d.2004.07  0.0020748    0.0043583   0.476 0.634225    
## treat:d.2004.08  0.0025842    0.0043356   0.596 0.551392    
## treat:d.2004.09 -0.0064174    0.0042751  -1.501 0.133914    
## treat:d.2004.10  0.0009153    0.0044510   0.206 0.837149    
## treat:d.2004.11 -0.0004349    0.0038695  -0.112 0.910550    
## treat:d.2004.12 -0.0009193    0.0036829  -0.250 0.802978    
## treat:d.2005.01  0.0025215    0.0026492   0.952 0.341623    
## treat:d.2005.02 -0.0027992    0.0032144  -0.871 0.384239    
## treat:d.2005.03 -0.0058255    0.0034289  -1.699 0.089898 .  
## treat:d.2005.04  0.0013823    0.0023571   0.586 0.557827    
## treat:d.2005.05 -0.0003158    0.0021718  -0.145 0.884438    
## treat:d.2005.06  0.0028877    0.0020014   1.443 0.149643    
## treat:d.2005.07  0.0038093    0.0013320   2.860 0.004401 ** 
## treat:d.2005.09  0.0627180    0.0026133  24.000  < 2e-16 ***
## treat:d.2005.10  0.0727182    0.0039957  18.199  < 2e-16 ***
## treat:d.2005.11  0.0677205    0.0046961  14.420  < 2e-16 ***
## treat:d.2005.12  0.0623626    0.0053519  11.652  < 2e-16 ***
## treat:d.2006.01  0.0617198    0.0064749   9.532  < 2e-16 ***
## treat:d.2006.02  0.0625420    0.0067262   9.298  < 2e-16 ***
## treat:d.2006.03  0.0617166    0.0065389   9.438  < 2e-16 ***
## treat:d.2006.04  0.0601664    0.0065636   9.167  < 2e-16 ***
## treat:d.2006.05  0.0547589    0.0061522   8.901  < 2e-16 ***
## treat:d.2006.06  0.0509797    0.0058985   8.643  < 2e-16 ***
## treat:d.2006.07  0.0536674    0.0060555   8.863  < 2e-16 ***
## treat:d.2006.08  0.0478365    0.0060975   7.845 2.31e-14 ***
## treat:d.2006.09  0.0475949    0.0064407   7.390 5.59e-13 ***
## treat:d.2006.10  0.0448435    0.0063951   7.012 7.00e-12 ***
## treat:d.2006.11  0.0428748    0.0058786   7.293 1.08e-12 ***
## treat:d.2006.12  0.0340286    0.0060382   5.636 2.81e-08 ***
## treat:d.2007.01  0.0390288    0.0066633   5.857 8.16e-09 ***
## treat:d.2007.02  0.0421153    0.0066366   6.346 4.67e-10 ***
## treat:d.2007.03  0.0419824    0.0066636   6.300 6.15e-10 ***
## treat:d.2007.04  0.0428897    0.0066213   6.477 2.09e-10 ***
## treat:d.2007.05  0.0357585    0.0069350   5.156 3.54e-07 ***
## treat:d.2007.06  0.0363975    0.0073167   4.975 8.79e-07 ***
## treat:d.2007.07  0.0422663    0.0074194   5.697 2.00e-08 ***
## treat:d.2007.08  0.0472213    0.0072144   6.545 1.37e-10 ***
## treat:d.2007.09  0.0471250    0.0072464   6.503 1.79e-10 ***
## treat:d.2007.10  0.0470054    0.0073864   6.364 4.19e-10 ***
## treat:d.2007.11  0.0473938    0.0072789   6.511 1.70e-10 ***
## treat:d.2007.12  0.0442283    0.0073406   6.025 3.12e-09 ***
## treat:d.2008.01  0.0452017    0.0080817   5.593 3.54e-08 ***
## treat:d.2008.02  0.0504902    0.0081141   6.223 9.78e-10 ***
## treat:d.2008.03  0.0560431    0.0080771   6.939 1.13e-11 ***
## treat:d.2008.04  0.0535190    0.0077515   6.904 1.41e-11 ***
## treat:d.2008.05  0.0520818    0.0079164   6.579 1.12e-10 ***
## treat:d.2008.06  0.0479349    0.0083586   5.735 1.62e-08 ***
## treat:d.2008.07  0.0531057    0.0084970   6.250 8.31e-10 ***
## treat:d.2008.08  0.0508885    0.0082415   6.175 1.30e-09 ***
## treat:d.2008.09  0.0482270    0.0081986   5.882 7.08e-09 ***
## treat:d.2008.10  0.0490146    0.0083787   5.850 8.50e-09 ***
## treat:d.2008.11  0.0546714    0.0082710   6.610 9.20e-11 ***
## treat:d.2008.12  0.0468794    0.0094115   4.981 8.51e-07 ***
## treat:d.2009.01  0.0506657    0.0098735   5.132 4.01e-07 ***
## treat:d.2009.02  0.0515871    0.0099078   5.207 2.73e-07 ***
## treat:d.2009.03  0.0534296    0.0098474   5.426 8.71e-08 ***
## treat:d.2009.04  0.0562152    0.0097038   5.793 1.17e-08 ***
## treat:d.2009.05  0.0606159    0.0094293   6.428 2.83e-10 ***
## treat:d.2009.06  0.0603027    0.0096949   6.220 9.93e-10 ***
## treat:d.2009.07  0.0662839    0.0102969   6.437 2.68e-10 ***
## treat:d.2009.08  0.0560764    0.0105961   5.292 1.76e-07 ***
## treat:d.2009.09  0.0529193    0.0108820   4.863 1.52e-06 ***
## treat:d.2009.10  0.0578510    0.0103631   5.582 3.75e-08 ***
## treat:d.2009.11  0.0621224    0.0101622   6.113 1.87e-09 ***
## treat:d.2009.12  0.0596733    0.0102955   5.796 1.15e-08 ***
## treat:d.2010.01  0.0367629    0.0144776   2.539 0.011386 *  
## treat:d.2010.02  0.0458483    0.0140326   3.267 0.001154 ** 
## treat:d.2010.03  0.0484296    0.0140091   3.457 0.000589 ***
## treat:d.2010.04  0.0519907    0.0139328   3.732 0.000210 ***
## treat:d.2010.05  0.0515019    0.0138072   3.730 0.000212 ***
## treat:d.2010.06  0.0540559    0.0139201   3.883 0.000116 ***
## treat:d.2010.07  0.0634350    0.0137599   4.610 5.02e-06 ***
## treat:d.2010.08  0.0514872    0.0141415   3.641 0.000298 ***
## treat:d.2010.09  0.0437050    0.0142395   3.069 0.002253 ** 
## treat:d.2010.10  0.0396308    0.0147859   2.680 0.007579 ** 
## treat:d.2010.11  0.0363491    0.0150430   2.416 0.016006 *  
## treat:d.2010.12  0.0308766    0.0155188   1.990 0.047133 *  
## treat:d.2011.01  0.0275873    0.0156469   1.763 0.078444 .  
## treat:d.2011.02  0.0334891    0.0156776   2.136 0.033117 *  
## treat:d.2011.03  0.0285194    0.0157996   1.805 0.071617 .  
## treat:d.2011.04  0.0366581    0.0156865   2.337 0.019806 *  
## treat:d.2011.05  0.0359728    0.0153927   2.337 0.019802 *  
## treat:d.2011.06  0.0384052    0.0153073   2.509 0.012400 *  
## treat:d.2011.07  0.0495111    0.0150854   3.282 0.001097 ** 
## treat:d.2011.08  0.0392739    0.0150804   2.604 0.009458 ** 
## treat:d.2011.09  0.0341917    0.0156261   2.188 0.029086 *  
## treat:d.2011.10  0.0315061    0.0159690   1.973 0.049008 *  
## treat:d.2011.11  0.0341468    0.0158950   2.148 0.032134 *  
## treat:d.2011.12  0.0315294    0.0157763   1.999 0.046158 *  
## treat:d.2012.01  0.0271313    0.0165914   1.635 0.102575    
## treat:d.2012.02  0.0331728    0.0164228   2.020 0.043882 *  
## treat:d.2012.03  0.0306276    0.0168463   1.818 0.069606 .  
## treat:d.2012.04  0.0343515    0.0179378   1.915 0.056013 .  
## treat:d.2012.05  0.0344657    0.0175061   1.969 0.049486 *  
## treat:d.2012.06  0.0397321    0.0174615   2.275 0.023270 *  
## treat:d.2012.07  0.0513666    0.0166767   3.080 0.002174 ** 
## treat:d.2012.08  0.0413174    0.0171068   2.415 0.016053 *  
## treat:d.2012.09  0.0348482    0.0170069   2.049 0.040936 *  
## treat:d.2012.10  0.0363239    0.0170007   2.137 0.033076 *  
## treat:d.2012.11  0.0430620    0.0171365   2.513 0.012264 *  
## treat:d.2012.12  0.0438682    0.0173414   2.530 0.011698 *  
## treat:d.2013.01  0.0381321    0.0173996   2.192 0.028836 *  
## treat:d.2013.02  0.0423923    0.0174999   2.422 0.015743 *  
## treat:d.2013.03  0.0383845    0.0181881   2.110 0.035279 *  
## treat:d.2013.04  0.0406650    0.0182032   2.234 0.025893 *  
## treat:d.2013.05  0.0436768    0.0174569   2.502 0.012643 *  
## treat:d.2013.06  0.0489075    0.0172448   2.836 0.004737 ** 
## treat:d.2013.07  0.0568249    0.0168463   3.373 0.000796 ***
## treat:d.2013.08  0.0489780    0.0170945   2.865 0.004330 ** 
## treat:d.2013.09  0.0462231    0.0175530   2.633 0.008696 ** 
## treat:d.2013.10  0.0431928    0.0181485   2.380 0.017659 *  
## treat:d.2013.11  0.0490487    0.0182508   2.687 0.007420 ** 
## treat:d.2013.12  0.0490528    0.0182798   2.683 0.007509 ** 
## treat:d.2014.01  0.0468639    0.0183468   2.554 0.010911 *  
## treat:d.2014.02  0.0482600    0.0185180   2.606 0.009409 ** 
## treat:d.2014.03  0.0449164    0.0190100   2.363 0.018490 *  
## treat:d.2014.04  0.0453333    0.0189815   2.388 0.017268 *  
## treat:d.2014.05  0.0428309    0.0191961   2.231 0.026074 *  
## treat:d.2014.06  0.0506552    0.0184621   2.744 0.006275 ** 
## treat:d.2014.07  0.0614799    0.0179023   3.434 0.000640 ***
## treat:d.2014.08  0.0551724    0.0180473   3.057 0.002345 ** 
## treat:d.2014.09  0.0535197    0.0182511   2.932 0.003505 ** 
## treat:d.2014.10  0.0478328    0.0187631   2.549 0.011068 *  
## treat:d.2014.11  0.0502357    0.0188182   2.670 0.007823 ** 
## treat:d.2014.12  0.0568068    0.0184305   3.082 0.002159 ** 
## treat:d.2015.01  0.0494478    0.0191655   2.580 0.010140 *  
## treat:d.2015.02  0.0482918    0.0190695   2.532 0.011609 *  
## treat:d.2015.03  0.0427195    0.0196126   2.178 0.029823 *  
## treat:d.2015.04  0.0406070    0.0196447   2.067 0.039201 *  
## treat:d.2015.05  0.0387725    0.0193265   2.006 0.045332 *  
## treat:d.2015.06  0.0458421    0.0184911   2.479 0.013472 *  
## treat:d.2015.07  0.0517953    0.0183351   2.825 0.004903 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.5085 on 119699 degrees of freedom
## Multiple R-squared(full model): 0.8893   Adjusted R-squared: 0.8884 
## Multiple R-squared(proj model): 0.0003005   Adjusted R-squared: -0.007341 
## F-statistic(full model, *iid*): 1051 on 915 and 119699 DF, p-value: < 2.2e-16 
## F-statistic(proj model): 126.5 on 186 and 543 DF, p-value: < 2.2e-16
summary_text <- capture.output(summary(did.reg))
coef_df <- coeftest(did.reg)
head(coef_df)
##                    Estimate  Std. Error   t value     Pr(>|t|)
## treat:d.2000.01 -0.02664190 0.009551219 -2.789372 0.0054664568
## treat:d.2000.02 -0.03073522 0.009090983 -3.380847 0.0007746154
## treat:d.2000.03 -0.03000708 0.009260098 -3.240471 0.0012664106
## treat:d.2000.04 -0.02317975 0.009586772 -2.417888 0.0159390089
## treat:d.2000.05 -0.02780665 0.009471805 -2.935729 0.0034686027
## treat:d.2000.06 -0.02726679 0.009298368 -2.932427 0.0035051116
# Extract and display the "Multiple R-squared (full model)" and "Adjusted R-squared" portion
cat(grep("Multiple R-squared\\(full model\\): [0-9.]+", summary_text, value = TRUE), "\n")
## Multiple R-squared(full model): 0.8893   Adjusted R-squared: 0.8884
## Export Coeffiecent and test for Heteroscedasticity SE
coef_df <- coeftest(did.reg)

coef_df <- coef_df[,] %>%
    as_tibble() %>%
    mutate(variables = rownames(coef_df))

coef_df$date <- as.Date(paste0(coef_df$variables, ".01"),
    format = "treat:d.%Y.%m.%d")
 
event_df <- data.frame(date=seq.Date(as.Date("2000-01-01"),as.Date("2015-07-01"),by = "month"))
event_df <- left_join(event_df, coef_df[, c(1, 2, 6)])
## Joining with `by = join_by(date)`
event_df[is.na(event_df)] <- 0

colnames(event_df) <- c("time","coef","se")

## Makes Confident Interval
event_df$ci_upper <- event_df$coef + 1.96 * event_df$se
event_df$ci_lower <- event_df$coef - 1.96 * event_df$se
head(event_df,3)
##         time        coef          se     ci_upper    ci_lower
## 1 2000-01-01 -0.02664190 0.009551219 -0.007921511 -0.04536229
## 2 2000-02-01 -0.03073522 0.009090983 -0.012916892 -0.04855354
## 3 2000-03-01 -0.03000708 0.009260098 -0.011857287 -0.04815687
dates <- seq.Date(as.Date("2000-01-01"),as.Date("2015-07-01"),by='month')
# Define start and end dates for plot
start_date <- as.Date("2004-08-01")
end_date <- as.Date("2015-07-01")

# Create sequence of dates for x-axis
dates_seq <- seq.Date(from = start_date, to = end_date, by = "month")

# Subset event_df to only include dates after or equal to start_date
event_df_sub <- event_df[dates >= start_date, ]

pl1 <- ggplot(event_df, aes(x = dates, y = coef)) +
  geom_point() +
  geom_line()+
  #geom_errorbar(aes(ymin = ci_lower, ymax = ci_upper), width = 0.2) +
  geom_ribbon(aes(ymin = ci_lower, ymax = ci_upper), alpha = 0.2) +
  geom_hline(yintercept = 0, linetype = "dashed", color = "red") +
  geom_vline(xintercept = as.Date("2005-08-01"), linetype = "dashed", color = "blue") +
  scale_y_continuous(labels = function(x) paste0(x * 100, "%")) +
  scale_x_date(date_labels = "%Y-%m", limits = c(start_date, end_date), breaks = "1 year") +
  labs(title = "Panel B: Employed Person", y = "Percentage") +
  plot.theme
pl1

Unemployment Rate

df6 <- read.csv("Merge UnemRate ballance V2 FULL-Location.csv") %>%
    filter(COUNTY != "Jefferson Parish", COUNTY != "Orleans Parish",
        COUNTY != "Plaquemines Parish", COUNTY != "St. Bernard Parish",
        COUNTY != "St. Charles Parish", COUNTY != "St. Helena Parish",
        COUNTY != "St. James Parish", COUNTY != "Adams County",
        COUNTY != "Amite County", COUNTY != "Attala County",
        COUNTY != "Claiborne County", COUNTY != "Choctaw County",
        COUNTY != "Clarke County", COUNTY != "Copiah County",
        COUNTY != "Covington County", COUNTY != "Franklin County",
        COUNTY != "Forrest County", COUNTY != "George County",
        COUNTY != "Greene County", COUNTY != "Hancock County",
        COUNTY != "Harrison County", COUNTY != "Hinds County",
        COUNTY != "Holmes County", COUNTY != "Humphreys County",
        COUNTY != "Jackson County", COUNTY != "Jasper County",
        COUNTY != "Jefferson County", COUNTY != "Jefferson Davis County",
        COUNTY != "Jones County", COUNTY != "Kemper County",
        COUNTY != "Bay County", COUNTY != "Escambia County",
        COUNTY != "Franklin County", COUNTY != "Gulf County",
        COUNTY != "Okaloosa County", COUNTY != "Santa Rosa County",
        COUNTY != "Walton County", COUNTY != "Collier County",
        COUNTY != "Tuscaloosa County", COUNTY != "Pickens County",
        COUNTY != "Hale County", COUNTY != "Greene County",
        COUNTY != "Sumter County", COUNTY != "Choctaw County",
        COUNTY != "Clarke County", COUNTY != "Washington County",
        COUNTY != "Mobile County", COUNTY != "Baldwin County") %>%
    mutate(DATE = as.Date(DATE),
        treat = ifelse(STATE == "LA" & DATE >= as.Date("2005-08-01"), 1, 0),
        year = as.numeric(format(DATE, "%Y"))) %>%
    group_by(COUNTY, STATE) %>%
    filter(!any(is.na(Unemployee.Rate)))

Balancing Data and Calculating Unit Weights

dt <- seq.Date(from = as.Date("2000-01-01"),
    to = as.Date("2015-12-01"), by = "month")

df.fix <- data.frame(FIPS = rep(unique(df6$FIPS), length(dt))) %>%
    arrange(FIPS) %>%
    mutate(DATE = rep(dt, length(unique(df6$FIPS))))

bal_df <- left_join(df.fix, df6, by = c("FIPS", "DATE")) %>%
    select(COUNTY, FIPS, STATE, DATE, treat, Unemployee.Rate) %>%
    group_by(FIPS) %>%
    filter(!any(is.na(Unemployee.Rate))) %>%
    ungroup()

bal_df$FIPS <- factor(bal_df$FIPS)
bal_df <- as.data.frame(bal_df)
bal_df$lg <- log(bal_df$Unemployee.Rate)

setup <- panel.matrices(bal_df,
    unit = "FIPS", time = "DATE", outcome = "lg", treatment = "treat")

sdid.df <- synthdid_estimate(setup$Y, setup$N0, setup$T0)

unit.weights <- synthdid_controls(sdid.df, weight.type = 'omega', mass = 1)
unit.df <- data.frame(sdid = round(unit.weights[rev(1:nrow(unit.weights)), ], 3)) %>%
    rownames_to_column(var = "FIPS")

head(unit.df)
##    FIPS sdid
## 1 37175    0
## 2 30009    0
## 3 29159    0
## 4 17187    0
## 5 26041    0
## 6  6041    0

Subsetting data by Weight Counties (SDID > 0)

map_df <- unit.df %>%
    mutate(sdid_mp = ifelse(sdid > 0, 1, 0))

cnty_fips <- df6 %>%
    distinct(COUNTY, FIPS)

map_sdid <- map_df %>%
  filter(sdid_mp == 1) %>%
  merge(cnty_fips, by = "FIPS")

regdf <- df6 %>%
    filter(STATE == "LA" | FIPS %in% map_sdid$FIPS)

## SUbset Data, because we want focus on before Feb 2010
df7 <- regdf %>%
    filter(DATE < as.Date("2015-08-01")) %>%
    mutate(treat = as.numeric(STATE == "LA"))

Unemployment Rate Regression Model

## Makes Date Dummy
dloop <- data.frame(DATE = unique(df7$DATE))

dloop <- dloop %>%
  mutate(year = format(DATE, "%Y"),
         month=str_pad(string = format(DATE,"%m"),width = 2,side = "left",pad = 0))

## YEAR DUMMY
for (i in 1:nrow(dloop)) {
  df7[paste0("d.", dloop$year[i],".",dloop$month[i])] <- as.numeric(df7$DATE == unique(df7$DATE)[i])
}

## RUN MODEL
did.reg <- felm(log(Unemployee.Rate) ~
           treat:(d.2000.01+d.2000.02+d.2000.03+d.2000.04+d.2000.05+d.2000.06+d.2000.07+d.2000.08+d.2000.09+d.2000.10+d.2000.11+d.2000.12+
           d.2001.01+d.2001.02+d.2001.03+d.2001.04+d.2001.05+d.2001.06+d.2001.07+d.2001.08+d.2001.09+d.2001.10+d.2001.11+d.2001.12+
           d.2002.01+d.2002.02+d.2002.03+d.2002.04+d.2002.05+d.2002.06+d.2002.07+d.2002.08+d.2002.09+d.2002.10+d.2002.11+d.2002.12+
           d.2003.01+d.2003.02+d.2003.03+d.2003.04+d.2003.05+d.2003.06+d.2003.07+d.2003.08+d.2003.09+d.2003.10+d.2003.11+d.2003.12+
           d.2004.01+d.2004.02+d.2004.03+d.2004.04+d.2004.05+d.2004.06+d.2004.07+d.2004.08+d.2004.09+d.2004.10+d.2004.11+d.2004.12+
           d.2005.01+d.2005.02+d.2005.03+d.2005.04+d.2005.05+d.2005.06+d.2005.07+d.2005.09+d.2005.10+d.2005.11+d.2005.12+
           d.2006.01+d.2006.02+d.2006.03+d.2006.04+d.2006.05+d.2006.06+d.2006.07+d.2006.08+d.2006.09+d.2006.10+d.2006.11+d.2006.12+
           d.2007.01+d.2007.02+d.2007.03+d.2007.04+d.2007.05+d.2007.06+d.2007.07+d.2007.08+d.2007.09+d.2007.10+d.2007.11+d.2007.12+
           d.2008.01+d.2008.02+d.2008.03+d.2008.04+d.2008.05+d.2008.06+d.2008.07+d.2008.08+d.2008.09+d.2008.10+d.2008.11+d.2008.12+
           d.2009.01+d.2009.02+d.2009.03+d.2009.04+d.2009.05+d.2009.06+d.2009.07+d.2009.08+d.2009.09+d.2009.10+d.2009.11+d.2009.12+
           d.2010.01+d.2010.02+d.2010.03+d.2010.04+d.2010.05+d.2010.06+d.2010.07+d.2010.08+d.2010.09+d.2010.10+d.2010.11+d.2010.12+
           d.2011.01+d.2011.02+d.2011.03+d.2011.04+d.2011.05+d.2011.06+d.2011.07+d.2011.08+d.2011.09+d.2011.10+d.2011.11+d.2011.12+
           d.2012.01+d.2012.02+d.2012.03+d.2012.04+d.2012.05+d.2012.06+d.2012.07+d.2012.08+d.2012.09+d.2012.10+d.2012.11+d.2012.12+
           d.2013.01+d.2013.02+d.2013.03+d.2013.04+d.2013.05+d.2013.06+d.2013.07+d.2013.08+d.2013.09+d.2013.10+d.2013.11+d.2013.12+
           d.2014.01+d.2014.02+d.2014.03+d.2014.04+d.2014.05+d.2014.06+d.2014.07+d.2014.08+d.2014.09+d.2014.10+d.2014.11+d.2014.12+
           d.2015.01+d.2015.02+d.2015.03+d.2015.04+d.2015.05+d.2015.06+d.2015.07) |
           COUNTY + DATE | 0 | COUNTY,
              data = df7)

summary(did.reg)
## 
## Call:
##    felm(formula = log(Unemployee.Rate) ~ treat:(d.2000.01 + d.2000.02 +      d.2000.03 + d.2000.04 + d.2000.05 + d.2000.06 + d.2000.07 +      d.2000.08 + d.2000.09 + d.2000.10 + d.2000.11 + d.2000.12 +      d.2001.01 + d.2001.02 + d.2001.03 + d.2001.04 + d.2001.05 +      d.2001.06 + d.2001.07 + d.2001.08 + d.2001.09 + d.2001.10 +      d.2001.11 + d.2001.12 + d.2002.01 + d.2002.02 + d.2002.03 +      d.2002.04 + d.2002.05 + d.2002.06 + d.2002.07 + d.2002.08 +      d.2002.09 + d.2002.10 + d.2002.11 + d.2002.12 + d.2003.01 +      d.2003.02 + d.2003.03 + d.2003.04 + d.2003.05 + d.2003.06 +      d.2003.07 + d.2003.08 + d.2003.09 + d.2003.10 + d.2003.11 +      d.2003.12 + d.2004.01 + d.2004.02 + d.2004.03 + d.2004.04 +      d.2004.05 + d.2004.06 + d.2004.07 + d.2004.08 + d.2004.09 +      d.2004.10 + d.2004.11 + d.2004.12 + d.2005.01 + d.2005.02 +      d.2005.03 + d.2005.04 + d.2005.05 + d.2005.06 + d.2005.07 +      d.2005.09 + d.2005.10 + d.2005.11 + d.2005.12 + d.2006.01 +      d.2006.02 + d.2006.03 + d.2006.04 + d.2006.05 + d.2006.06 +      d.2006.07 + d.2006.08 + d.2006.09 + d.2006.10 + d.2006.11 +      d.2006.12 + d.2007.01 + d.2007.02 + d.2007.03 + d.2007.04 +      d.2007.05 + d.2007.06 + d.2007.07 + d.2007.08 + d.2007.09 +      d.2007.10 + d.2007.11 + d.2007.12 + d.2008.01 + d.2008.02 +      d.2008.03 + d.2008.04 + d.2008.05 + d.2008.06 + d.2008.07 +      d.2008.08 + d.2008.09 + d.2008.10 + d.2008.11 + d.2008.12 +      d.2009.01 + d.2009.02 + d.2009.03 + d.2009.04 + d.2009.05 +      d.2009.06 + d.2009.07 + d.2009.08 + d.2009.09 + d.2009.10 +      d.2009.11 + d.2009.12 + d.2010.01 + d.2010.02 + d.2010.03 +      d.2010.04 + d.2010.05 + d.2010.06 + d.2010.07 + d.2010.08 +      d.2010.09 + d.2010.10 + d.2010.11 + d.2010.12 + d.2011.01 +      d.2011.02 + d.2011.03 + d.2011.04 + d.2011.05 + d.2011.06 +      d.2011.07 + d.2011.08 + d.2011.09 + d.2011.10 + d.2011.11 +      d.2011.12 + d.2012.01 + d.2012.02 + d.2012.03 + d.2012.04 +      d.2012.05 + d.2012.06 + d.2012.07 + d.2012.08 + d.2012.09 +      d.2012.10 + d.2012.11 + d.2012.12 + d.2013.01 + d.2013.02 +      d.2013.03 + d.2013.04 + d.2013.05 + d.2013.06 + d.2013.07 +      d.2013.08 + d.2013.09 + d.2013.10 + d.2013.11 + d.2013.12 +      d.2014.01 + d.2014.02 + d.2014.03 + d.2014.04 + d.2014.05 +      d.2014.06 + d.2014.07 + d.2014.08 + d.2014.09 + d.2014.10 +      d.2014.11 + d.2014.12 + d.2015.01 + d.2015.02 + d.2015.03 +      d.2015.04 + d.2015.05 + d.2015.06 + d.2015.07) | COUNTY +      DATE | 0 | COUNTY, data = df7) 
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.41646 -0.12621  0.00519  0.13427  1.45439 
## 
## Coefficients:
##                  Estimate Cluster s.e. t value Pr(>|t|)    
## treat:d.2000.01 -0.026557     0.021086  -1.259 0.208293    
## treat:d.2000.02 -0.129896     0.022550  -5.760 1.27e-08 ***
## treat:d.2000.03 -0.052506     0.021719  -2.418 0.015890 *  
## treat:d.2000.04 -0.061183     0.020716  -2.953 0.003251 ** 
## treat:d.2000.05 -0.000920     0.019707  -0.047 0.962779    
## treat:d.2000.06  0.070384     0.019105   3.684 0.000248 ***
## treat:d.2000.07  0.002811     0.019690   0.143 0.886534    
## treat:d.2000.08  0.035000     0.018917   1.850 0.064713 .  
## treat:d.2000.09  0.063136     0.020866   3.026 0.002574 ** 
## treat:d.2000.10  0.050427     0.021084   2.392 0.017042 *  
## treat:d.2000.11  0.049376     0.018230   2.708 0.006930 ** 
## treat:d.2000.12  0.050405     0.020702   2.435 0.015157 *  
## treat:d.2001.01  0.085541     0.019622   4.359 1.51e-05 ***
## treat:d.2001.02 -0.043015     0.022104  -1.946 0.052068 .  
## treat:d.2001.03  0.015405     0.023320   0.661 0.509083    
## treat:d.2001.04  0.015746     0.018364   0.857 0.391517    
## treat:d.2001.05  0.018797     0.017188   1.094 0.274497    
## treat:d.2001.06  0.040877     0.016783   2.436 0.015128 *  
## treat:d.2001.07 -0.017785     0.017143  -1.037 0.299912    
## treat:d.2001.08 -0.018175     0.016517  -1.100 0.271557    
## treat:d.2001.09  0.047218     0.017066   2.767 0.005814 ** 
## treat:d.2001.10 -0.003601     0.019321  -0.186 0.852211    
## treat:d.2001.11 -0.029760     0.019786  -1.504 0.133032    
## treat:d.2001.12 -0.011792     0.018835  -0.626 0.531462    
## treat:d.2002.01  0.007433     0.020937   0.355 0.722671    
## treat:d.2002.02 -0.102974     0.021238  -4.849 1.54e-06 ***
## treat:d.2002.03 -0.072063     0.022140  -3.255 0.001191 ** 
## treat:d.2002.04 -0.032878     0.020471  -1.606 0.108731    
## treat:d.2002.05 -0.017170     0.018779  -0.914 0.360880    
## treat:d.2002.06  0.012065     0.017702   0.682 0.495760    
## treat:d.2002.07 -0.053430     0.018178  -2.939 0.003402 ** 
## treat:d.2002.08 -0.007674     0.017860  -0.430 0.667555    
## treat:d.2002.09  0.005469     0.018970   0.288 0.773188    
## treat:d.2002.10 -0.029811     0.020401  -1.461 0.144400    
## treat:d.2002.11 -0.049775     0.021038  -2.366 0.018265 *  
## treat:d.2002.12 -0.030367     0.019895  -1.526 0.127391    
## treat:d.2003.01 -0.001678     0.020518  -0.082 0.934856    
## treat:d.2003.02 -0.066153     0.022403  -2.953 0.003257 ** 
## treat:d.2003.03  0.018142     0.021855   0.830 0.406779    
## treat:d.2003.04  0.013347     0.021352   0.625 0.532113    
## treat:d.2003.05  0.018591     0.018439   1.008 0.313715    
## treat:d.2003.06  0.079935     0.016368   4.884 1.30e-06 ***
## treat:d.2003.07  0.043905     0.015808   2.777 0.005631 ** 
## treat:d.2003.08  0.041658     0.015566   2.676 0.007626 ** 
## treat:d.2003.09  0.005270     0.016399   0.321 0.748021    
## treat:d.2003.10 -0.050724     0.016373  -3.098 0.002029 ** 
## treat:d.2003.11 -0.088276     0.015632  -5.647 2.40e-08 ***
## treat:d.2003.12 -0.056976     0.014660  -3.887 0.000112 ***
## treat:d.2004.01  0.009757     0.014170   0.689 0.491346    
## treat:d.2004.02 -0.095302     0.015678  -6.079 2.02e-09 ***
## treat:d.2004.03 -0.047983     0.015099  -3.178 0.001551 ** 
## treat:d.2004.04 -0.001044     0.013613  -0.077 0.938899    
## treat:d.2004.05  0.002519     0.010929   0.230 0.817791    
## treat:d.2004.06  0.059959     0.010619   5.647 2.41e-08 ***
## treat:d.2004.07 -0.001102     0.010652  -0.103 0.917638    
## treat:d.2004.08 -0.052092     0.012375  -4.209 2.91e-05 ***
## treat:d.2004.09 -0.007238     0.013153  -0.550 0.582302    
## treat:d.2004.10 -0.046090     0.012587  -3.662 0.000270 ***
## treat:d.2004.11 -0.080891     0.010814  -7.480 2.31e-13 ***
## treat:d.2004.12 -0.079635     0.011765  -6.769 2.82e-11 ***
## treat:d.2005.01 -0.009702     0.012831  -0.756 0.449816    
## treat:d.2005.02 -0.111465     0.013000  -8.574  < 2e-16 ***
## treat:d.2005.03 -0.089424     0.012640  -7.075 3.74e-12 ***
## treat:d.2005.04 -0.072125     0.010403  -6.933 9.64e-12 ***
## treat:d.2005.05 -0.047511     0.008331  -5.703 1.76e-08 ***
## treat:d.2005.06  0.032018     0.007699   4.159 3.62e-05 ***
## treat:d.2005.07 -0.011470     0.007319  -1.567 0.117541    
## treat:d.2005.09  0.393302     0.038719  10.158  < 2e-16 ***
## treat:d.2005.10  0.440253     0.044634   9.864  < 2e-16 ***
## treat:d.2005.11  0.408723     0.042890   9.530  < 2e-16 ***
## treat:d.2005.12 -0.020722     0.022837  -0.907 0.364520    
## treat:d.2006.01 -0.191320     0.019048 -10.044  < 2e-16 ***
## treat:d.2006.02 -0.507559     0.018574 -27.326  < 2e-16 ***
## treat:d.2006.03 -0.454684     0.016563 -27.452  < 2e-16 ***
## treat:d.2006.04 -0.466717     0.015747 -29.639  < 2e-16 ***
## treat:d.2006.05 -0.353498     0.013818 -25.582  < 2e-16 ***
## treat:d.2006.06 -0.228694     0.011572 -19.762  < 2e-16 ***
## treat:d.2006.07 -0.370279     0.012331 -30.028  < 2e-16 ***
## treat:d.2006.08 -0.285150     0.011034 -25.843  < 2e-16 ***
## treat:d.2006.09 -0.257624     0.012944 -19.904  < 2e-16 ***
## treat:d.2006.10 -0.242737     0.014015 -17.319  < 2e-16 ***
## treat:d.2006.11 -0.257225     0.012859 -20.003  < 2e-16 ***
## treat:d.2006.12 -0.276350     0.016553 -16.694  < 2e-16 ***
## treat:d.2007.01 -0.195635     0.017425 -11.228  < 2e-16 ***
## treat:d.2007.02 -0.320867     0.019269 -16.652  < 2e-16 ***
## treat:d.2007.03 -0.249960     0.015739 -15.881  < 2e-16 ***
## treat:d.2007.04 -0.206126     0.017408 -11.841  < 2e-16 ***
## treat:d.2007.05 -0.143323     0.016510  -8.681  < 2e-16 ***
## treat:d.2007.06 -0.098433     0.015207  -6.473 1.85e-10 ***
## treat:d.2007.07 -0.176497     0.017070 -10.340  < 2e-16 ***
## treat:d.2007.08 -0.193620     0.017029 -11.370  < 2e-16 ***
## treat:d.2007.09 -0.214856     0.016700 -12.865  < 2e-16 ***
## treat:d.2007.10 -0.320830     0.016999 -18.874  < 2e-16 ***
## treat:d.2007.11 -0.324401     0.019668 -16.494  < 2e-16 ***
## treat:d.2007.12 -0.301421     0.021156 -14.248  < 2e-16 ***
## treat:d.2008.01 -0.246475     0.018703 -13.178  < 2e-16 ***
## treat:d.2008.02 -0.395518     0.022315 -17.725  < 2e-16 ***
## treat:d.2008.03 -0.315458     0.019380 -16.278  < 2e-16 ***
## treat:d.2008.04 -0.347855     0.020770 -16.748  < 2e-16 ***
## treat:d.2008.05 -0.356890     0.017826 -20.021  < 2e-16 ***
## treat:d.2008.06 -0.214085     0.016377 -13.072  < 2e-16 ***
## treat:d.2008.07 -0.273645     0.020690 -13.226  < 2e-16 ***
## treat:d.2008.08 -0.272162     0.016864 -16.139  < 2e-16 ***
## treat:d.2008.09 -0.247467     0.020863 -11.862  < 2e-16 ***
## treat:d.2008.10 -0.276245     0.017417 -15.861  < 2e-16 ***
## treat:d.2008.11 -0.349241     0.020099 -17.376  < 2e-16 ***
## treat:d.2008.12 -0.367202     0.021769 -16.868  < 2e-16 ***
## treat:d.2009.01 -0.331740     0.023448 -14.148  < 2e-16 ***
## treat:d.2009.02 -0.393066     0.024997 -15.725  < 2e-16 ***
## treat:d.2009.03 -0.350904     0.023480 -14.945  < 2e-16 ***
## treat:d.2009.04 -0.323731     0.022235 -14.560  < 2e-16 ***
## treat:d.2009.05 -0.338207     0.023205 -14.575  < 2e-16 ***
## treat:d.2009.06 -0.255767     0.021461 -11.918  < 2e-16 ***
## treat:d.2009.07 -0.285065     0.023786 -11.985  < 2e-16 ***
## treat:d.2009.08 -0.306347     0.021109 -14.513  < 2e-16 ***
## treat:d.2009.09 -0.344641     0.021015 -16.400  < 2e-16 ***
## treat:d.2009.10 -0.363551     0.020327 -17.885  < 2e-16 ***
## treat:d.2009.11 -0.408047     0.019936 -20.468  < 2e-16 ***
## treat:d.2009.12 -0.388125     0.019647 -19.754  < 2e-16 ***
## treat:d.2010.01 -0.367239     0.022668 -16.201  < 2e-16 ***
## treat:d.2010.02 -0.476997     0.023752 -20.083  < 2e-16 ***
## treat:d.2010.03 -0.440068     0.023036 -19.104  < 2e-16 ***
## treat:d.2010.04 -0.410999     0.021902 -18.765  < 2e-16 ***
## treat:d.2010.05 -0.337491     0.020738 -16.274  < 2e-16 ***
## treat:d.2010.06 -0.263236     0.020075 -13.112  < 2e-16 ***
## treat:d.2010.07 -0.292853     0.020153 -14.532  < 2e-16 ***
## treat:d.2010.08 -0.264190     0.020796 -12.704  < 2e-16 ***
## treat:d.2010.09 -0.265642     0.020780 -12.783  < 2e-16 ***
## treat:d.2010.10 -0.269991     0.021298 -12.677  < 2e-16 ***
## treat:d.2010.11 -0.301816     0.021677 -13.923  < 2e-16 ***
## treat:d.2010.12 -0.314210     0.023336 -13.465  < 2e-16 ***
## treat:d.2011.01 -0.246381     0.022525 -10.938  < 2e-16 ***
## treat:d.2011.02 -0.332446     0.023469 -14.165  < 2e-16 ***
## treat:d.2011.03 -0.309758     0.023125 -13.395  < 2e-16 ***
## treat:d.2011.04 -0.311288     0.022826 -13.637  < 2e-16 ***
## treat:d.2011.05 -0.295005     0.020575 -14.338  < 2e-16 ***
## treat:d.2011.06 -0.236483     0.020251 -11.677  < 2e-16 ***
## treat:d.2011.07 -0.273726     0.021334 -12.831  < 2e-16 ***
## treat:d.2011.08 -0.284355     0.020702 -13.736  < 2e-16 ***
## treat:d.2011.09 -0.278244     0.022219 -12.523  < 2e-16 ***
## treat:d.2011.10 -0.269239     0.021878 -12.307  < 2e-16 ***
## treat:d.2011.11 -0.291868     0.021078 -13.847  < 2e-16 ***
## treat:d.2011.12 -0.308267     0.022152 -13.916  < 2e-16 ***
## treat:d.2012.01 -0.225604     0.021804 -10.347  < 2e-16 ***
## treat:d.2012.02 -0.306553     0.021849 -14.031  < 2e-16 ***
## treat:d.2012.03 -0.277109     0.021935 -12.633  < 2e-16 ***
## treat:d.2012.04 -0.270671     0.022588 -11.983  < 2e-16 ***
## treat:d.2012.05 -0.249135     0.021456 -11.611  < 2e-16 ***
## treat:d.2012.06 -0.171805     0.020778  -8.269 7.18e-16 ***
## treat:d.2012.07 -0.232430     0.021313 -10.906  < 2e-16 ***
## treat:d.2012.08 -0.255548     0.022859 -11.180  < 2e-16 ***
## treat:d.2012.09 -0.266398     0.023442 -11.364  < 2e-16 ***
## treat:d.2012.10 -0.294798     0.022408 -13.156  < 2e-16 ***
## treat:d.2012.11 -0.365853     0.022316 -16.394  < 2e-16 ***
## treat:d.2012.12 -0.313826     0.022838 -13.742  < 2e-16 ***
## treat:d.2013.01 -0.220827     0.021316 -10.359  < 2e-16 ***
## treat:d.2013.02 -0.313782     0.022568 -13.904  < 2e-16 ***
## treat:d.2013.03 -0.271595     0.022966 -11.826  < 2e-16 ***
## treat:d.2013.04 -0.239547     0.023408 -10.234  < 2e-16 ***
## treat:d.2013.05 -0.229854     0.020269 -11.340  < 2e-16 ***
## treat:d.2013.06 -0.169118     0.020289  -8.335 4.31e-16 ***
## treat:d.2013.07 -0.222885     0.021399 -10.416  < 2e-16 ***
## treat:d.2013.08 -0.229967     0.021588 -10.652  < 2e-16 ***
## treat:d.2013.09 -0.234451     0.022822 -10.273  < 2e-16 ***
## treat:d.2013.10 -0.271832     0.022778 -11.934  < 2e-16 ***
## treat:d.2013.11 -0.315839     0.021600 -14.622  < 2e-16 ***
## treat:d.2013.12 -0.382542     0.023834 -16.050  < 2e-16 ***
## treat:d.2014.01 -0.322313     0.022143 -14.556  < 2e-16 ***
## treat:d.2014.02 -0.411189     0.023838 -17.250  < 2e-16 ***
## treat:d.2014.03 -0.319954     0.021911 -14.602  < 2e-16 ***
## treat:d.2014.04 -0.246022     0.022139 -11.113  < 2e-16 ***
## treat:d.2014.05 -0.162642     0.022020  -7.386 4.46e-13 ***
## treat:d.2014.06 -0.086680     0.021077  -4.112 4.40e-05 ***
## treat:d.2014.07 -0.069471     0.020757  -3.347 0.000862 ***
## treat:d.2014.08 -0.017656     0.020362  -0.867 0.386183    
## treat:d.2014.09  0.022889     0.021137   1.083 0.279242    
## treat:d.2014.10  0.037964     0.021754   1.745 0.081412 .  
## treat:d.2014.11  0.049165     0.021237   2.315 0.020907 *  
## treat:d.2014.12  0.019963     0.021901   0.911 0.362366    
## treat:d.2015.01  0.025533     0.021384   1.194 0.232882    
## treat:d.2015.02 -0.033037     0.022575  -1.463 0.143813    
## treat:d.2015.03  0.012984     0.023968   0.542 0.588197    
## treat:d.2015.04  0.046040     0.024800   1.856 0.063826 .  
## treat:d.2015.05  0.031229     0.024661   1.266 0.205825    
## treat:d.2015.06  0.050717     0.024106   2.104 0.035753 *  
## treat:d.2015.07 -0.002322     0.023880  -0.097 0.922564    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2266 on 154908 degrees of freedom
## Multiple R-squared(full model): 0.7291   Adjusted R-squared: 0.7273 
## Multiple R-squared(proj model): 0.03353   Adjusted R-squared: 0.02699 
## F-statistic(full model, *iid*):397.5 on 1049 and 154908 DF, p-value: < 2.2e-16 
## F-statistic(proj model): 553.2 on 186 and 677 DF, p-value: < 2.2e-16
summary_text <- capture.output(summary(did.reg))
coef_df <- coeftest(did.reg)
head(coef_df)
##                    Estimate Std. Error     t value     Pr(>|t|)
## treat:d.2000.01 -0.02655736 0.02108608 -1.25947345 2.082934e-01
## treat:d.2000.02 -0.12989576 0.02255002 -5.76033867 1.274286e-08
## treat:d.2000.03 -0.05250575 0.02171879 -2.41752646 1.588953e-02
## treat:d.2000.04 -0.06118301 0.02071583 -2.95344269 3.251437e-03
## treat:d.2000.05 -0.00091998 0.01970672 -0.04668357 9.627792e-01
## treat:d.2000.06  0.07038419 0.01910526  3.68402100 2.479152e-04
# Extract and display the "Multiple R-squared (full model)" and "Adjusted R-squared" portion
cat(grep("Multiple R-squared\\(full model\\): [0-9.]+", summary_text, value = TRUE), "\n")
## Multiple R-squared(full model): 0.7291   Adjusted R-squared: 0.7273
## Export Coeffiecent and test for Heteroscedasticity SE
coef_df <- coeftest(did.reg)

coef_df <- coef_df[,] %>%
    as_tibble() %>%
    mutate(variables = rownames(coef_df))

coef_df$date <- as.Date(paste0(coef_df$variables, ".01"),
    format = "treat:d.%Y.%m.%d")
 
event_df <- data.frame(date=seq.Date(as.Date("2000-01-01"),as.Date("2015-07-01"),by = "month"))
event_df <- left_join(event_df, coef_df[, c(1, 2, 6)])
## Joining with `by = join_by(date)`
event_df[is.na(event_df)] <- 0

colnames(event_df) <- c("time","coef","se")

## Makes Confident Interval
event_df$ci_upper <- event_df$coef + 1.96 * event_df$se
event_df$ci_lower <- event_df$coef - 1.96 * event_df$se
head(event_df,3)
##         time        coef         se     ci_upper    ci_lower
## 1 2000-01-01 -0.02655736 0.02108608  0.014771361 -0.06788608
## 2 2000-02-01 -0.12989576 0.02255002 -0.085697717 -0.17409380
## 3 2000-03-01 -0.05250575 0.02171879 -0.009936921 -0.09507457
dates <- seq.Date(as.Date("2000-01-01"),as.Date("2015-07-01"),by='month')
# Define start and end dates for plot
start_date <- as.Date("2004-08-01")
end_date <- as.Date("2015-07-01")

# Create sequence of dates for x-axis
dates_seq <- seq.Date(from = start_date, to = end_date, by = "month")

# Subset event_df to only include dates after or equal to start_date
event_df_sub <- event_df[dates >= start_date, ]

pl2 <- ggplot(event_df, aes(x = dates, y = coef)) +
  geom_point() +
  geom_line()+
  #geom_errorbar(aes(ymin = ci_lower, ymax = ci_upper), width = 0.2) +
  geom_ribbon(aes(ymin = ci_lower, ymax = ci_upper), alpha = 0.2) +
  geom_hline(yintercept = 0, linetype = "dashed", color = "red") +
  geom_vline(xintercept = as.Date("2005-08-01"), linetype = "dashed", color = "blue") +
  scale_x_date(date_labels = "%Y-%m", limits = c(start_date, end_date), breaks = "1 year") +
  labs(title = "Panel C: Unemployment Rate", y = "Percentage Point") +
  plot.theme
pl2

All plots

layout_matrix <- rbind(c(1, 1, 2, 2), c(4, 3, 3, 4))
grid.arrange(pl, pl1, pl2, layout_matrix = layout_matrix)