vpi = pi
if (is.null(x_d)){
mu = beta0 + 2*atan( x_c %*% beta_c )
} else{
mu = beta0 +x_d %*% beta_d + 2*atan( x_c %*% beta_c )
}
return(mu)
}
tmp = mu_pred_fun(beta0 = 0, beta_c = t(model_month_net$all_chains[,4]),x_c = matrix(seq(48,0)),
beta_d = t(model_month_net$all_chains[,5]), x_d = matrix(rep(1,49)))
tmp_mean = apply(tmp,1,mean)
tmp_q95 = apply(tmp,1,quantile, probs = c(0.025,0.975))
tmp_sim = cbind(tmp_mean,t(tmp_q95))
months_sim9 = as.data.frame(tmp_sim/2/pi*48)
names(months_sim9) = c("mean","ql","qu")
months_sim9$months = seq(48,0)
months_sim9$country = "Netherlands"
tmp = mu_pred_fun(beta0 = 0, beta_c = t(model_month_net$all_chains[,4]),x_c = matrix(seq(48,0)),
beta_d = t(model_month_net$all_chains[,5]), x_d = matrix(rep(1,49)))
tmp_mean = apply(tmp,1,mean)
tmp_q95 = apply(tmp,1,quantile, probs = c(0.025,0.975))
tmp_sim = cbind(tmp_mean,t(tmp_q95))
tmp = mu_pred_fun(beta0 = 0, beta_c = t(model_month_net$all_chains[,4]),x_c = matrix(seq(48,0)),
beta_d = t(model_month_net$all_chains[,5]), x_d = matrix(rep(1,49)))
tmp_mean = apply(tmp,1,mean)
tmp_q95 = apply(tmp,1,quantile, probs = c(0.025,0.975))
tmp_sim = cbind(tmp_mean,t(tmp_q95))
months_sim9 = as.data.frame(tmp_sim/2/pi*48)
names(months_sim9) = c("mean","ql","qu")
months_sim9$months = seq(48,0)
months_sim9$country = "Netherlands"
ggplot(months_sim9,aes(x = months, y = mean))+
geom_ribbon(aes(ymin = ql, ymax = qu), fill = "grey70") +
geom_line()+
geom_abline(slope = 0, intercept = 0, linetype = "dashed")+
scale_x_reverse(breaks = c(0,12,24,36,48))+
xlab("Time Budget")+
ylab("Late Initiation in Month with High Experienced Scrutiny")+
theme_bw()+
facet_wrap(vars(country))
# GENERATE FIGURE D1
# Netherlands Case
set.seed(12345)
model_month_net <- circGLM(bill_location ~ high_experienced_scrutiny*month2ne,
data = subset(dat_raw,dat_raw$country == "Netherlands"), Q = 10000, burnin = 1000)
print(model_month_net)
mu_pred_fun = function(beta0,beta_d,x_d = NULL,beta_c,x_c){
vpi = pi
if (is.null(x_d)){
mu = beta0 + 2*atan( x_c %*% beta_c )
} else{
mu = beta0 +x_d %*% beta_d + 2*atan( x_c %*% beta_c )
}
return(mu)
}
tmp = mu_pred_fun(beta0 = 0, beta_c = t(model_month_net$all_chains[,4]),x_c = matrix(seq(48,0)),
beta_d = t(model_month_net$all_chains[,5]), x_d = matrix(rep(1,49)))
tmp_mean = apply(tmp,1,mean)
tmp_q95 = apply(tmp,1,quantile, probs = c(0.025,0.975))
tmp_sim = cbind(tmp_mean,t(tmp_q95))
months_sim9 = as.data.frame(tmp_sim/2/pi*48)
names(months_sim9) = c("mean","ql","qu")
months_sim9$months = seq(48,0)
months_sim9$country = "Netherlands"
ggplot(months_sim9,aes(x = months, y = mean))+
geom_ribbon(aes(ymin = ql, ymax = qu), fill = "grey70") +
geom_line()+
geom_abline(slope = 0, intercept = 0, linetype = "dashed")+
scale_x_reverse(breaks = c(0,12,24,36,48))+
xlab("Time Budget")+
ylab("Late Initiation in Month with High Experienced Scrutiny")+
theme_bw()+
facet_wrap(vars(country))
#######################################################
# TABLE D2
# Interaction between scrutiny and coalition conflict
set.seed(12345)
model_int_scrutiny_conflict1 <- circGLM(bill_location ~ high_experienced_scrutiny * month2ne * high_coalition_conflict +
+ high_saliency +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000, thin = 1)
print(model_int_scrutiny_conflict1)
#####################################################
# Sensitivity analysis
# number of bills before
sqrt(var(dat1$duration_passed_bill_gov_area))
dat1$sim_sd1 = 1/dat1$num_passed_bill_gov_area
dat1$sim_sd2 = 10/dat1$num_passed_bill_gov_area
dat1$sim_sd3 = 20/dat1$num_passed_bill_gov_area
dat1$sim_sd4 = 30/dat1$num_passed_bill_gov_area
dat1$sim_sd5 = 40/dat1$num_passed_bill_gov_area
dat1$sim_sd6 = 50/dat1$num_passed_bill_gov_area
dat1$sim_sd7 = 60/dat1$num_passed_bill_gov_area
dat1$sim_sd8 = 70/dat1$num_passed_bill_gov_area
dat1$sim_sd9 = 80/dat1$num_passed_bill_gov_area
dat1$sim_sd10 = 90/dat1$num_passed_bill_gov_area
dat1$sim_sd11 = 100/dat1$num_passed_bill_gov_area
dat1$sim_sd12 = 500/dat1$num_passed_bill_gov_area
dat1$sim_sd13 = 1000/dat1$num_passed_bill_gov_area
dat1$sim_sd14 = 6000/dat1$num_passed_bill_gov_area
dat1$scrutiny_sim1 = NA
dat1$scrutiny_sim2 = NA
dat1$scrutiny_sim3 = NA
dat1$scrutiny_sim4 = NA
dat1$scrutiny_sim5 = NA
dat1$scrutiny_sim6 = NA
dat1$scrutiny_sim7 = NA
dat1$scrutiny_sim8 = NA
dat1$scrutiny_sim9 = NA
dat1$scrutiny_sim10 = NA
dat1$scrutiny_sim11 = NA
dat1$scrutiny_sim12 = NA
dat1$scrutiny_sim13 = NA
dat1$scrutiny_sim14 = NA
set.seed(12345)
for (i in 1:dim(dat1)[1]){
dat1$scrutiny_sim1[i] = rnorm(1,mean = dat1$duration_passed_bill_gov_area[i],sd = dat1$sim_sd1[i])
dat1$scrutiny_sim2[i] = rnorm(1,mean = dat1$duration_passed_bill_gov_area[i],sd = dat1$sim_sd2[i])
dat1$scrutiny_sim3[i] = rnorm(1,mean = dat1$duration_passed_bill_gov_area[i],sd = dat1$sim_sd3[i])
dat1$scrutiny_sim4[i] = rnorm(1,mean = dat1$duration_passed_bill_gov_area[i],sd = dat1$sim_sd4[i])
dat1$scrutiny_sim5[i] = rnorm(1,mean = dat1$duration_passed_bill_gov_area[i],sd = dat1$sim_sd5[i])
dat1$scrutiny_sim6[i] = rnorm(1,mean = dat1$duration_passed_bill_gov_area[i],sd = dat1$sim_sd6[i])
dat1$scrutiny_sim7[i] = rnorm(1,mean = dat1$duration_passed_bill_gov_area[i],sd = dat1$sim_sd7[i])
dat1$scrutiny_sim8[i] = rnorm(1,mean = dat1$duration_passed_bill_gov_area[i],sd = dat1$sim_sd8[i])
dat1$scrutiny_sim9[i] = rnorm(1,mean = dat1$duration_passed_bill_gov_area[i],sd = dat1$sim_sd9[i])
dat1$scrutiny_sim10[i] = rnorm(1,mean = dat1$duration_passed_bill_gov_area[i],sd = dat1$sim_sd10[i])
dat1$scrutiny_sim11[i] = rnorm(1,mean = dat1$duration_passed_bill_gov_area[i],sd = dat1$sim_sd11[i])
}
set.seed(12345)
for (i in 1:dim(dat1)[1]){
dat1$scrutiny_sim12[i] = rnorm(1,mean = dat1$duration_passed_bill_gov_area[i],sd = dat1$sim_sd12[i])
dat1$scrutiny_sim13[i] = rnorm(1,mean = dat1$duration_passed_bill_gov_area[i],sd = dat1$sim_sd13[i])
}
set.seed(12345)
for (i in 1:dim(dat1)[1]){
dat1$scrutiny_sim14[i] = rnorm(1,mean = dat1$duration_passed_bill_gov_area[i],sd = dat1$sim_sd14[i])
}
dat1$scrutiny_sim1 = ifelse(dat1$scrutiny_sim1<=0,0,dat1$scrutiny_sim1)
dat1$scrutiny_sim2 = ifelse(dat1$scrutiny_sim2<=0,0,dat1$scrutiny_sim2)
dat1$scrutiny_sim3 = ifelse(dat1$scrutiny_sim3<=0,0,dat1$scrutiny_sim3)
dat1$scrutiny_sim4 = ifelse(dat1$scrutiny_sim4<=0,0,dat1$scrutiny_sim4)
dat1$scrutiny_sim5 = ifelse(dat1$scrutiny_sim5<=0,0,dat1$scrutiny_sim5)
dat1$scrutiny_sim6 = ifelse(dat1$scrutiny_sim6<=0,0,dat1$scrutiny_sim6)
dat1$scrutiny_sim7 = ifelse(dat1$scrutiny_sim7<=0,0,dat1$scrutiny_sim7)
dat1$scrutiny_sim8 = ifelse(dat1$scrutiny_sim8<=0,0,dat1$scrutiny_sim8)
dat1$scrutiny_sim9 = ifelse(dat1$scrutiny_sim9<=0,0,dat1$scrutiny_sim9)
dat1$scrutiny_sim10 = ifelse(dat1$scrutiny_sim10<=0,0,dat1$scrutiny_sim10)
dat1$scrutiny_sim11 = ifelse(dat1$scrutiny_sim11<=0,0,dat1$scrutiny_sim11)
dat1$scrutiny_sim12 = ifelse(dat1$scrutiny_sim12<=0,0,dat1$scrutiny_sim12)
dat1$scrutiny_sim13 = ifelse(dat1$scrutiny_sim13<=0,0,dat1$scrutiny_sim13)
dat1$scrutiny_sim14 = ifelse(dat1$scrutiny_sim14<=0,0,dat1$scrutiny_sim14)
dat1 = dat1 %>%
group_by(country) %>%
mutate(experienced_scrutiny_country_median_sim1 = median(scrutiny_sim1)) %>%
mutate(experienced_scrutiny_country_median_sim2 = median(scrutiny_sim2)) %>%
mutate(experienced_scrutiny_country_median_sim3 = median(scrutiny_sim3)) %>%
mutate(experienced_scrutiny_country_median_sim4 = median(scrutiny_sim4)) %>%
mutate(experienced_scrutiny_country_median_sim5 = median(scrutiny_sim5)) %>%
mutate(experienced_scrutiny_country_median_sim6 = median(scrutiny_sim6)) %>%
mutate(experienced_scrutiny_country_median_sim7 = median(scrutiny_sim7)) %>%
mutate(experienced_scrutiny_country_median_sim8 = median(scrutiny_sim8)) %>%
mutate(experienced_scrutiny_country_median_sim9 = median(scrutiny_sim9)) %>%
mutate(experienced_scrutiny_country_median_sim10 = median(scrutiny_sim10)) %>%
mutate(experienced_scrutiny_country_median_sim11 = median(scrutiny_sim11)) %>%
as.data.frame()
dat1 = dat1 %>%
group_by(country) %>%
mutate(experienced_scrutiny_country_median_sim12 = median(scrutiny_sim12)) %>%
mutate(experienced_scrutiny_country_median_sim13 = median(scrutiny_sim13)) %>%
as.data.frame()
dat1 = dat1 %>%
group_by(country) %>%
mutate(experienced_scrutiny_country_median_sim14 = median(scrutiny_sim14)) %>%
as.data.frame()
dat1$high_experienced_scrutiny_sim1 = ifelse(dat1$scrutiny_sim1 > dat1$experienced_scrutiny_country_median_sim1,1,0)
dat1$high_experienced_scrutiny_sim2 = ifelse(dat1$scrutiny_sim2 > dat1$experienced_scrutiny_country_median_sim2,1,0)
dat1$high_experienced_scrutiny_sim3 = ifelse(dat1$scrutiny_sim3 > dat1$experienced_scrutiny_country_median_sim3,1,0)
dat1$high_experienced_scrutiny_sim4 = ifelse(dat1$scrutiny_sim4 > dat1$experienced_scrutiny_country_median_sim4,1,0)
dat1$high_experienced_scrutiny_sim5 = ifelse(dat1$scrutiny_sim5 > dat1$experienced_scrutiny_country_median_sim5,1,0)
dat1$high_experienced_scrutiny_sim6 = ifelse(dat1$scrutiny_sim6 > dat1$experienced_scrutiny_country_median_sim6,1,0)
dat1$high_experienced_scrutiny_sim7 = ifelse(dat1$scrutiny_sim7 > dat1$experienced_scrutiny_country_median_sim7,1,0)
dat1$high_experienced_scrutiny_sim8 = ifelse(dat1$scrutiny_sim8 > dat1$experienced_scrutiny_country_median_sim8,1,0)
dat1$high_experienced_scrutiny_sim9 = ifelse(dat1$scrutiny_sim9 > dat1$experienced_scrutiny_country_median_sim9,1,0)
dat1$high_experienced_scrutiny_sim10 = ifelse(dat1$scrutiny_sim10 > dat1$experienced_scrutiny_country_median_sim10,1,0)
dat1$high_experienced_scrutiny_sim11 = ifelse(dat1$scrutiny_sim11 > dat1$experienced_scrutiny_country_median_sim11,1,0)
dat1$high_experienced_scrutiny_sim12 = ifelse(dat1$scrutiny_sim12 > dat1$experienced_scrutiny_country_median_sim12,1,0)
dat1$high_experienced_scrutiny_sim13 = ifelse(dat1$scrutiny_sim13 > dat1$experienced_scrutiny_country_median_sim13,1,0)
dat1$high_experienced_scrutiny_sim14 = ifelse(dat1$scrutiny_sim14 > dat1$experienced_scrutiny_country_median_sim14,1,0)
set.seed(12345)
model_month_sim1 <- circGLM(bill_location ~ high_experienced_scrutiny_sim1 * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_month_sim1)
set.seed(12345)
model_month_sim2 <- circGLM(bill_location ~ high_experienced_scrutiny_sim2 * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_month_sim2)
set.seed(12345)
model_month_sim3 <- circGLM(bill_location ~ high_experienced_scrutiny_sim3 * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_month_sim3)
set.seed(12345)
model_month_sim4 <- circGLM(bill_location ~ high_experienced_scrutiny_sim4 * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_month_sim4)
set.seed(12345)
model_month_sim5 <- circGLM(bill_location ~ high_experienced_scrutiny_sim5 * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_month_sim5)
set.seed(12345)
model_month_sim6 <- circGLM(bill_location ~ high_experienced_scrutiny_sim6 * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_month_sim6)
set.seed(12345)
model_month_sim7 <- circGLM(bill_location ~ high_experienced_scrutiny_sim7 * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_month_sim7)
set.seed(12345)
model_month_sim8 <- circGLM(bill_location ~ high_experienced_scrutiny_sim8 * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_month_sim8)
set.seed(12345)
model_month_sim9 <- circGLM(bill_location ~ high_experienced_scrutiny_sim9 * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_month_sim9)
set.seed(12345)
model_month_sim10 <- circGLM(bill_location ~ high_experienced_scrutiny_sim10 * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_month_sim10)
set.seed(12345)
model_month_sim11 <- circGLM(bill_location ~ high_experienced_scrutiny_sim11 * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_month_sim11)
set.seed(12345)
model_month_sim12 <- circGLM(bill_location ~ high_experienced_scrutiny_sim12 * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_month_sim12)
set.seed(12345)
model_month_sim13 <- circGLM(bill_location ~ high_experienced_scrutiny_sim13 * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_month_sim13)
set.seed(12345)
model_month_sim14 <- circGLM(bill_location ~ high_experienced_scrutiny_sim14 * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_month_sim14)
# bt_chain5: time-budget * scrutiny; dt_chain.1: scrutiny
apply(model_month_sim14$bt_chain,2,mean)
apply(model_month_sim14$dt_chain,2,mean)
mean_est_scrutiny = c()
mean_est_interaction = c()
q1_est_scrutiny = c()
q2_est_scrutiny = c()
q1_est_interaction = c()
q2_est_interaction = c()
mean_est_scrutiny[1] = mean(model_month_sim1$dt_chain[,1])
mean_est_scrutiny[2] = mean(model_month_sim2$dt_chain[,1])
mean_est_scrutiny[3] = mean(model_month_sim3$dt_chain[,1])
mean_est_scrutiny[4] = mean(model_month_sim4$dt_chain[,1])
mean_est_scrutiny[5] = mean(model_month_sim5$dt_chain[,1])
mean_est_scrutiny[6] = mean(model_month_sim6$dt_chain[,1])
mean_est_scrutiny[7] = mean(model_month_sim7$dt_chain[,1])
mean_est_scrutiny[8] = mean(model_month_sim8$dt_chain[,1])
mean_est_scrutiny[9] = mean(model_month_sim9$dt_chain[,1])
mean_est_scrutiny[10] = mean(model_month_sim10$dt_chain[,1])
mean_est_scrutiny[11] = mean(model_month_sim11$dt_chain[,1])
mean_est_scrutiny[12] = mean(model_month_sim12$dt_chain[,1])
mean_est_scrutiny[13] = mean(model_month_sim13$dt_chain[,1])
mean_est_scrutiny[14] = mean(model_month_sim14$dt_chain[,1])
mean_est_interaction[1] = mean(model_month_sim1$bt_chain[,5])
mean_est_interaction[2] = mean(model_month_sim2$bt_chain[,5])
mean_est_interaction[3] = mean(model_month_sim3$bt_chain[,5])
mean_est_interaction[4] = mean(model_month_sim4$bt_chain[,5])
mean_est_interaction[5] = mean(model_month_sim5$bt_chain[,5])
mean_est_interaction[6] = mean(model_month_sim6$bt_chain[,5])
mean_est_interaction[7] = mean(model_month_sim7$bt_chain[,5])
mean_est_interaction[8] = mean(model_month_sim8$bt_chain[,5])
mean_est_interaction[9] = mean(model_month_sim9$bt_chain[,5])
mean_est_interaction[10] = mean(model_month_sim10$bt_chain[,5])
mean_est_interaction[11] = mean(model_month_sim11$bt_chain[,5])
mean_est_interaction[12] = mean(model_month_sim12$bt_chain[,5])
mean_est_interaction[13] = mean(model_month_sim13$bt_chain[,5])
mean_est_interaction[14] = mean(model_month_sim14$bt_chain[,5])
q1_est_scrutiny[1] = quantile(model_month_sim1$dt_chain[,1],probs = 0.025)
q1_est_scrutiny[2] = quantile(model_month_sim2$dt_chain[,1],probs = 0.025)
q1_est_scrutiny[3] = quantile(model_month_sim3$dt_chain[,1],probs = 0.025)
q1_est_scrutiny[4] = quantile(model_month_sim4$dt_chain[,1],probs = 0.025)
q1_est_scrutiny[5] = quantile(model_month_sim5$dt_chain[,1],probs = 0.025)
q1_est_scrutiny[6] = quantile(model_month_sim6$dt_chain[,1],probs = 0.025)
q1_est_scrutiny[7] = quantile(model_month_sim7$dt_chain[,1],probs = 0.025)
q1_est_scrutiny[8] = quantile(model_month_sim8$dt_chain[,1],probs = 0.025)
q1_est_scrutiny[9] = quantile(model_month_sim9$dt_chain[,1],probs = 0.025)
q1_est_scrutiny[10] = quantile(model_month_sim10$dt_chain[,1],probs = 0.025)
q1_est_scrutiny[11] = quantile(model_month_sim11$dt_chain[,1],probs = 0.025)
q1_est_scrutiny[12] = quantile(model_month_sim12$dt_chain[,1],probs = 0.025)
q1_est_scrutiny[13] = quantile(model_month_sim13$dt_chain[,1],probs = 0.025)
q1_est_scrutiny[14] = quantile(model_month_sim14$dt_chain[,1],probs = 0.025)
q2_est_scrutiny[1] = quantile(model_month_sim1$dt_chain[,1],probs = 0.975)
q2_est_scrutiny[2] = quantile(model_month_sim2$dt_chain[,1],probs = 0.975)
q2_est_scrutiny[3] = quantile(model_month_sim3$dt_chain[,1],probs = 0.975)
q2_est_scrutiny[4] = quantile(model_month_sim4$dt_chain[,1],probs = 0.975)
q2_est_scrutiny[5] = quantile(model_month_sim5$dt_chain[,1],probs = 0.975)
q2_est_scrutiny[6] = quantile(model_month_sim6$dt_chain[,1],probs = 0.975)
q2_est_scrutiny[7] = quantile(model_month_sim7$dt_chain[,1],probs = 0.975)
q2_est_scrutiny[8] = quantile(model_month_sim8$dt_chain[,1],probs = 0.975)
q2_est_scrutiny[9] = quantile(model_month_sim9$dt_chain[,1],probs = 0.975)
q2_est_scrutiny[10] = quantile(model_month_sim10$dt_chain[,1],probs = 0.975)
q2_est_scrutiny[11] = quantile(model_month_sim11$dt_chain[,1],probs = 0.975)
q2_est_scrutiny[12] = quantile(model_month_sim12$dt_chain[,1],probs = 0.975)
q2_est_scrutiny[13] = quantile(model_month_sim13$dt_chain[,1],probs = 0.975)
q2_est_scrutiny[14] = quantile(model_month_sim14$dt_chain[,1],probs = 0.975)
q1_est_interaction[1] = quantile(model_month_sim1$bt_chain[,5],probs = 0.025)
q1_est_interaction[2] = quantile(model_month_sim2$bt_chain[,5],probs = 0.025)
q1_est_interaction[3] = quantile(model_month_sim3$bt_chain[,5],probs = 0.025)
q1_est_interaction[4] = quantile(model_month_sim4$bt_chain[,5],probs = 0.025)
q1_est_interaction[5] = quantile(model_month_sim5$bt_chain[,5],probs = 0.025)
q1_est_interaction[6] = quantile(model_month_sim6$bt_chain[,5],probs = 0.025)
q1_est_interaction[7] = quantile(model_month_sim7$bt_chain[,5],probs = 0.025)
q1_est_interaction[8] = quantile(model_month_sim8$bt_chain[,5],probs = 0.025)
q1_est_interaction[9] = quantile(model_month_sim9$bt_chain[,5],probs = 0.025)
q1_est_interaction[10] = quantile(model_month_sim10$bt_chain[,5],probs = 0.025)
q1_est_interaction[11] = quantile(model_month_sim11$bt_chain[,5],probs = 0.025)
q1_est_interaction[12] = quantile(model_month_sim12$bt_chain[,5],probs = 0.025)
q1_est_interaction[13] = quantile(model_month_sim13$bt_chain[,5],probs = 0.025)
q1_est_interaction[14] = quantile(model_month_sim14$bt_chain[,5],probs = 0.025)
q2_est_interaction[1] = quantile(model_month_sim1$bt_chain[,5],probs = 0.975)
q2_est_interaction[2] = quantile(model_month_sim2$bt_chain[,5],probs = 0.975)
q2_est_interaction[3] = quantile(model_month_sim3$bt_chain[,5],probs = 0.975)
q2_est_interaction[4] = quantile(model_month_sim4$bt_chain[,5],probs = 0.975)
q2_est_interaction[5] = quantile(model_month_sim5$bt_chain[,5],probs = 0.975)
q2_est_interaction[6] = quantile(model_month_sim6$bt_chain[,5],probs = 0.975)
q2_est_interaction[7] = quantile(model_month_sim7$bt_chain[,5],probs = 0.975)
q2_est_interaction[8] = quantile(model_month_sim8$bt_chain[,5],probs = 0.975)
q2_est_interaction[9] = quantile(model_month_sim9$bt_chain[,5],probs = 0.975)
q2_est_interaction[10] = quantile(model_month_sim10$bt_chain[,5],probs = 0.975)
q2_est_interaction[11] = quantile(model_month_sim11$bt_chain[,5],probs = 0.975)
q2_est_interaction[12] = quantile(model_month_sim12$bt_chain[,5],probs = 0.975)
q2_est_interaction[13] = quantile(model_month_sim13$bt_chain[,5],probs = 0.975)
q2_est_interaction[14] = quantile(model_month_sim14$bt_chain[,5],probs = 0.975)
est_scrutiny = as.data.frame(cbind(seq = 1:14, sims = c(1,10,20,30,40,50,60,70,80,90,100,500,1000,6000),
mean = mean_est_scrutiny,q1 = q1_est_scrutiny,q2 = q2_est_scrutiny))
est_interaction = as.data.frame(cbind(seq = 1:14, sims = c(1,10,20,30,40,50,60,70,80,90,100,500,1000,6000),
mean = mean_est_interaction,q1 = q1_est_interaction,q2 = q2_est_interaction))
ggplot(est_scrutiny,aes(x = seq,y = mean))+
geom_line()+
geom_ribbon(aes(ymin = q1,ymax = q2),alpha = 0.4)+
theme_bw()+
scale_x_continuous(breaks=0:14,
labels=c(0,1,10,20,30,40,50,60,70,80,90,100,500,1000,6000),name = "Standard Deviation")+
ylab("Estimated Effects of High Exp. Scrutiny")+
geom_vline(xintercept = 7.3,linetype = "dotted",size = 1.2)+
geom_text(x=7.02, y=0.11, label="Sample Standard Deviation = 63")+
ylim(c(0,0.32))+
geom_point(x = 0, y = 0.292,col = "red")+
geom_segment(aes(x = 0, y = 0.274, xend = 0, yend = 0.310),col = "red")+
geom_segment(aes(x = 0, y = 0.27, xend = 1, yend = 0.22),size = 0.3)+
geom_text(x = 3, y = 0.2,label = "Original Estimate")
ggplot(est_interaction,aes(x = seq,y = mean))+
geom_line()+
geom_ribbon(aes(ymin = q1,ymax = q2),alpha = 0.4)+
theme_bw()+
scale_x_continuous(breaks=0:14,
labels=c(0,1,10,20,30,40,50,60,70,80,90,100,500,1000,6000),name = "Standard Deviation")+
ylab("Estimated Effects: High Exp. Scrutiny * Time Budget")+
geom_vline(xintercept = 7.3,linetype = "dotted",size = 1.2)+
geom_text(x=7.02, y=-0.02, label="Sample Standard Deviation = 63")+
ylim(c(-0.076,0))+
geom_point(x = 0, y = -0.062,col = "red")+
geom_segment(aes(x = 0, y = -0.070, xend = 0, yend = -0.055),col = "red")+
geom_segment(aes(x = 0, y = -0.052, xend = 1, yend = -0.04),size = 0.3)+
geom_text(x = 3, y = -0.037,label = "Original Estimate")
######################################################
# Interaction:policy divergence * saliency
# aggregated estimates: policy divergence * saliency
# use only residual values of coalition divergence and saliency
e1 = glm(high_coalition_conflict ~ high_experienced_scrutiny,data = dat1,family = binomial(link = "logit")) #
dat1$conflict_residual = ifelse(e1$residuals>=0,1,0)
e2 = glm(high_saliency ~ duration_passed_bill_gov_area,data = dat1,family = binomial(link = "logit"))
dat1$saliency_residual = ifelse(e2$residuals>=0,1,0)
cor(dat1$high_saliency,dat1$high_experienced_scrutiny)
cor(dat1$high_coalition_conflict,dat1$high_experienced_scrutiny)
set.seed(12345)
model_month_int = circGLM(formula = bill_location ~ high_experienced_scrutiny *
month2ne + high_coalition_conflict * month2ne + high_saliency *
month2ne + high_coalition_conflict * high_saliency *
month2ne +
+ min_parl_perc + oppos_conflict + gov_duration +
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_month_int)
set.seed(12345)
model_month_residual1 <- circGLM(bill_location ~ high_experienced_scrutiny * month2ne +
conflict_residual*month2ne + saliency_residual*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 1000, burnin = 1000)
print(model_month_residual1)
########################################################
# Interactions with expected government next term
# Approximated by real government composition next term
set.seed(12345)
model_con1 <- circGLM(bill_location ~ high_experienced_scrutiny * month2ne +
high_experienced_scrutiny * return_share +
high_experienced_scrutiny * party_in_nxt_gov +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos, data = dat1, Q = 10000, burnin = 1000)
print(model_con1)
#########################################################
### Robustness checks
# Table D6
# Country-fixed effects
set.seed(12345)
model_month_01_c <- circGLM(bill_location ~ month2ne + country, data = dat1, Q = 10000, burnin = 1000)
print(model_month_01_c)
set.seed(12345)
model_month_11_c <- circGLM(bill_location ~ high_experienced_scrutiny*month2ne + country, data = dat1, Q = 10000, burnin = 1000)
print(model_month_11_c)
set.seed(12345)
model_month_21_c <- circGLM(bill_location ~ high_experienced_scrutiny * month2ne +
high_coalition_conflict + high_saliency +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos + country, data = dat1, Q = 10000, burnin = 1000, thin = 1)
print(model_month_21_c)
set.seed(12345)
model_month_22_c <- circGLM(bill_location ~ high_experienced_scrutiny * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos + country, data = dat1, Q = 10000, burnin = 1000)
print(model_month_22_c)
set.seed(12345)
model_month_01_p <- circGLM(bill_location ~ month2ne + area13_f, data = dat1, Q = 10000, burnin = 1000)
print(model_month_01_p)
set.seed(12345)
model_month_11_p <- circGLM(bill_location ~ high_experienced_scrutiny*month2ne + area13_f, data = dat1, Q = 10000, burnin = 1000)
print(model_month_11_p)
set.seed(12345)
model_month_21_p <- circGLM(bill_location ~ high_experienced_scrutiny * month2ne +
high_coalition_conflict + high_saliency +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos + area13_f, data = dat1, Q = 10000, burnin = 1000, thin = 1)
print(model_month_21_p)
set.seed(12345)
model_month_22_p <- circGLM(bill_location ~ high_experienced_scrutiny * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos + area13_f, data = dat1, Q = 10000, burnin = 1000)
print(model_month_22_p)
set.seed(12345)
model_month_01_pc <- circGLM(bill_location ~ month2ne + area13_f + country, data = dat1, Q = 10000, burnin = 1000)
print(model_month_01_pc)
set.seed(12345)
model_month_11_pc <- circGLM(bill_location ~ high_experienced_scrutiny*month2ne + area13_f + country, data = dat1, Q = 10000, burnin = 1000)
print(model_month_11_pc)
set.seed(12345)
model_month_21_pc <- circGLM(bill_location ~ high_experienced_scrutiny * month2ne +
high_coalition_conflict + high_saliency +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos + area13_f + country, data = dat1, Q = 10000, burnin = 1000, thin = 1)
print(model_month_21_pc)
set.seed(12345)
model_month_22_pc <- circGLM(bill_location ~ high_experienced_scrutiny * month2ne +
high_coalition_conflict*month2ne + high_saliency*month2ne +
min_parl_perc +
oppos_conflict + gov_duration+
minority + median_oppos + area13_f + country, data = dat1, Q = 10000, burnin = 1000)
