Dataset

library(readxl)
library(ggplot2)
library(readr)
library(spdep)
library(ncf)
library(gdistance)
library(conleyreg)
library(dplyr)
library(stringr)
library(plm)
library(lmtest)

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"
lat_long <- read_excel("rent data new .xls") %>%
  distinct(X, Y, AREANAME)

RENT.merge <- RENT.merge %>%
  merge(lat_long, by = "AREANAME")

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")

## Lopping

distC<-c(75,150,200,300,450,500,600)

for(i in 1:length(distC)){
cse <- conleyreg(log(RENT_0) ~ Price + Unemployee.Rate +
                   Personal.Income + Resident.Population +
                   treat:(d.2001 + d.2002 + d.2003 +
                            d.2005 + d.2006 + d.2007 + d.2008 +
                            d.2009 + d.2010 + d.2011 + d.2012 +
                            d.2013 + d.2014 + d.2015) | MSA + YEAR,
                 data = RENT.merge1,
                 dist_cutoff = distC[i],
                 st_distance = TRUE,
                 lat = "Y",
                 lon = "X",
)

print(paste0("Distance For",distC[i]))
colnames(cse)[2] <- "Conley SE"

print(summary(cse))

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

coef_df <- coef_df[5:18,]

event_df <- data.frame(time = 1:nrow(coef_df),
                       coef = coef_df$Estimate,
                       cse = coef_df$`Conley SE`)

event_df <- rbind(event_df, c("time" = 3.5, "coef" = 0, "cse" = 0))
event_df <- arrange(event_df, time)

# Calculate confidence intervals
event_df$ci_upper <- event_df$coef + 1.96 * event_df$cse
event_df$ci_lower <- event_df$coef - 1.96 * event_df$cse
print(event_df)

# Extract dates from row names of coef_df
##dates <- as.Date(paste0(row.names(coef_df),"0101"), format = "treat:YEAR%Y%m%d")
dates<-seq.Date(from = as.Date("2001-01-01"),as.Date("2015-01-01"),by="year")
# Define start and end dates for plot
start_date <- as.Date("2001-01-01")
end_date <- as.Date("2015-01-01")

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

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

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-01-01"), linetype = "dashed", color = "blue") +
  scale_x_date(date_labels = "%Y", limits = c(start_date, end_date), breaks = "1 year") +
  labs(x = "Year", y = "Coefficient")+ggtitle(label = paste0("RENT 0 For Distance: ",distC[i]) ) +
  theme(axis.text.x = element_text(angle = 45, hjust = 1))+theme_bw()

print(pl)
}
## [1] "Distance For75"
##     Estimate           Conley SE            t value          Pr(>|t|)        
##  Min.   :-0.008954   Min.   :1.510e-06   Min.   :-3.116   Min.   :0.0000000  
##  1st Qu.: 0.004661   1st Qu.:2.921e-03   1st Qu.: 2.723   1st Qu.:0.0000002  
##  Median : 0.139020   Median :2.589e-02   Median : 3.591   Median :0.0003529  
##  Mean   : 0.100705   Mean   :2.475e-02   Mean   : 3.543   Mean   :0.0525980  
##  3rd Qu.: 0.153325   3rd Qu.:4.242e-02   3rd Qu.: 5.292   3rd Qu.:0.0032602  
##  Max.   : 0.223425   Max.   :5.381e-02   Max.   : 8.721   Max.   :0.4764116  
##    time         coef         cse    ci_upper     ci_lower
## 1   1.0 -0.008954245 0.012573101 0.015689033 -0.033597524
## 2   2.0  0.012770899 0.003391533 0.019418304  0.006123493
## 3   3.0  0.001958256 0.002551286 0.006958777 -0.003042265
## 4   3.5  0.000000000 0.000000000 0.000000000  0.000000000
## 5   4.0  0.079857305 0.031092171 0.140797960  0.018916650
## 6   5.0  0.153266453 0.052805858 0.256765935  0.049766972
## 7   6.0  0.143337643 0.053813385 0.248811876  0.037863409
## 8   7.0  0.148705349 0.046710324 0.240257584  0.057153114
## 9   8.0  0.194085900 0.045289273 0.282852874  0.105318926
## 10  9.0  0.215437907 0.040167981 0.294167150  0.136708665
## 11 10.0  0.223425406 0.037136938 0.296213805  0.150637008
## 12 11.0  0.151176548 0.043172620 0.235794883  0.066558213
## 13 12.0  0.192971150 0.022127397 0.236340849  0.149601452
## 14 13.0  0.153344473 0.025238751 0.202812425  0.103876521
## 15 14.0  0.134701930 0.026538029 0.186716466  0.082687394

## [1] "Distance For150"
##     Estimate           Conley SE            t value          Pr(>|t|)        
##  Min.   :-0.008954   Min.   :1.530e-06   Min.   :-3.071   Min.   :0.0000000  
##  1st Qu.: 0.004661   1st Qu.:3.112e-03   1st Qu.: 2.616   1st Qu.:0.0000003  
##  Median : 0.139020   Median :2.621e-02   Median : 3.424   Median :0.0006498  
##  Mean   : 0.100705   Mean   :2.581e-02   Mean   : 3.400   Mean   :0.0539793  
##  3rd Qu.: 0.153325   3rd Qu.:4.452e-02   3rd Qu.: 5.121   3rd Qu.:0.0045812  
##  Max.   : 0.223425   Max.   :5.603e-02   Max.   : 8.479   Max.   :0.4685672  
##    time         coef         cse    ci_upper     ci_lower
## 1   1.0 -0.008954245 0.012352320 0.015256301 -0.033164791
## 2   2.0  0.012770899 0.003647925 0.019920832  0.005620966
## 3   3.0  0.001958256 0.002680352 0.007211745 -0.003295234
## 4   3.5  0.000000000 0.000000000 0.000000000  0.000000000
## 5   4.0  0.079857305 0.032536741 0.143629317  0.016085292
## 6   5.0  0.153266453 0.054924618 0.260918705  0.045614202
## 7   6.0  0.143337643 0.056027213 0.253150981  0.033524304
## 8   7.0  0.148705349 0.049018915 0.244782423  0.052628274
## 9   8.0  0.194085900 0.047992093 0.288150402  0.100021398
## 10  9.0  0.215437907 0.042558641 0.298852844  0.132022971
## 11 10.0  0.223425406 0.039326303 0.300504960  0.146345853
## 12 11.0  0.151176548 0.045177605 0.239724653  0.062628443
## 13 12.0  0.192971150 0.022759209 0.237579199  0.148363101
## 14 13.0  0.153344473 0.026212518 0.204721009  0.101967938
## 15 14.0  0.134701930 0.026206281 0.186066242  0.083337619

## [1] "Distance For200"
##     Estimate           Conley SE            t value          Pr(>|t|)        
##  Min.   :-0.008954   Min.   :1.530e-06   Min.   :-3.048   Min.   :0.0000000  
##  1st Qu.: 0.004661   1st Qu.:3.256e-03   1st Qu.: 2.509   1st Qu.:0.0000006  
##  Median : 0.139020   Median :2.560e-02   Median : 3.226   Median :0.0013600  
##  Mean   : 0.100705   Mean   :2.687e-02   Mean   : 3.299   Mean   :0.0553634  
##  3rd Qu.: 0.153325   3rd Qu.:4.769e-02   3rd Qu.: 5.162   3rd Qu.:0.0065971  
##  Max.   : 0.223425   Max.   :5.840e-02   Max.   : 8.500   Max.   :0.4916423  
##    time         coef         cse    ci_upper     ci_lower
## 1   1.0 -0.008954245 0.011913476 0.014396168 -0.032304659
## 2   2.0  0.012770899 0.003826706 0.020271243  0.005270554
## 3   3.0  0.001958256 0.002847200 0.007538768 -0.003622256
## 4   3.5  0.000000000 0.000000000 0.000000000  0.000000000
## 5   4.0  0.079857305 0.034216267 0.146921187  0.012793422
## 6   5.0  0.153266453 0.057294794 0.265564249  0.040968658
## 7   6.0  0.143337643 0.058404595 0.257810649  0.028864636
## 8   7.0  0.148705349 0.051414647 0.249478057  0.047932641
## 9   8.0  0.194085900 0.050919863 0.293888831  0.094282969
## 10  9.0  0.215437907 0.045131911 0.303896453  0.126979362
## 11 10.0  0.223425406 0.041910665 0.305570310  0.141280503
## 12 11.0  0.151176548 0.048549318 0.246333211  0.056019885
## 13 12.0  0.192971150 0.022702649 0.237468341  0.148473959
## 14 13.0  0.153344473 0.026316815 0.204925430  0.101763517
## 15 14.0  0.134701930 0.024884390 0.183475334  0.085928527

## [1] "Distance For300"
##     Estimate           Conley SE            t value          Pr(>|t|)        
##  Min.   :-0.008954   Min.   :1.540e-06   Min.   :-2.962   Min.   :0.0000000  
##  1st Qu.: 0.004661   1st Qu.:3.542e-03   1st Qu.: 2.654   1st Qu.:0.0000012  
##  Median : 0.139020   Median :2.375e-02   Median : 3.088   Median :0.0020354  
##  Mean   : 0.100705   Mean   :2.602e-02   Mean   : 3.355   Mean   :0.0546839  
##  3rd Qu.: 0.153325   3rd Qu.:4.799e-02   3rd Qu.: 4.869   3rd Qu.:0.0043354  
##  Max.   : 0.223425   Max.   :5.519e-02   Max.   : 8.706   Max.   :0.5022836  
##    time         coef         cse    ci_upper     ci_lower
## 1   1.0 -0.008954245 0.011600421 0.013782580 -0.031691070
## 2   2.0  0.012770899 0.004174999 0.020953896  0.004587901
## 3   3.0  0.001958256 0.002918494 0.007678504 -0.003761993
## 4   3.5  0.000000000 0.000000000 0.000000000  0.000000000
## 5   4.0  0.079857305 0.032791384 0.144128418  0.015586192
## 6   5.0  0.153266453 0.054246396 0.259589390  0.046943517
## 7   6.0  0.143337643 0.055186179 0.251502553  0.035172732
## 8   7.0  0.148705349 0.049452913 0.245633057  0.051777640
## 9   8.0  0.194085900 0.049758578 0.291612714  0.096559086
## 10  9.0  0.215437907 0.044262847 0.302193088  0.128682727
## 11 10.0  0.223425406 0.041600213 0.304961824  0.141888988
## 12 11.0  0.151176548 0.049236780 0.247680636  0.054672460
## 13 12.0  0.192971150 0.022166209 0.236416919  0.149525381
## 14 13.0  0.153344473 0.025339428 0.203009752  0.103679195
## 15 14.0  0.134701930 0.022059440 0.177938433  0.091465428

## [1] "Distance For450"
##     Estimate           Conley SE            t value          Pr(>|t|)        
##  Min.   :-0.008954   Min.   :0.0000016   Min.   :-2.965   Min.   :0.0000000  
##  1st Qu.: 0.004661   1st Qu.:0.0037817   1st Qu.: 2.785   1st Qu.:0.0000009  
##  Median : 0.139020   Median :0.0224084   Median : 3.332   Median :0.0008913  
##  Mean   : 0.100705   Mean   :0.0235546   Mean   : 3.563   Mean   :0.0491501  
##  3rd Qu.: 0.153325   3rd Qu.:0.0429161   3rd Qu.: 5.189   3rd Qu.:0.0030085  
##  Max.   : 0.223425   Max.   :0.0475956   Max.   : 9.144   Max.   :0.4697933  
##    time         coef         cse   ci_upper     ci_lower
## 1   1.0 -0.008954245 0.010389298 0.01140878 -0.029317270
## 2   2.0  0.012770899 0.004696807 0.02197664  0.003565156
## 3   3.0  0.001958256 0.002708864 0.00726763 -0.003351118
## 4   3.5  0.000000000 0.000000000 0.00000000  0.000000000
## 5   4.0  0.079857305 0.029819475 0.13830348  0.021411134
## 6   5.0  0.153266453 0.046846474 0.24508554  0.061447365
## 7   6.0  0.143337643 0.047595608 0.23662503  0.050050251
## 8   7.0  0.148705349 0.043832796 0.23461763  0.062793068
## 9   8.0  0.194085900 0.045023720 0.28233239  0.105839408
## 10  9.0  0.215437907 0.040165928 0.29416313  0.136712688
## 11 10.0  0.223425406 0.037891850 0.29769343  0.149157380
## 12 11.0  0.151176548 0.046248980 0.24182455  0.060528548
## 13 12.0  0.192971150 0.021102518 0.23433208  0.151610216
## 14 13.0  0.153344473 0.023714390 0.19982468  0.106864270
## 15 14.0  0.134701930 0.020289490 0.17446933  0.094934531

## [1] "Distance For500"
##     Estimate           Conley SE            t value          Pr(>|t|)        
##  Min.   :-0.008954   Min.   :1.610e-06   Min.   :-2.964   Min.   :0.0000000  
##  1st Qu.: 0.004661   1st Qu.:3.842e-03   1st Qu.: 2.842   1st Qu.:0.0000010  
##  Median : 0.139020   Median :2.204e-02   Median : 3.417   Median :0.0006412  
##  Mean   : 0.100705   Mean   :2.277e-02   Mean   : 3.638   Mean   :0.0473522  
##  3rd Qu.: 0.153325   3rd Qu.:4.130e-02   3rd Qu.: 5.316   3rd Qu.:0.0030597  
##  Max.   : 0.223425   Max.   :4.548e-02   Max.   : 9.219   Max.   :0.4563869  
##    time         coef         cse    ci_upper     ci_lower
## 1   1.0 -0.008954245 0.010032330 0.010709122 -0.028617612
## 2   2.0  0.012770899 0.004845855 0.022268774  0.003273024
## 3   3.0  0.001958256 0.002628865 0.007110831 -0.003194320
## 4   3.5  0.000000000 0.000000000 0.000000000  0.000000000
## 5   4.0  0.079857305 0.028516136 0.135748931  0.023965679
## 6   5.0  0.153266453 0.044768795 0.241013292  0.065519615
## 7   6.0  0.143337643 0.045482523 0.232483388  0.054191897
## 8   7.0  0.148705349 0.042119613 0.231259791  0.066150906
## 9   8.0  0.194085900 0.043562717 0.279468825  0.108702975
## 10  9.0  0.215437907 0.038840570 0.291565424  0.139310390
## 11 10.0  0.223425406 0.036587150 0.295136221  0.151714592
## 12 11.0  0.151176548 0.044713051 0.238814128  0.063538968
## 13 12.0  0.192971150 0.020932937 0.233999707  0.151942594
## 14 13.0  0.153344473 0.023140664 0.198700176  0.107988771
## 15 14.0  0.134701930 0.020040683 0.173981669  0.095422191

## [1] "Distance For600"
##     Estimate           Conley SE            t value          Pr(>|t|)        
##  Min.   :-0.008954   Min.   :1.590e-06   Min.   :-2.944   Min.   :0.0000000  
##  1st Qu.: 0.004661   1st Qu.:3.926e-03   1st Qu.: 3.006   1st Qu.:0.0000008  
##  Median : 0.139020   Median :2.169e-02   Median : 3.617   Median :0.0003083  
##  Mean   : 0.100705   Mean   :2.166e-02   Mean   : 3.751   Mean   :0.0448676  
##  3rd Qu.: 0.153325   3rd Qu.:3.893e-02   3rd Qu.: 5.534   3rd Qu.:0.0026713  
##  Max.   : 0.223425   Max.   :4.240e-02   Max.   : 9.217   Max.   :0.4363702  
##    time         coef         cse    ci_upper     ci_lower
## 1   1.0 -0.008954245 0.009540376 0.009744891 -0.027653381
## 2   2.0  0.012770899 0.005105156 0.022777005  0.002764792
## 3   3.0  0.001958256 0.002515613 0.006888857 -0.002972345
## 4   3.5  0.000000000 0.000000000 0.000000000  0.000000000
## 5   4.0  0.079857305 0.026459010 0.131716965  0.027997644
## 6   5.0  0.153266453 0.041768243 0.235132211  0.071400696
## 7   6.0  0.143337643 0.042335797 0.226315806  0.060359479
## 8   7.0  0.148705349 0.039573753 0.226269904  0.071140793
## 9   8.0  0.194085900 0.041625428 0.275671739  0.112500061
## 10  9.0  0.215437907 0.036988130 0.287934643  0.142941172
## 11 10.0  0.223425406 0.034680935 0.291400040  0.155450773
## 12 11.0  0.151176548 0.042403741 0.234287880  0.068065216
## 13 12.0  0.192971150 0.020937521 0.234008691  0.151933609
## 14 13.0  0.153344473 0.022447044 0.197340680  0.109348267
## 15 14.0  0.134701930 0.019870702 0.173648506  0.095755355