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
