Import

library(readxl)
library(ggplot2)
library(readr)
library(dplyr)
library(stringr)
library(plm)
library(lmtest)
library(synthdid)

RENT.merge<-read_xlsx("MSA-RENT merge All.xlsx")
RENT.merge$treat<-ifelse(RENT.merge$state=="LA",1,0)
colnames(RENT.merge)
##  [1] "FirstNAME"           "AREANAME"            "RENT_0"             
##  [4] "RENT_1"              "RENT_2"              "RENT_3"             
##  [7] "RENT_4"              "YEAR"                "NAME.x"             
## [10] "state"               "Unemployee.Rate"     "Personal.Income"    
## [13] "Resident.Population" "nyear"               "MSA"                
## [16] "MSA.Code"            "Price"               "Change"             
## [19] "NAME.y"              "treat"
# Remove NA
RENT.merge<-RENT.merge%>%
  group_by(MSA)%>%
  filter(!any(is.na(Unemployee.Rate)))

dloop<-data.frame(YEAR=unique(RENT.merge$YEAR))

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

#KEEP NEW ORLEAN


RENT.merge1<-RENT.merge
RENT.merge1$NS<-paste0(RENT.merge1$FirstNAME,RENT.merge1$state)
RENT.NEWLA<-RENT.merge1%>%
  filter(NS=="newLA")

RENTUS<-RENT.merge1%>%
  filter(state!="LA")
RENT.merge1<-RENT.merge1%>%
  filter(NS!="newLA")

## WITH NEW ORLEAN ONLY
RENT.merge2<-rbind(RENT.NEWLA,RENTUS)
RENT.merge2$YEAR<-as.numeric(RENT.merge2$YEAR)

RENT 0

RENT.merge2$s.treat<-ifelse(RENT.merge2$state=="LA" &
                            RENT.merge2$YEAR>2005,1,0)

##BALLANCE BY NS
unq<-data.frame(NS=rep(unique(RENT.merge2$NS),15))
unq<-arrange(unq,NS)

unq$YEAR<-rep(2001:2015,length(unique(RENT.merge2$NS)))

Ballance.RENT<-left_join(unq,RENT.merge2,by=c("YEAR","NS"))


Ballance.RENT<-Ballance.RENT%>%
  group_by(NS)%>%
  filter(!any(is.na(RENT_0)))

Ballance.RENT$lg<-log(Ballance.RENT$RENT_0)

Ballance.RENT$NS<-factor(Ballance.RENT$NS)
Ballance.RENT<-data.frame(Ballance.RENT)

panelp<-panel.matrices(Ballance.RENT,unit = "NS",time = "YEAR",outcome = "lg",treatment = "s.treat")

## SDID Estimate
r0<-synthdid_estimate(Y=panelp$Y,N0 = panelp$N0,T0 = panelp$T0)

plot(r0,overlay=1)+theme(legend.position = "bottom",
                            legend.direction = "horizontal",
                            legend.box.background = element_blank())+
  ylab("RENT 0")+xlab("Year")

## Sc estimate
sc0<-sc_estimate(Y=panelp$Y,N0 = panelp$N0,T0 = panelp$T0)

plot(sc0)+theme(legend.position = "bottom",
                            legend.direction = "horizontal",
                            legend.box.background = element_blank())+
  ylab("RENT 0")+xlab("Year")

RENT 1

RENT.merge2$s.treat<-ifelse(RENT.merge2$state=="LA" &
                            RENT.merge2$YEAR>2005,1,0)

##BALLANCE BY NS
unq<-data.frame(NS=rep(unique(RENT.merge2$NS),15))
unq<-arrange(unq,NS)

unq$YEAR<-rep(2001:2015,length(unique(RENT.merge2$NS)))

Ballance.RENT<-left_join(unq,RENT.merge2,by=c("YEAR","NS"))


Ballance.RENT<-Ballance.RENT%>%
  group_by(NS)%>%
  filter(!any(is.na(RENT_1)))

Ballance.RENT$lg<-log(Ballance.RENT$RENT_1)

Ballance.RENT$NS<-factor(Ballance.RENT$NS)
Ballance.RENT<-data.frame(Ballance.RENT)

panelp<-panel.matrices(Ballance.RENT,unit = "NS",time = "YEAR",outcome = "lg",treatment = "s.treat")

## SDID Estimate
r1<-synthdid_estimate(Y=panelp$Y,N0 = panelp$N0,T0 = panelp$T0)

plot(r1,overlay=1)+theme(legend.position = "bottom",
                            legend.direction = "horizontal",
                            legend.box.background = element_blank())+
  ylab("RENT 1")+xlab("Year")

## Sc estimate
sc1<-sc_estimate(Y=panelp$Y,N0 = panelp$N0,T0 = panelp$T0)

plot(sc1)+theme(legend.position = "bottom",
                            legend.direction = "horizontal",
                            legend.box.background = element_blank())+
  ylab("RENT 1")+xlab("Year")

RENT 2

RENT.merge2$s.treat<-ifelse(RENT.merge2$state=="LA" &
                            RENT.merge2$YEAR>2005,1,0)

##BALLANCE BY NS
unq<-data.frame(NS=rep(unique(RENT.merge2$NS),15))
unq<-arrange(unq,NS)

unq$YEAR<-rep(2001:2015,length(unique(RENT.merge2$NS)))

Ballance.RENT<-left_join(unq,RENT.merge2,by=c("YEAR","NS"))


Ballance.RENT<-Ballance.RENT%>%
  group_by(NS)%>%
  filter(!any(is.na(RENT_2)))
Ballance.RENT$lg<-log(Ballance.RENT$RENT_2)
Ballance.RENT$NS<-factor(Ballance.RENT$NS)
Ballance.RENT<-data.frame(Ballance.RENT)

panelp<-panel.matrices(Ballance.RENT,unit = "NS",time = "YEAR",outcome = "lg",treatment = "s.treat")

## SDID Estimate
r2<-synthdid_estimate(Y=panelp$Y,N0 = panelp$N0,T0 = panelp$T0)

plot(r2,overlay=1)+theme(legend.position = "bottom",
                            legend.direction = "horizontal",
                            legend.box.background = element_blank())+
  ylab("RENT 2")+xlab("Year")

## Sc estimate
sc2<-sc_estimate(Y=panelp$Y,N0 = panelp$N0,T0 = panelp$T0)

plot(sc2)+theme(legend.position = "bottom",
                            legend.direction = "horizontal",
                            legend.box.background = element_blank())+
  ylab("RENT 2")+xlab("Year")

RENT 3

RENT.merge2$s.treat<-ifelse(RENT.merge2$state=="LA" &
                            RENT.merge2$YEAR>2005,1,0)

##BALLANCE BY NS
unq<-data.frame(NS=rep(unique(RENT.merge2$NS),15))
unq<-arrange(unq,NS)

unq$YEAR<-rep(2001:2015,length(unique(RENT.merge2$NS)))

Ballance.RENT<-left_join(unq,RENT.merge2,by=c("YEAR","NS"))


Ballance.RENT<-Ballance.RENT%>%
  group_by(NS)%>%
  filter(!any(is.na(RENT_3)))

Ballance.RENT$lg<-log(Ballance.RENT$RENT_3)

Ballance.RENT$NS<-factor(Ballance.RENT$NS)
Ballance.RENT<-data.frame(Ballance.RENT)

panelp<-panel.matrices(Ballance.RENT,unit = "NS",time = "YEAR",outcome = "lg",treatment = "s.treat")

## SDID Estimate
r3<-synthdid_estimate(Y=panelp$Y,N0 = panelp$N0,T0 = panelp$T0)

plot(r3,overlay=1)+theme(legend.position = "bottom",
                            legend.direction = "horizontal",
                            legend.box.background = element_blank())+
  ylab("RENT 3")+xlab("Year")

## Sc estimate
sc3<-sc_estimate(Y=panelp$Y,N0 = panelp$N0,T0 = panelp$T0)

plot(sc3)+theme(legend.position = "bottom",
                            legend.direction = "horizontal",
                            legend.box.background = element_blank())+
  ylab("RENT 3")+xlab("Year")

RENT 4

RENT.merge2$s.treat<-ifelse(RENT.merge2$state=="LA" &
                            RENT.merge2$YEAR>2005,1,0)

##BALLANCE BY NS
unq<-data.frame(NS=rep(unique(RENT.merge2$NS),15))
unq<-arrange(unq,NS)

unq$YEAR<-rep(2001:2015,length(unique(RENT.merge2$NS)))

Ballance.RENT<-left_join(unq,RENT.merge2,by=c("YEAR","NS"))


Ballance.RENT<-Ballance.RENT%>%
  group_by(NS)%>%
  filter(!any(is.na(RENT_4)))

Ballance.RENT$lg<-log(Ballance.RENT$RENT_4)

Ballance.RENT$NS<-factor(Ballance.RENT$NS)
Ballance.RENT<-data.frame(Ballance.RENT)

panelp<-panel.matrices(Ballance.RENT,unit = "NS",time = "YEAR",outcome = "lg",treatment = "s.treat")

## SDID Estimate
r4<-synthdid_estimate(Y=panelp$Y,N0 = panelp$N0,T0 = panelp$T0)

plot(r4,overlay=1)+theme(legend.position = "bottom",
                            legend.direction = "horizontal",
                            legend.box.background = element_blank())+
  ylab("RENT 4")+xlab("Year")

## Sc estimate
sc4<-sc_estimate(Y=panelp$Y,N0 = panelp$N0,T0 = panelp$T0)

plot(sc4)+theme(legend.position = "bottom",
                            legend.direction = "horizontal",
                            legend.box.background = element_blank())+
  ylab("RENT 4")+xlab("Year")