This RMarkdown file replicates 67 studies published in APSR, AJPS,
and JOP (2010-2022) that employ instrumental variable (IV) designs as
their primary identification strategy.
Click the Code button in the top right and select
Show All Code to reveal all code used in this RMarkdown.
Click Show in paragraphs to reveal the code used to
generate a finding.
The replication files can be downloaded from here.
Check out our paper
to see more results of the meta-analysis. Click here for more details
of ivDiag, the R package that makes the replications
possible.
Update (October 2026). All results on this page were
recomputed with ivDiag 1.0.8 (GitHub, dev
branch). They differ from the published Supplementary Materials where
the package was corrected: the effective F for designs with
more than one instrument, the first-stage F statistics and AR
test for a factor instrument, AR confidence sets far from the 2SLS
estimate, tF intervals when the first stage is very weak, and
bootstrap results, which are now reproducible. All other analytic
results are unchanged. See the ivDiag
changelog for details.
Mannual & Setup
See below for instructions on how to read the output statistics:
est_ols stores treatment effect estimates from the naive
OLS estimation. ‘Analytic’ corresponds to analytic asymptotic standard
errors (SEs) and confidence intervals (CIs). ‘Boot.c’ and ‘Boot.t’
represent inferential methods based on bootstrapped coefficients and
bootstrapped t-statistics, respectively.
est_2sls stores treatment effect estimates from the 2SLS
estimation.
AR stores results from the Anderson-Rubin test. The
confidence region (CR) is produced by the inversion method.
‘AR.bounded = TRUE’ means that the CR is bounded and not
empty.
F.stat stores F statistics based on classic SEs
(F.standard), H.W. robust SEs (F.robust), cluster-robust SEs
(F.cluster), bootstrapped or cluster-bootstrapped SEs (F.bootstrap) and
the effective F (F.effective). In the one-treatment-one-instrument case,
F.effective is the same as F.robust (if there is no clustering
structure) or F.cluster (if there is one).
rho stores the partial correlation coefficient between
the treatment and the predicted treatment from the first stage
regression.
tf.cF stores the results from the tF-cF procedure.
Specifically, cF corresponds to the adjusted critical value based on the
first stage (effective) F statistic for the subsequent t-test.
est_rf stores the results from the reduced form
regression. The control variables are partialled out.
est_fs stores the results from the first stage
regression. The control variables are partialled out.
p_iv stores the number of instruments. N and
N_cl stores the the number of observations and the number of
clusters (if there is a clustering structure), respectively. df
stores the degree of freedom from the 2SLS regression.
nvalues stores the numbers of unique values in the
outcome, treatment, and instrument.
Setup environment and load libraries.
rm(list=ls())
library(remotes)
library(kableExtra)
library(haven)
library(tidyverse)
# library(ivmodel) # not used
library(doParallel)
library(foreach)
library(estimatr)
require(AER)
library(lfe)
library(glue)
#path <- "..." # set your path
setwd(path)
# install.packages("ivDiag", repos='http://cran.us.r-project.org')
library(ivDiag)
# number of cores
cores <- 15
Acharya et al. (2016)
| Unit of analysis |
county |
| Treatment |
slave proportion in 1860 |
| Instrument |
measures of the environmental suitability for growing cotton |
| Outcome |
proportion Democrat |
| Model |
Table2(2) |
df<-readRDS("jop_Acharya_etal_2016.rds")
Y <- "dem"
D <-"pslave1860"
Z <- "cottonsuit"
controls <- c("x2", "rugged", "latitude", "x2", "longitude", "x3","x4", "water1860")
cl <- NULL
FE <- 'code'
weights<-"sample.size"
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.0318 0.0474 -0.6701 -0.1247 0.0612 0.5028
## Boot.c -0.0318 0.0471 -0.6753 -0.1302 0.0592 0.4980
## Boot.t -0.0318 0.0474 -0.6701 -0.1427 0.0791 0.5320
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.2766 0.1343 -2.0596 -0.5399 -0.0134 0.0394
## Boot.c -0.2766 0.1395 -1.9824 -0.5831 -0.0265 0.0360
## Boot.t -0.2766 0.1343 -2.0596 -0.5408 -0.0125 0.0420
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 4.8310 1.0000 1118.0000 0.0282
##
## $AR$ci.print
## [1] "[-0.5836, -0.0296]"
##
## $AR$ci
## [1] -0.5836 -0.0296
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 106.4957 37.6527 NA 36.0128 37.6527
##
## $rho
## [1] 0.2973
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 37.6527 2.2528 -0.2766 0.1343 -2.0596 -0.5792 0.0259 0.0731
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## cottonsuit -0.1128 0.0518 0.0294 0.0524 -0.2171 -0.012 0.036
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## cottonsuit 0.4079 0.0665 0 0.068 0.2757 0.5503 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 1120
##
## $N_cl
## NULL
##
## $df
## [1] 1098
##
## $nvalues
## dem pslave1860 cottonsuit
## [1,] 911 1077 1120
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Alt et al. (2016)
| Unit of analysis |
individual |
| Treatment |
unemployment expectations |
| Instrument |
assignment to receiving an aggregate unemployment forecast |
| Outcome |
vote intention |
| Model |
Table2(1) |
df<- readRDS("jop_Alt_etal_2015.rds")
D <- "urate_fut"
Y <- "gov"
Z <- "treatment"
controls <- "urate_now"
cl <- NULL
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.0131 0.0026 -5.0845 -0.0182 -0.0081 0
## Boot.c -0.0131 0.0027 -4.9350 -0.0184 -0.0082 0
## Boot.t -0.0131 0.0026 -5.0845 -0.0183 -0.0079 0
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.0347 0.0139 -2.5022 -0.0619 -0.0075 0.0123
## Boot.c -0.0347 0.0138 -2.5084 -0.0623 -0.0087 0.0100
## Boot.t -0.0347 0.0139 -2.5022 -0.0613 -0.0082 0.0090
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 1.4657 7.0000 5697.0000 0.1746
##
## $AR$ci.print
## [1] "[-0.0817, 0.0095]"
##
## $AR$ci
## [1] -0.0817 0.0095
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 32.0906 27.9818 NA 29.7116 32.2223
##
## $rho
## [1] 0.1948
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## treatment_2 0.0270 0.0243 0.2661 0.0250 -0.0226 0.0767 0.270
## treatment_3 0.0476 0.0247 0.0543 0.0241 0.0025 0.0935 0.036
## treatment_4 0.0058 0.0244 0.8118 0.0240 -0.0385 0.0530 0.784
## treatment_5 0.0281 0.0247 0.2562 0.0252 -0.0175 0.0792 0.230
## treatment_6 -0.0125 0.0244 0.6082 0.0249 -0.0631 0.0370 0.630
## treatment_7 0.0428 0.0248 0.0841 0.0245 -0.0053 0.0937 0.090
## treatment_8 0.0100 0.0248 0.6856 0.0239 -0.0355 0.0554 0.638
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## treatment_2 -0.9354 0.1169 0 0.1190 -1.1794 -0.7097 0
## treatment_3 -1.5061 0.1269 0 0.1219 -1.7515 -1.2691 0
## treatment_4 -0.7940 0.1219 0 0.1217 -1.0302 -0.5656 0
## treatment_5 -1.3597 0.1259 0 0.1253 -1.6195 -1.1147 0
## treatment_6 -0.7556 0.1196 0 0.1190 -0.9760 -0.5298 0
## treatment_7 -1.3421 0.1369 0 0.1370 -1.6024 -1.0914 0
## treatment_8 -0.9173 0.1127 0 0.1106 -1.1372 -0.6999 0
##
## $p_iv
## [1] 7
##
## $N
## [1] 5705
##
## $N_cl
## NULL
##
## $df
## [1] 5702
##
## $nvalues
## gov urate_fut treatment_2 treatment_3 treatment_4 treatment_5 treatment_6
## [1,] 2 88 2 2 2 2 2
## treatment_7 treatment_8
## [1,] 2 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Arias and Stasavage (2019)
| Unit of analysis |
country*year |
| Treatment |
government expenditures |
| Instrument |
trade shock \(\times\) UK bond
yield |
| Outcome |
regular leader turnover |
| Model |
Table3(2) |
# Variables are already residualized against controls, fixed effects, and unit-specific trends
df<-readRDS("jop_Arias_etal_2019.rds")
Y <- "regular_res"
D <- "dexpenditures_res"
Z <- "interact_res"
controls <- NULL
cl<-c("ccode","year")
FE<-NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.0215 0.0359 -0.5975 -0.0919 0.0490 0.5502
## Boot.c -0.0215 0.0403 -0.5328 -0.1037 0.0614 0.6126
## Boot.t -0.0215 0.0359 -0.5975 -0.0752 0.0322 0.4558
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.8282 1.6891 0.4903 -2.4824 4.1389 0.6239
## Boot.c 0.8282 33.9156 0.0244 -1.2225 14.2890 0.5095
## Boot.t 0.8282 1.6891 0.4903 -1.8005 3.4569 0.4579
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 0.2643 1.0000 2743.0000 0.6073
##
## $AR$ci.print
## [1] "[-2.1918, 5.7741]"
##
## $AR$ci
## [1] -2.1918 5.7741
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 3.0429 3.4739 14.4763 7.8034 14.4763
##
## $rho
## [1] 0.0333
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 14.4763 2.9071 0.8282 1.6891 0.4903 -4.0822 5.7387 0.7410
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## interact_res 0.276 0.5369 0.6072 0.4936 -0.4999 1.4024 0.4947
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## interact_res 0.3332 0.0876 1e-04 0.1193 0.0508 0.5535 0.0147
##
## $p_iv
## [1] 1
##
## $N
## [1] 2745
##
## $N_cl
## [1] 31
##
## $df
## [1] 2743
##
## $nvalues
## regular_res dexpenditures_res interact_res
## [1,] 2745 2745 2745
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Baccini and Weymouth (2021)
| Unit of analysis |
county |
| Treatment |
Manufacturing Layoffs |
| Instrument |
Bartik instrument |
| Outcome |
Change of Democratic Vote Share |
| Model |
Table2(3) |
df <- readRDS("apsr_baccini_etal_2021.rds")
D <-"msl_pc4y2"
Y <- "ddem_votes_pct1"
Z <- "bartik_leo5"
controls <- c("LAU_unemp_rate_4y", "pers_m_total_share_4y", "pers_coll_share_4y",
"white_counties_4y", "msl_service_pc4y")
cl <- NULL
FE <- "id_state"
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.0127 0.0113 -1.1240 -0.0348 0.0094 0.261
## Boot.c -0.0127 0.0118 -1.0753 -0.0363 0.0105 0.234
## Boot.t -0.0127 0.0113 -1.1240 -0.0357 0.0102 0.269
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.0433 0.0194 -2.2308 -0.0813 -0.0053 0.0257
## Boot.c -0.0433 0.0199 -2.1765 -0.0817 -0.0057 0.0220
## Boot.t -0.0433 0.0194 -2.2308 -0.0813 -0.0052 0.0250
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 5.0579 1.0000 3063.0000 0.0246
##
## $AR$ci.print
## [1] "[-0.0813, -0.0056]"
##
## $AR$ci
## [1] -0.0813 -0.0056
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 1537.5647 468.6180 NA 458.7792 468.6180
##
## $rho
## [1] 0.5815
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 468.6180 1.9600 -0.0433 0.0194 -2.2308 -0.0813 -0.0053 0.0257
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## bartik_leo5 -4.5381 2.0355 0.0258 2.0768 -8.3694 -0.62 0.022
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## bartik_leo5 104.8786 4.8448 0 4.8965 96.2811 115.2443 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 3065
##
## $N_cl
## NULL
##
## $df
## [1] 3010
##
## $nvalues
## ddem_votes_pct1 msl_pc4y2 bartik_leo5
## [1,] 3062 2913 2771
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Bhavnani and Lee (2018)
| Unit of analysis |
district*period |
| Treatment |
bureaucrats’ embeddedness |
| Instrument |
early-career job assignment |
| Outcome |
proportion of villages with high schools |
| Model |
Table1(4) |
df <-readRDS("jop_Bhavnani_etal_2018.rds")
D <- "ALLlocal"
Y <- "Phigh"
Z <- "EXALLlocal"
controls <- c("ALLbachdivi", "lnnewpop", "lnnvill", "p_rural", "p_work",
"p_aglab", "p_sc", "p_st", "lnmurderpc", "stategov", "natgov")
cl <- "distcode71"
FE<- c('distcode71',"year")
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0195 0.0073 2.6753 0.0052 0.0337 0.0075
## Boot.c 0.0195 0.0073 2.6577 0.0041 0.0325 0.0120
## Boot.t 0.0195 0.0073 2.6753 0.0092 0.0298 0.0000
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.022 0.0100 2.1986 0.0024 0.0417 0.0279
## Boot.c 0.022 0.0103 2.1423 0.0008 0.0413 0.0400
## Boot.t 0.022 0.0100 2.1986 0.0065 0.0376 0.0090
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 5.0041 1.0000 567.0000 0.0257
##
## $AR$ci.print
## [1] "[0.0027, 0.0420]"
##
## $AR$ci
## [1] 0.0027 0.0420
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 243.2947 215.8574 236.8206 237.6413 236.8206
##
## $rho
## [1] 0.7002
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 236.8206 1.9600 0.0220 0.0100 2.1986 0.0024 0.0417 0.0279
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## EXALLlocal 0.0121 0.0055 0.0267 0.0056 4e-04 0.022 0.04
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## EXALLlocal 0.5504 0.0358 0 0.0357 0.4797 0.6192 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 569
##
## $N_cl
## [1] 303
##
## $df
## [1] 253
##
## $nvalues
## Phigh ALLlocal EXALLlocal
## [1,] 567 493 318
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Barth et al. (2015)
| Unit of analysis |
country*year |
| Treatment |
wage inequality |
| Instrument |
adjusted bargaining coverage; effective number of union
confederations |
| Outcome |
welfare support |
| Model |
Table4(1) |
df<- readRDS("ajps_Barth_2015.rds")
D <-"ld9d1"
Y <- "welfareleft"
Z <- c("l2ip_adjcov5", "l2ip_enucfs")
controls <- c("lgdpgr", "lelderly", "llntexp", "lud", "ludsq",
"lechp", "lnet", "lannual", "ltrend", "ltrendsq")
cl <- FE <- "countrynumber"
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.7755 0.2358 -3.2886 -1.2376 -0.3133 0.001
## Boot.c -0.7755 0.3203 -2.4211 -1.3290 -0.1218 0.028
## Boot.t -0.7755 0.2358 -3.2886 -1.2080 -0.3430 0.002
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -1.4265 0.7779 -1.8339 -2.9511 0.0981 0.0667
## Boot.c -1.4265 2.3197 -0.6150 -4.5702 2.4463 0.3140
## Boot.t -1.4265 0.7779 -1.8339 -2.9926 0.1396 0.0780
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 3.6053 2.0000 114.0000 0.0303
##
## $AR$ci.print
## [1] "[-4.0258, -0.1120]"
##
## $AR$ci
## [1] -4.0258 -0.1120
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 9.7741 15.0268 11.5754 2.6284 8.7888
##
## $rho
## [1] 0.4345
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## l2ip_adjcov5 0.0184 0.0124 0.1377 0.0197 -0.0260 0.0508 0.384
## l2ip_enucfs 0.1687 0.2420 0.4858 0.4237 -0.8406 0.7967 0.706
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## l2ip_adjcov5 -0.0096 0.0046 0.0383 0.0069 -0.0283 -0.0006 0.032
## l2ip_enucfs -0.1542 0.0777 0.0473 0.1171 -0.2910 0.1129 0.198
##
## $p_iv
## [1] 2
##
## $N
## [1] 117
##
## $N_cl
## [1] 21
##
## $df
## [1] 20
##
## $nvalues
## welfareleft ld9d1 l2ip_adjcov5 l2ip_enucfs
## [1,] 117 117 106 112
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Blair et al. (2022)
| Unit of analysis |
UN peacekeeping operations event level |
| Treatment |
fragmentation of any given PKO mandate |
| Instrument |
average fragmentation of all ongoing PKO mandates |
| Outcome |
process performance |
| Model |
TableD7(3) |
df <-readRDS("ajps_Blair_2022.rds")
df<-as.data.frame(df)
D<-"L_avg"
Y <- "sh_perfassist_pb"
Z <- "L_fract_assistv3"
controls <- c("L_experman_assist_pbv3","L_numtask_assist_pbv3","L_lntot",
"L_deployment","L_lnpop","L_lngdp","L_ucdpconflictspell","L_polity")
cl <- NULL
FE <- c("date3","iso3n")
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -1.3155 0.2040 -6.4481 -1.7153 -0.9156 0
## Boot.c -1.3155 0.2588 -5.0834 -1.7489 -0.7255 0
## Boot.t -1.3155 0.2040 -6.4481 -1.8167 -0.8143 0
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -1.8768 0.4711 -3.9841 -2.8001 -0.9535 0.0001
## Boot.c -1.8768 0.6679 -2.8099 -3.0415 -0.4294 0.0160
## Boot.t -1.8768 0.4711 -3.9841 -2.9559 -0.7977 0.0010
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 20.4937 1.0000 845.0000 0.0000
##
## $AR$ci.print
## [1] "[-2.7291, -1.0996]"
##
## $AR$ci
## [1] -2.7291 -1.0996
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 186.0679 60.6442 NA 24.2966 60.6442
##
## $rho
## [1] 0.4793
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 60.6442 2.0913 -1.8768 0.4711 -3.9841 -2.8619 -0.8917 0.0002
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## L_fract_assistv3 1.805 0.464 1e-04 0.7556 0.3755 3.3646 0.016
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## L_fract_assistv3 -0.9617 0.1235 0 0.1951 -1.4906 -0.7208 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 847
##
## $N_cl
## NULL
##
## $df
## [1] 624
##
## $nvalues
## sh_perfassist_pb L_avg L_fract_assistv3
## [1,] 56 55 222
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Blattman et al. (2014)
| Unit of analysis |
resident |
| Treatment |
mass education campaign for dispute resolution |
| Instrument |
assignment to treatment blocks |
| Outcome |
serious land dispute |
| Model |
Table9(8) |
df <- readRDS("apsr_Blattman_etal_2014.rds")
df$district <- 0
for (i in 1:15) {df$district[which(df[,paste0("district",i)]==1)] <- i}
D <-"months_treated"
Y <- "fightweap_dummy"
Z <- c("block1", "block2", "block3")
controls <- c("ageover60", "age40_60", "age20_40",
"yrs_edu", "female", "stranger", "christian",
"minority", "cashearn_imputedhst", "noland",
"land_sizehst", "farm_sizehst", "lndtake_dum",
"housetake_dum", "vsmall", "small",
"small2", "small3", "quartdummy", "cedulevel_bc",
"ctownhh_log_el", "cwealthindex_bc", "cviol_experienced_bc",
"clndtake_bc", "cviol_scale_bc", "clandconf_scale_bc",
"cwitchcraft_scale_bc", "cpalaviol_imputed_bc",
"cprog_ldr_beliefs_bc", "cattitudes_tribe_bc",
"crelmarry_bc", "trainee")
cl <- "district"
FE <- "district"
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 7e-04 5e-04 1.2355 -4e-04 0.0018 0.2167
## Boot.c 7e-04 7e-04 1.0116 -8e-04 0.0018 0.4120
## Boot.t 7e-04 5e-04 1.2355 -6e-04 0.0019 0.2800
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 9e-04 5e-04 1.9157 0e+00 0.0018 0.0554
## Boot.c 9e-04 6e-04 1.5165 -4e-04 0.0019 0.1880
## Boot.t 9e-04 5e-04 1.9157 -2e-04 0.0020 0.0780
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 5.0886 3.0000 1896.0000 0.0016
##
## $AR$ci.print
## [1] "[0.0006, 0.0022]"
##
## $AR$ci
## [1] 0.0006 0.0022
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 2756.3845 2472.2847 234.3492 93.3873 57.8296
##
## $rho
## [1] 0.9039
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## block1 0.0263 0.0085 0.0020 0.0128 -0.0012 0.0507 0.062
## block2 0.0027 0.0099 0.7812 0.0131 -0.0238 0.0295 0.862
## block3 0.0085 0.0064 0.1816 0.0107 -0.0155 0.0286 0.326
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## block1 20.0361 0.7567 0 1.2655 17.6482 22.8070 0.000
## block2 12.9786 1.7805 0 2.2209 8.6058 17.0937 0.000
## block3 6.7831 1.3081 0 1.8278 3.1454 10.3831 0.002
##
## $p_iv
## [1] 3
##
## $N
## [1] 1900
##
## $N_cl
## [1] 15
##
## $df
## [1] 14
##
## $nvalues
## fightweap_dummy months_treated block1 block2 block3
## [1,] 2 34 2 2 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Carnegie and Marinov (2017)
| Unit of analysis |
country*year |
| Treatment |
foreign aid |
| Instrument |
being a former colony of one of the Council members |
| Outcome |
CIRI Human Empowerment index |
| Model |
Table1(2) |
df<-readRDS("ajps_Carnegie_etal_2017.rds")
D <-"EV"
Y <- "new_empinxavg"
Z <- "l2CPcol2"
controls <- c( "covloggdp", "covloggdpCF", "covloggdpC",
"covdemregionF", "covdemregion", "coviNY_GDP_PETR_RT_ZSF",
"coviNY_GDP_PETR_RT_ZS", "covwvs_relF", "covwvs_rel",
"covwdi_imp", "covwdi_fdiF", "covwdi_fdi",
"covwdi_expF", "covwdi_exp", "covihme_ayemF", "covihme_ayem")
cl<-c("year","ccode")
FE <- c("year","ccode")
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.1903 0.1376 1.3831 -0.0794 0.4601 0.1666
## Boot.c 0.1903 0.0762 2.4980 0.0457 0.3332 0.0100
## Boot.t 0.1903 0.1376 1.3831 0.0341 0.3466 0.0230
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 1.7054 0.8436 2.0217 0.0520 3.3589 0.0432
## Boot.c 1.7054 8.5179 0.2002 -4.0210 8.3255 0.1820
## Boot.t 1.7054 0.8436 2.0217 0.3371 3.0738 0.0260
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 2.7312 1.0000 1790.0000 0.0986
##
## $AR$ci.print
## [1] "[-0.5744, 4.0194]"
##
## $AR$ci
## [1] -0.5744 4.0194
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 4.5101 4.5766 7.5007 4.0459 7.5007
##
## $rho
## [1] 0.0523
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 7.5007 4.1570 1.7054 0.8436 2.0217 -1.8014 5.2123 0.3405
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## l2CPcol2 0.2632 0.16 0.0998 0.1831 -0.0766 0.6179 0.126
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## l2CPcol2 0.1543 0.0564 0.0062 0.0767 -0.0056 0.2989 0.062
##
## $p_iv
## [1] 1
##
## $N
## [1] 1792
##
## $N_cl
## [1] 20
##
## $df
## [1] 19
##
## $nvalues
## new_empinxavg EV l2CPcol2
## [1,] 57 1601 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Charron and Lapuente (2013)
| Unit of analysis |
region |
| Treatment |
clientelism |
| Instrument |
consolidation of clientelistic networks in regions where rulers have
historically less constraints to their decisions |
| Outcome |
quality of governments |
| Model |
Table3(2a) |
df<-readRDS("jop_Charron_etal_2013.rds")
D <- "pc_all4_tol"
Y <- "eqi"
Z <- c("pc_institutions","literacy1880")
controls <- c("logpop", "capitalregion", "ger", "it", "uk","urb_1860_1850_30")
cl <- NULL
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0176 0.0034 5.1860 0.0110 0.0243 0.000
## Boot.c 0.0176 0.0036 4.9567 0.0102 0.0240 0.000
## Boot.t 0.0176 0.0034 5.1860 0.0104 0.0249 0.001
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0233 0.0041 5.7196 0.0153 0.0313 0
## Boot.c 0.0233 0.0043 5.3968 0.0148 0.0315 0
## Boot.t 0.0233 0.0041 5.7196 0.0149 0.0317 0
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 18.2062 2.0000 53.0000 0.0000
##
## $AR$ci.print
## [1] "[0.0170, 0.0297]"
##
## $AR$ci
## [1] 0.0170 0.0297
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 37.2005 31.2712 NA 28.7454 36.6917
##
## $rho
## [1] 0.7828
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## pc_institutions 0.1941 0.0765 0.0111 0.0807 0.0480 0.3588 0.018
## literacy1880 0.0204 0.0043 0.0000 0.0051 0.0099 0.0291 0.006
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## pc_institutions 12.1093 2.3469 0e+00 2.4417 7.3574 16.7541 0.000
## literacy1880 0.5348 0.1319 1e-04 0.1625 0.1472 0.8148 0.018
##
## $p_iv
## [1] 2
##
## $N
## [1] 56
##
## $N_cl
## NULL
##
## $df
## [1] 48
##
## $nvalues
## eqi pc_all4_tol pc_institutions literacy1880
## [1,] 56 44 14 38
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Charron et al. (2017)
| Unit of analysis |
region |
| Treatment |
more developed bureaucracy |
| Instrument |
proportion of Protestant residents in a region; aggregate literacy
in 1880 |
| Outcome |
percent of single bidders in procurement contracts |
| Model |
Table5(4) |
df <- readRDS("jop_Charron_etal_2017.rds")
D <- "pubmerit"
Y <- "lcri_euc1_r"
Z <- c("litrate_1880", 'pctprot')
controls <- c("logpopdens", "logppp11", "trust", "pctwomenparl")
cl <- "country"
FE <- NULL
weights<-"eu_popweights"
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.09 0.0155 -5.8068 -0.1204 -0.0597 0.000
## Boot.c -0.09 0.0240 -3.7568 -0.1101 -0.0172 0.014
## Boot.t -0.09 0.0155 -5.8068 -0.1432 -0.0369 0.009
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.1472 0.0422 -3.4919 -0.2299 -0.0646 5e-04
## Boot.c -0.1472 0.1225 -1.2020 -0.2948 0.0377 8e-02
## Boot.t -0.1472 0.0422 -3.4919 -0.2450 -0.0495 6e-03
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 5.5325 2.0000 172.0000 0.0047
##
## $AR$ci.print
## [1] "[-0.2584, -0.0444]"
##
## $AR$ci
## [1] -0.2584 -0.0444
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 27.8775 23.2292 36.2651 7.1908 17.8105
##
## $rho
## [1] 0.4992
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## litrate_1880 -0.0009 0.0005 0.0767 0.0006 -0.0019 0.0004 0.228
## pctprot -0.1769 0.1131 0.1177 0.1394 -0.4265 0.1078 0.310
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## litrate_1880 0.0060 0.0025 0.0184 0.0030 -0.0003 0.0112 0.066
## pctprot 1.1959 0.3235 0.0002 0.4451 0.1250 1.9033 0.034
##
## $p_iv
## [1] 2
##
## $N
## [1] 175
##
## $N_cl
## [1] 20
##
## $df
## [1] 169
##
## $nvalues
## lcri_euc1_r pubmerit litrate_1880 pctprot
## [1,] 173 173 78 131
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Chong et al. (2019)
| Unit of analysis |
household |
| Treatment |
actual proportion of households treated in the locality |
| Instrument |
treatment assignment in get-out-to-vote campaigns |
| Outcome |
voted in 2013 presidential election |
| Model |
Table4(1) |
df <-readRDS("ajps_Chong_etal_2019.rds")
D <-"ratio_treat"
Y <- "elecc_presid2013"
Z <- c("D2D30", "D2D40", "D2D50")
controls <-c("age", "married", "children", "num_children",
"employed", "languag", "yrseduc", "bornloc",
"hh_asset_index", "log_pop", "mujeres_perc",
"pob_0_14_perc", "pob_15_64_perc", "pob_65mas_perc",
"analfabetos_perc", "asiste_escuela_perc",
"TASA_women", "TASA_men", "electricidad_perc",
"agua_perc", "desague_perc", "basura_perc",
"fono_fijo_perc", "fono_cel_perc", "ocupantes",
"Rural", "distancia2_final", "db_age",
"db_married", "db_children", "db_num_children",
"db_employed", "db_languag", "db_yrseduc",
"db_bornloc", "db_hh_asset_index", "db_log_pop",
"db_mujeres_perc", "db_pob_0_14_perc",
"db_pob_15_64_perc", "db_pob_65mas_perc",
"db_analfabetos_perc", "db_asiste_escuela_perc",
"db_TASA_women", "db_TASA_men", "db_electricidad_perc",
"db_agua_perc", "db_desague_perc", "db_basura_perc",
"db_fono_fijo_perc", "db_fono_cel_perc",
"db_ocupantes", "db_Rural", "db_distancia2_final",
"dpto1", "elecc_presid2008", "db_elecc_presid2008")
cl <- "loc"
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0715 0.0421 1.6984 -0.0110 0.1541 0.0894
## Boot.c 0.0715 0.0444 1.6121 -0.0205 0.1562 0.1120
## Boot.t 0.0715 0.0421 1.6984 0.0004 0.1427 0.0470
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.1242 0.0527 2.3584 0.0210 0.2275 0.0184
## Boot.c 0.1242 0.0567 2.1927 0.0089 0.2348 0.0220
## Boot.t 0.1242 0.0527 2.3584 0.0411 0.2074 0.0000
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 2.5349 3.0000 3346.0000 0.0551
##
## $AR$ci.print
## [1] "[-0.0023, 0.2793]"
##
## $AR$ci
## [1] -0.0023 0.2793
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 1163.8658 270.5690 37.7653 32.3555 27.9301
##
## $rho
## [1] 0.7163
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## D2D30 0.0194 0.0333 0.5611 0.0366 -0.0568 0.0810 0.642
## D2D40 0.0651 0.0243 0.0075 0.0265 0.0158 0.1181 0.014
## D2D50 0.0190 0.0277 0.4940 0.0290 -0.0418 0.0739 0.504
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## D2D30 0.2996 0.0434 0 0.0465 0.2203 0.4010 0
## D2D40 0.3946 0.0754 0 0.0781 0.2483 0.5580 0
## D2D50 0.2663 0.0438 0 0.0488 0.1938 0.3777 0
##
## $p_iv
## [1] 3
##
## $N
## [1] 3350
##
## $N_cl
## [1] 282
##
## $df
## [1] 3316
##
## $nvalues
## elecc_presid2013 ratio_treat D2D30 D2D40 D2D50
## [1,] 2 56 2 2 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Cirone and Van Coppenolle (2018)
| Unit of analysis |
deputy*year |
| Treatment |
budget committee service |
| Instrument |
random assignment of budget incumbents to bureaux |
| Outcome |
legislator sponsorship on a budget bill |
| Model |
Table2(2) |
df<- readRDS("jop_Cirone_etal_2018.rds")
D <- "budget"
Y <- "F1to5billbudgetdummy"
Z <- "bureauotherbudgetincumbent"
controls <- c("budgetincumbent", "cummyears", "cummyears2",
"age", "age2", "permargin", "permargin2",
"inscrits", "inscrits2", "proprietaire",
"lib_all", "civil", "paris")
cl <- c("id","year")
FE <- "year"
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0305 0.0218 1.3957 -0.0123 0.0733 0.1628
## Boot.c 0.0305 0.0184 1.6541 -0.0049 0.0678 0.1000
## Boot.t 0.0305 0.0218 1.3957 -0.0002 0.0611 0.0510
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.6341 0.3548 1.7872 -0.0613 1.3295 0.0739
## Boot.c 0.6341 0.2652 2.3911 0.1349 1.2108 0.0060
## Boot.t 0.6341 0.3548 1.7872 0.1631 1.1052 0.0150
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 3.0669 1.0000 8145.0000 0.0799
##
## $AR$ci.print
## [1] "[-0.0784, 1.3276]"
##
## $AR$ci
## [1] -0.0784 1.3276
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 32.1302 34.2557 168.0023 36.2786 168.0023
##
## $rho
## [1] 0.0628
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 168.0023 1.9600 0.6341 0.3548 1.7872 -0.0613 1.3295 0.0739
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5%
## bureauotherbudgetincumbent -0.0052 0.003 0.0801 0.002 -0.009 -0.0011
## p.value.b
## bureauotherbudgetincumbent 0.006
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5%
## bureauotherbudgetincumbent -0.0083 6e-04 0 0.0014 -0.0109 -0.0055
## p.value.b
## bureauotherbudgetincumbent 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 8147
##
## $N_cl
## [1] 1330
##
## $df
## [1] 13
##
## $nvalues
## F1to5billbudgetdummy budget bureauotherbudgetincumbent
## [1,] 2 2 9
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Colantone and Stanig (2018a)
| Unit of analysis |
region |
| Treatment |
regional-level import shock from China |
| Instrument |
imports from China to the United States * local industrial
structure |
| Outcome |
leave share |
| Model |
Table1(6) |
df<-readRDS("apsr_Colantone_etal_2018.rds")
D <-'import_shock'
Y <- "leave_share"
Z <- "instrument_for_shock"
controls <- c("immigrant_share", "immigrant_arrivals")
cl <- "fix"
FE <- "nuts1"
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 12.0854 3.8903 3.1066 4.4605 19.7104 0.0019
## Boot.c 12.0854 4.5536 2.6540 3.9803 21.5843 0.0040
## Boot.t 12.0854 3.8903 3.1066 5.8485 18.3223 0.0010
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 12.2993 3.9320 3.1280 4.5926 20.0060 0.0018
## Boot.c 12.2993 4.6988 2.6175 3.5834 21.4600 0.0100
## Boot.t 12.2993 3.9320 3.1280 5.9395 18.6591 0.0010
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 10.5300 1.0000 165.0000 0.0014
##
## $AR$ci.print
## [1] "[4.8330, 19.8290]"
##
## $AR$ci
## [1] 4.833 19.829
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 2158.0662 792.4682 613.9804 539.9577 613.9804
##
## $rho
## [1] 0.9663
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 613.9804 1.9600 12.2993 3.9320 3.1280 4.5926 20.0060 0.0018
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## instrument_for_shock 1.5671 0.5015 0.0018 0.609 0.4571 2.8422 0.01
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## instrument_for_shock 0.1274 0.0051 0 0.0055 0.1184 0.1399 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 167
##
## $N_cl
## [1] 39
##
## $df
## [1] 153
##
## $nvalues
## leave_share import_shock instrument_for_shock
## [1,] 167 148 148
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Colantone and Stanig (2018b)
| Unit of analysis |
region*year |
| Treatment |
regional import shock from China |
| Instrument |
Chinese imports to the United States |
| Outcome |
Economic nationalism |
| Model |
Table1(1) |
df <-readRDS("ajps_Colantone_etal_2018.rds")
D <-"import_shock"
Y <- "median_nationalism"
Z <- "instrument_for_shock"
controls <- NULL
cl <- "nuts2_year"
FE <- "fix_effect"
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.6442 0.2934 2.1955 0.0691 1.2193 0.0281
## Boot.c 0.6442 0.3693 1.7442 0.2091 1.6048 0.0000
## Boot.t 0.6442 0.2934 2.1955 0.0242 1.2642 0.0460
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 1.3096 0.4682 2.7970 0.3919 2.2273 0.0052
## Boot.c 1.3096 0.5518 2.3735 0.4720 2.6082 0.0000
## Boot.t 1.3096 0.4682 2.7970 0.4554 2.1638 0.0050
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 10.9563 1.0000 7780.0000 0.0009
##
## $AR$ci.print
## [1] "[0.5261, 2.6423]"
##
## $AR$ci
## [1] 0.5261 2.6423
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 1810.3678 42.8350 19.1709 11.4734 19.1709
##
## $rho
## [1] 0.4358
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 19.1709 2.6386 1.3096 0.4682 2.7970 0.0741 2.5450 0.0377
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## instrument_for_shock 0.0514 0.0156 0.001 0.0194 0.0209 0.0992 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## instrument_for_shock 0.0392 0.009 0 0.0116 0.0261 0.0707 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 7782
##
## $N_cl
## [1] 739
##
## $df
## [1] 7724
##
## $nvalues
## median_nationalism import_shock instrument_for_shock
## [1,] 167 739 739
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Coppock and Green (2016)
| Unit of analysis |
individual |
| Treatment |
voting in November 2007 municipal elections |
| Instrument |
mailing showing 2005 Vote |
| Outcome |
voting in the 2008 presidential primary |
| Model |
Table2(2) |
df<-readRDS("ajps_Coppock_etal_2016.rds")
D <-"og2007"
Y <- "JAN2008"
Z <- "treat2"
controls <- NULL
cl <- "hh"
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.3126 0.0014 229.6550 0.3099 0.3152 0
## Boot.c 0.3126 0.0013 233.4473 0.3101 0.3154 0
## Boot.t 0.3126 0.0014 229.6550 0.3107 0.3144 0
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.3728 0.0909 4.1013 0.1946 0.5509 0
## Boot.c 0.3728 0.0902 4.1344 0.1959 0.5475 0
## Boot.t 0.3728 0.0909 4.1013 0.2501 0.4955 0
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 15.4540 1.0000 773554.0000 0.0001
##
## $AR$ci.print
## [1] "[0.1942, 0.5567]"
##
## $AR$ci
## [1] 0.1942 0.5567
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 165.8659 151.8337 113.3680 111.7635 113.3680
##
## $rho
## [1] 0.0146
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 113.3680 1.9600 0.3728 0.0909 4.1013 0.1946 0.5509 0.0000
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## treat2 0.0187 0.0048 1e-04 0.0048 0.0097 0.0285 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## treat2 0.0502 0.0047 0 0.0047 0.041 0.0599 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 773556
##
## $N_cl
## [1] 562460
##
## $df
## [1] 773554
##
## $nvalues
## JAN2008 og2007 treat2
## [1,] 2 2 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Croke et al. (2016)
| Unit of analysis |
individual |
| Treatment |
education attainment |
| Instrument |
access to the secondary education |
| Outcome |
political participation |
| Model |
Table2(b1) |
df <-readRDS("apsr_Croke_etal_2016.rds")
D <- "edu"
Y <- "part_scale"
Z <- "treatment"
controls <-NULL
cl<- "district"
FE<- "year_survey"
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.0204 0.0078 -2.6133 -0.0357 -0.0051 0.009
## Boot.c -0.0204 0.0077 -2.6600 -0.0312 -0.0018 0.030
## Boot.t -0.0204 0.0078 -2.6133 -0.0375 -0.0033 0.025
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.098 0.0268 -3.6620 -0.1505 -0.0456 3e-04
## Boot.c -0.098 0.0271 -3.6173 -0.1530 -0.0436 0e+00
## Boot.t -0.098 0.0268 -3.6620 -0.1394 -0.0567 0e+00
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 16.1473 1.0000 1840.0000 0.0001
##
## $AR$ci.print
## [1] "[-0.1574, -0.0491]"
##
## $AR$ci
## [1] -0.1574 -0.0491
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 79.7552 78.2588 71.1356 70.1481 71.1356
##
## $rho
## [1] 0.2041
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 71.1356 2.0466 -0.0980 0.0268 -3.6620 -0.1528 -0.0432 0.0005
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## treatment -0.0657 0.0164 1e-04 0.0168 -0.0964 -0.0309 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## treatment 0.6708 0.0795 0 0.0801 0.5307 0.8505 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 1842
##
## $N_cl
## [1] 61
##
## $df
## [1] 1835
##
## $nvalues
## part_scale edu treatment
## [1,] 7 7 5
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

De La O (2013)
| Unit of analysis |
village |
| Treatment |
early coverage of Conditional Cash Transfer |
| Instrument |
random assignment to early coverage |
| Outcome |
incumbent party’s vote share |
| Model |
Table3(b1) |
df <- readRDS("ajps_De_La_O_2013.rds")
D <-"early_progresa_p"
Y <- "t2000"
Z <- "treatment"
controls <- c("avgpoverty","pobtot1994", "votos_totales1994",
"pri1994", "pan1994", "prd1994")
cl <- NULL
FE <- "villages"
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0222 0.0466 0.4771 -0.0691 0.1136 0.6333
## Boot.c 0.0222 0.0476 0.4675 -0.0734 0.1121 0.7780
## Boot.t 0.0222 0.0466 0.4771 -0.0759 0.1204 0.6490
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.1563 0.0892 1.7521 -0.0185 0.3312 0.0798
## Boot.c 0.1563 0.0883 1.7696 -0.0076 0.3268 0.0720
## Boot.t 0.1563 0.0892 1.7521 -0.0243 0.3369 0.0870
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 3.3846 1.0000 415.0000 0.0665
##
## $AR$ci.print
## [1] "[-0.0105, 0.3365]"
##
## $AR$ci
## [1] -0.0105 0.3365
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 177.1916 153.2854 NA 149.8987 153.2854
##
## $rho
## [1] 0.556
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 153.2854 1.9600 0.1563 0.0892 1.7521 -0.0185 0.3312 0.0798
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## treatment 0.0532 0.0296 0.0723 0.029 -0.0026 0.1074 0.072
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## treatment 0.3401 0.0275 0 0.0278 0.2879 0.3919 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 417
##
## $N_cl
## NULL
##
## $df
## [1] 396
##
## $nvalues
## t2000 early_progresa_p treatment
## [1,] 407 251 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Dietrich and Wright (2015)
| Unit of analysis |
transition |
| Treatment |
economic aid |
| Instrument |
constructed Z |
| Outcome |
transitions to multipartyism |
| Model |
Table1(2) |
df <- readRDS("jop_Dietrich_2015.rds")
D <- "econaid"
Y <- "mp"
Z <- c("Iinfl3","econaid_lgdp_g", "econaid_lpop_g",
"econaid_cwar_g", "econaid_dnmp_g",
"econaid_dnmp2_g", "econaid_dnmp3_g")
controls <- c('lgdp', 'lpop', 'cwar', 'dmp',
'dmp2', 'dmp3', "dnmp", "dnmp2", "dnmp3")
cl<- "cowcode"
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0576 0.0233 2.4734 0.0119 0.1032 0.0134
## Boot.c 0.0576 0.0289 1.9903 -0.0145 0.1040 0.1000
## Boot.t 0.0576 0.0233 2.4734 0.0215 0.0937 0.0010
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.1075 0.0401 2.6795 0.0289 0.1861 0.0074
## Boot.c 0.1075 0.0489 2.1991 0.0002 0.2026 0.0500
## Boot.t 0.1075 0.0401 2.6795 0.0421 0.1729 0.0040
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 3.5039 7.0000 362.0000 0.0012
##
## $AR$ci.print
## [1] "[0.0353, 0.2106]"
##
## $AR$ci
## [1] 0.0353 0.2106
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 28.9900 47.6878 22.5931 2.1946 3.7931
##
## $rho
## [1] 0.6026
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## Iinfl3 0.0382 0.0180 0.0341 0.0234 -0.0184 0.0743 0.180
## econaid_lgdp_g 0.0459 0.0246 0.0624 0.0495 0.0019 0.1902 0.046
## econaid_lpop_g 0.0049 0.0218 0.8229 0.0341 -0.0428 0.0943 0.748
## econaid_cwar_g -0.0084 0.0635 0.8946 0.0988 -0.2464 0.1733 0.860
## econaid_dnmp_g -0.0227 0.0268 0.3965 0.0320 -0.0823 0.0519 0.580
## econaid_dnmp2_g 0.0010 0.0011 0.3704 0.0014 -0.0024 0.0035 0.632
## econaid_dnmp3_g 0.0000 0.0000 0.4243 0.0000 0.0000 0.0000 0.758
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## Iinfl3 0.1561 0.0506 0.0020 0.0610 0.0027 0.2369 0.040
## econaid_lgdp_g 0.1664 0.1524 0.2749 0.2730 -0.4789 0.6725 0.542
## econaid_lpop_g 0.1839 0.0976 0.0596 0.1586 -0.2761 0.3706 0.324
## econaid_cwar_g -0.2848 0.3413 0.4041 0.5419 -1.7250 0.3956 0.524
## econaid_dnmp_g -0.0235 0.0899 0.7933 0.1001 -0.2580 0.1284 0.820
## econaid_dnmp2_g -0.0009 0.0045 0.8455 0.0052 -0.0087 0.0119 0.900
## econaid_dnmp3_g 0.0000 0.0001 0.5707 0.0001 -0.0001 0.0001 0.716
##
## $p_iv
## [1] 7
##
## $N
## [1] 370
##
## $N_cl
## [1] 44
##
## $df
## [1] 362
##
## $nvalues
## mp econaid Iinfl3 econaid_lgdp_g econaid_lpop_g econaid_cwar_g
## [1,] 2 370 370 370 370 370
## econaid_dnmp_g econaid_dnmp2_g econaid_dnmp3_g
## [1,] 370 370 370
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

DiGiuseppe and Shea (2022)
| Unit of analysis |
country*year |
| Treatment |
US support |
| Instrument |
echelon corridor |
| Outcome |
property rights |
| Model |
Table1(5) |
df <-readRDS("jop_digiuseppe_2022.rds")
D <- "wi_usa_median"
Y<-"Fwi_v2stfisccap2"
Z <- "Echelon2"
controls <-c("wi_v2xcl_prpty","wi_compete", "wi_lnpop_wdi",
"wi_lngdppc", "wi_polity2", "wi_polity2_2", "wi_ny_gdp_totl_rt_zs",
"wi_cwyrs", "wi_c2", "wi_c3", "coldwar")
cl<- NULL
FE<- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0443 0.0156 2.8331 0.0136 0.0749 0.0046
## Boot.c 0.0443 0.0158 2.7929 0.0126 0.0763 0.0120
## Boot.t 0.0443 0.0156 2.8331 0.0115 0.0770 0.0070
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.8158 0.3217 2.5360 0.1853 1.4463 0.0112
## Boot.c 0.8158 0.5071 1.6088 0.2640 2.0817 0.0000
## Boot.t 0.8158 0.3217 2.5360 0.2023 1.4294 0.0150
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 8.5251 1.0000 2366.0000 0.0035
##
## $AR$ci.print
## [1] "[0.2813, 1.8993]"
##
## $AR$ci
## [1] 0.2813 1.8993
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 18.8218 12.1084 NA 11.8751 12.1084
##
## $rho
## [1] 0.089
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 12.1084 3.1262 0.8158 0.3217 2.5360 -0.1899 1.8215 0.1118
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## Echelon2 0.1792 0.0615 0.0036 0.064 0.0581 0.301 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## Echelon2 0.2196 0.0631 5e-04 0.0637 0.0889 0.341 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 2368
##
## $N_cl
## NULL
##
## $df
## [1] 2355
##
## $nvalues
## Fwi_v2stfisccap2 wi_usa_median Echelon2
## [1,] 314 2368 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Dower et al. (2018) (a)
| Unit of analysis |
district*year |
| Treatment |
frequency of unrest |
| Instrument |
religious polarization |
| Outcome |
peasant representation |
| Model |
Table3(1) |
df <- readRDS("apsr_Dower_etal_2018.rds")
D <-"afreq"
Y <-"peasantrepresentation_1864"
Z <-"religpolarf4_1870"
controls <- c("distance_moscow", "goodsoil", "lnurban", "lnpopn", "province_capital")
cl <- NULL
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -3.8696 1.8013 -2.1483 -7.4001 -0.3391 0.0317
## Boot.c -3.8696 1.8653 -2.0745 -7.7315 -0.4386 0.0200
## Boot.t -3.8696 1.8013 -2.1483 -7.5658 -0.1734 0.0380
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -32.7701 17.3518 -1.8886 -66.7796 1.2393 0.0589
## Boot.c -32.7701 20.7825 -1.5768 -86.2589 -4.2021 0.0300
## Boot.t -32.7701 17.3518 -1.8886 -67.8614 2.3212 0.0640
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 4.4669 1.0000 359.0000 0.0352
##
## $AR$ci.print
## [1] "[-84.5132, -2.3384]"
##
## $AR$ci
## [1] -84.5132 -2.3384
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 12.0237 14.0828 NA 13.6743 14.0828
##
## $rho
## [1] 0.1812
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 14.0828 2.9384 -32.7701 17.3518 -1.8886 -83.7561 18.2159 0.2078
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## religpolarf4_1870 -3.9279 1.8715 0.0358 1.8207 -7.3963 -0.4085 0.03
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## religpolarf4_1870 0.1199 0.0319 2e-04 0.0324 0.0587 0.1829 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 361
##
## $N_cl
## NULL
##
## $df
## [1] 354
##
## $nvalues
## peasantrepresentation_1864 afreq religpolarf4_1870
## [1,] 128 12 361
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Dower et al. (2018) (b)
| Unit of analysis |
district*year |
| Treatment |
frequency of unrest |
| Instrument |
religious polarization |
| Outcome |
peasant representation |
| Model |
Table1(2) |
df <- readRDS("apsr_Dower_etal_2018.rds")
D <-"afreq"
Y <-"peasantrepresentation_1864"
Z <-"serfperc1"
controls <- c("distance_moscow", "goodsoil", "lnurban", "lnpopn", "province_capital")
cl <- NULL
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -4.2492 1.8297 -2.3224 -7.8353 -0.6631 0.0202
## Boot.c -4.2492 1.9235 -2.2091 -8.2597 -0.5096 0.0120
## Boot.t -4.2492 1.8297 -2.3224 -8.1225 -0.3760 0.0260
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -42.4545 8.4195 -5.0424 -58.9567 -25.9522 0
## Boot.c -42.4545 8.7723 -4.8396 -63.6972 -28.0131 0
## Boot.t -42.4545 8.4195 -5.0424 -60.1590 -24.7499 0
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 52.2466 1.0000 363.0000 0.0000
##
## $AR$ci.print
## [1] "[-63.3532, -28.4724]"
##
## $AR$ci
## [1] -63.3532 -28.4724
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 47.6256 51.0176 NA 50.2890 51.0176
##
## $rho
## [1] 0.3427
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 51.0176 2.1457 -42.4545 8.4195 -5.0424 -60.5204 -24.3885 0.0000
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## serfperc1 -11.7823 1.6414 0 1.6095 -14.7577 -8.6302 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## serfperc1 0.2775 0.0389 0 0.0391 0.2001 0.3531 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 365
##
## $N_cl
## NULL
##
## $df
## [1] 358
##
## $nvalues
## peasantrepresentation_1864 afreq serfperc1
## [1,] 128 12 361
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Dube and Naidu (2015)
| Unit of analysis |
municipality*year |
| Treatment |
changes in US funding to Colombia |
| Instrument |
US funding in countries outside of Latin America |
| Outcome |
the number of paramilitary attacks |
| Model |
Table1(1) |
df<-readRDS("jop_Dube_etal_2015.rds")
D <- "bases6xlrmilnar_col"
Y <- "paratt"
Z <- "bases6xlrmilwnl"
controls <-"lnnewpop"
cl <- "municipality"
FE <- c("year","municipality")
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.1503 0.0601 2.5001 0.0325 0.2682 0.0124
## Boot.c 0.1503 0.0615 2.4446 0.0322 0.2753 0.0100
## Boot.t 0.1503 0.0601 2.5001 0.0428 0.2579 0.0220
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.3149 0.1212 2.5977 0.0773 0.5525 0.0094
## Boot.c 0.3149 0.1227 2.5671 0.0899 0.5793 0.0040
## Boot.t 0.3149 0.1212 2.5977 0.0831 0.5467 0.0200
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 6.7529 1.0000 16604.0000 0.0094
##
## $AR$ci.print
## [1] "[0.0774, 0.5526]"
##
## $AR$ci
## [1] 0.0774 0.5526
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 7003.8727 810.8395 185092.5288 194684.3939 185092.5288
##
## $rho
## [1] 0.556
##
## $tF
## F cF Coef SE t CI2.5%
## 185092.5288 1.9600 0.3149 0.1212 2.5977 0.0773
## CI97.5% p-value
## 0.5525 0.0094
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## bases6xlrmilwnl 1.1155 0.4293 0.0094 0.4343 0.3172 2.0529 0.004
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## bases6xlrmilwnl 3.5422 0.0082 0 0.008 3.5253 3.5565 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 16606
##
## $N_cl
## [1] 936
##
## $df
## [1] 935
##
## $nvalues
## paratt bases6xlrmilnar_col bases6xlrmilwnl
## [1,] 13 19 18
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Feigenbaum and Hall (2015)
| Unit of analysis |
congressional district*decade |
| Treatment |
localized trade shocks in congressional districts |
| Instrument |
Chinese exports to other economies*local exposure |
| Outcome |
trade score based on congressional voting |
| Model |
Table1(3) |
df<-readRDS("jop_Feigenbaum_etal_2015.rds")
D <-"x"
Y <- "tradescore"
Z <- "z"
controls <- c("dem_share")
cl <- "state_cluster"
FE <- "decade"
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.108 0.2965 -0.3643 -0.6891 0.4731 0.7157
## Boot.c -0.108 0.3088 -0.3497 -0.6916 0.5599 0.7820
## Boot.t -0.108 0.2965 -0.3643 -0.5457 0.3297 0.6380
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.6976 0.3786 -1.8424 -1.4397 0.0445 0.0654
## Boot.c -0.6976 0.3951 -1.7657 -1.4412 0.1299 0.1000
## Boot.t -0.6976 0.3786 -1.8424 -1.2665 -0.1287 0.0210
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 3.4825 1.0000 860.0000 0.0624
##
## $AR$ci.print
## [1] "[-1.4883, 0.0366]"
##
## $AR$ci
## [1] -1.4883 0.0366
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 1189.3393 204.4798 75.5233 72.4886 75.5233
##
## $rho
## [1] 0.7622
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 75.5233 2.0310 -0.6976 0.3786 -1.8424 -1.4666 0.0714 0.0754
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## z -0.5863 0.3145 0.0623 0.3387 -1.2709 0.1166 0.1
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## z 0.8405 0.0967 0 0.0987 0.6921 1.0599 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 862
##
## $N_cl
## [1] 94
##
## $df
## [1] 858
##
## $nvalues
## tradescore x z
## [1,] 709 698 697
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Flores-Macias and Kreps (2013)
| Unit of analysis |
country*year |
| Treatment |
trade volume |
| Instrument |
lagged energy production |
| Outcome |
foreign policy convergence |
| Model |
Table2(1) |
df<- readRDS("jop_Flores_etal_2013.rds")
D <- "log_tot_trade"
Y <- "log_HRVOTE"
Z <- "lag_log_energ_prod"
controls <- c("log_cinc", "us_aid100", "log_tot_ustrade",
"Joint_Dem_Dum", "pts_score", "dummy2004")
cl <- NULL
FE <- 'statea'
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0191 0.0044 4.3531 0.0105 0.0277 0
## Boot.c 0.0191 0.0044 4.3380 0.0107 0.0281 0
## Boot.t 0.0191 0.0044 4.3531 0.0104 0.0278 0
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0456 0.0135 3.3747 0.0191 0.0721 7e-04
## Boot.c 0.0456 0.0141 3.2463 0.0219 0.0779 0e+00
## Boot.t 0.0456 0.0135 3.3747 0.0197 0.0716 0e+00
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 14.1713 1.0000 590.0000 0.0002
##
## $AR$ci.print
## [1] "[0.0217, 0.0747]"
##
## $AR$ci
## [1] 0.0217 0.0747
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 66.1143 53.6345 NA 48.8259 53.6345
##
## $rho
## [1] 0.3295
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 53.6345 2.1276 0.0456 0.0135 3.3747 0.0169 0.0744 0.0019
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## lag_log_energ_prod 0.1086 0.0301 3e-04 0.0301 0.052 0.169 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## lag_log_energ_prod 2.3803 0.325 0 0.3406 1.7401 3.0738 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 592
##
## $N_cl
## NULL
##
## $df
## [1] 543
##
## $nvalues
## log_HRVOTE log_tot_trade lag_log_energ_prod
## [1,] 32 590 581
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Gehlbach and Keefer (2012)
| Unit of analysis |
nondemocratic episode |
| Treatment |
age of ruling party less leader years in office |
| Instrument |
whether the first ruler in a nondemocratic episode is a military
leader |
| Outcome |
private invest |
| Model |
Table1(4) |
df<- readRDS("jop_Gelbach_etal_2012.rds")
D <- "gov1_yrs"
Y <- "gfcf_priv_gdp"
Z <- "military_first_alt"
controls <- c("tenure", "stabs", "fuelex_gdp", "oresex_gdp",
"frac_ethn", "frac_relig", "frac_ling", "pop_yng_pct",
"pop_tot", "pop_ru_pct", "land_km", "gdppc_ppp_2005_us")
cl <- "ifs_code"
FE <-NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.1304 0.0351 3.7118 0.0615 0.1992 2e-04
## Boot.c 0.1304 0.0419 3.1138 0.0476 0.2173 6e-03
## Boot.t 0.1304 0.0351 3.7118 0.0693 0.1914 0e+00
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.3956 0.1798 2.2001 0.0432 0.7479 0.0278
## Boot.c 0.3956 0.4012 0.9860 0.1048 1.0923 0.0120
## Boot.t 0.3956 0.1798 2.2001 0.0985 0.6926 0.0220
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 6.3658 1.0000 97.0000 0.0133
##
## $AR$ci.print
## [1] "[0.0955, 0.9771]"
##
## $AR$ci
## [1] 0.0955 0.9771
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 6.3713 9.2042 9.5714 8.5689 9.5714
##
## $rho
## [1] 0.2641
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 9.5714 3.5187 0.3956 0.1798 2.2001 -0.2371 1.0282 0.2204
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## military_first_alt -3.3385 1.4135 0.0182 1.4089 -6.2551 -0.6843 0.012
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## military_first_alt -8.4401 2.7281 0.002 2.8833 -14.2254 -2.8704 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 99
##
## $N_cl
## [1] 86
##
## $df
## [1] 85
##
## $nvalues
## gfcf_priv_gdp gov1_yrs military_first_alt
## [1,] 99 63 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Gerber et al. (2010)
| Unit of analysis |
individual |
| Treatment |
aligning party identification with latent partisanship |
| Instrument |
being sent mail |
| Outcome |
voting and party alignment scale |
| Model |
Table4(1) |
df <- readRDS("apsr_Gerber_etal_2010.rds")
D <-"pt_id_with_lean"
Y <- "pt_voteevalalignindex"
Z <- "treat"
controls <- c("pre_lean_dem", "age", "age2" ,"regyear" ,
"regyearmissing", "twonames", "combined_female",
"voted2006", "voted2004", "voted2002", "voted2000",
"voted1998", "voted1996", "interest", "pre_aligned_vh",
"pre_direct_unemp", "pre_direct_econ","pre_direct_bushap",
"pre_direct_congapp")
cl <- NULL
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.5658 0.1709 3.3105 0.2308 0.9008 9e-04
## Boot.c 0.5658 0.1583 3.5742 0.2527 0.8723 0e+00
## Boot.t 0.5658 0.1709 3.3105 0.2576 0.8740 0e+00
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 3.8231 2.6392 1.4486 -1.3497 8.996 0.1475
## Boot.c 3.8231 20.5956 0.1856 -11.3044 22.297 0.1220
## Boot.t 3.8231 2.6392 1.4486 -1.8827 9.529 0.1460
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 3.8593 1.0000 409.0000 0.0501
##
## $AR$ci.print
## [1] "(-Inf, -36.2434] Union [-0.0031, Inf)"
##
## $AR$ci
## [1] -Inf -36.2434 -0.0031 Inf
##
## $AR$bounded
## [1] FALSE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 2.9926 3.1563 NA 3.1330 3.1563
##
## $rho
## [1] 0.0873
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 3.1563 Inf 3.8231 2.6392 1.4486 -Inf Inf 1.0000
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## treat 0.2742 0.1429 0.0551 0.1411 -0.0079 0.5199 0.058
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## treat 0.0717 0.0404 0.0756 0.0405 -0.0052 0.1517 0.076
##
## $p_iv
## [1] 1
##
## $N
## [1] 411
##
## $N_cl
## NULL
##
## $df
## [1] 390
##
## $nvalues
## pt_voteevalalignindex pt_id_with_lean treat
## [1,] 10 2 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Goldstein and You (2017)
| Unit of analysis |
city |
| Treatment |
lobbying spending |
| Instrument |
direct flight to Washington, DC |
| Outcome |
total earmarks or grants awarded |
| Model |
Table4(4) |
df <- readRDS("ajps_Goldstein_etal_2017.rds")
df <- as.data.frame(df)
Y <-"ln_recovery"
D <-"ln_citylob"
Z <- c("direct_flight_dc", "diverge2_r")
controls <- c("pop_r", "land_r", "water_r", "senior_r", "student_r", "ethnic_r",
"mincome_r", "unemp_r", "poverty_r", "gini_r", "city_propertytaxshare_r",
"city_intgovrevenueshare_r", "city_airexp_r", "houdem_r", "ln_countylob")
cl <- "state2"
FE <- "state2"
weights <- NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl, weights=weights, cores = cores, parallel = TRUE))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0648 0.0208 3.1171 0.0240 0.1055 0.0018
## Boot.c 0.0648 0.0231 2.8075 0.0275 0.1151 0.0000
## Boot.t 0.0648 0.0208 3.1171 0.0258 0.1037 0.0030
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.476 0.1361 3.4987 0.2094 0.7427 5e-04
## Boot.c 0.476 0.1479 3.2197 0.1981 0.7675 4e-03
## Boot.t 0.476 0.1361 3.4987 0.2895 0.6626 0e+00
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 8.2957 2.0000 1259.0000 0.0003
##
## $AR$ci.print
## [1] "[0.1936, 0.9271]"
##
## $AR$ci
## [1] 0.1936 0.9271
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 16.6195 13.7688 15.7426 14.9859 12.2635
##
## $rho
## [1] 0.1645
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## direct_flight_dc 1.2403 0.5428 0.0223 0.6276 -0.2200 2.1876 0.100
## diverge2_r 0.3010 0.1688 0.0745 0.1820 -0.0527 0.6665 0.102
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## direct_flight_dc 2.6658 0.7247 2e-04 0.7638 1.0362 4.0874 0.000
## diverge2_r 0.6070 0.2164 5e-03 0.2218 0.2173 1.0796 0.004
##
## $p_iv
## [1] 2
##
## $N
## [1] 1262
##
## $N_cl
## [1] 50
##
## $df
## [1] 49
##
## $nvalues
## ln_recovery ln_citylob direct_flight_dc diverge2_r
## [1,] 1196 135 2 1262
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Grossman et al. (2017)
| Unit of analysis |
region * year |
| Treatment |
government fragmentation |
| Instrument |
the number of distinct landmasses; |
|
length of medium and small streams; |
|
over-time variation in the number of regional governments |
| Outcome |
public goods provision |
| Model |
Table1(8) |
df<-readRDS("jop_Grossman_2017.rds")
Y <- "ServicesCA"
D <- "ladminpc_l5"
Z <- c("lmeanMINUSi_adminpc_l6", "lmeanMINUSi_adminpc2_l6",
"herf", "herf2", "llength", "llength2")
controls <- c("lpop_l", "wdi_urban_l", "lgdppc_l", "conflict_l",
"dpi_state_l", "p_polity2_l",
"loilpc_l", "aid_pc_l","al_ethnic")
cl <- "ccodecow"
FE <- "year"
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0364 0.0978 0.3721 -0.1554 0.2282 0.7098
## Boot.c 0.0364 0.1220 0.2984 -0.1900 0.2999 0.7983
## Boot.t 0.0364 0.0978 0.3721 -0.1724 0.2453 0.6865
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.4164 0.1623 2.5650 0.0982 0.7345 0.0103
## Boot.c 0.4164 0.2133 1.9522 -0.1148 0.7025 0.1672
## Boot.t 0.4164 0.1623 2.5650 -0.0972 0.9299 0.1024
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 3.8390 6.0000 511.0000 0.0009
##
## $AR$ci.print
## [1] "[0.1171, 1.3091]"
##
## $AR$ci
## [1] 0.1171 1.3091
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 39.9978 40.9874 11.9593 1.1812 8.1552
##
## $rho
## [1] 0.581
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5%
## lmeanMINUSi_adminpc_l6 6.0801 7.3987 0.4112 11.7107 -17.8608 28.8762
## lmeanMINUSi_adminpc2_l6 -3.9097 2.3810 0.1006 3.4161 -10.9723 2.4899
## herf -0.0170 2.4059 0.9943 468.4438 -50.1569 1636.5803
## herf2 -0.0545 1.7185 0.9747 242.2611 -842.8700 25.9509
## llength 0.0669 0.0507 0.1867 0.8857 -1.0322 2.6240
## llength2 -0.0029 0.0037 0.4309 0.0331 -0.0961 0.0371
## p.value.b
## lmeanMINUSi_adminpc_l6 0.4807
## lmeanMINUSi_adminpc2_l6 0.2069
## herf 0.7335
## herf2 0.6604
## llength 0.3824
## llength2 0.4598
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5%
## lmeanMINUSi_adminpc_l6 27.1296 12.2417 0.0267 22.8744 -15.5855 71.2505
## lmeanMINUSi_adminpc2_l6 -13.3452 4.9245 0.0067 7.3342 -31.7142 -2.1410
## herf 3.5973 4.6318 0.4374 486.3839 -1846.1009 52.0580
## herf2 -2.4844 3.1500 0.4303 251.2558 -34.6254 949.6190
## llength 0.0536 0.0526 0.3084 0.8999 -1.1218 2.6020
## llength2 0.0002 0.0039 0.9671 0.0335 -0.0951 0.0453
## p.value.b
## lmeanMINUSi_adminpc_l6 0.1776
## lmeanMINUSi_adminpc2_l6 0.0188
## herf 0.9572
## herf2 0.9697
## llength 0.4869
## llength2 0.8255
##
## $p_iv
## [1] 6
##
## $N
## [1] 518
##
## $N_cl
## [1] 31
##
## $df
## [1] 476
##
## $nvalues
## ServicesCA ladminpc_l5 lmeanMINUSi_adminpc_l6 lmeanMINUSi_adminpc2_l6 herf
## [1,] 518 518 518 518 15
## herf2 llength llength2
## [1,] 15 29 29
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Hager et al. (2019)
| Unit of analysis |
individual |
| Treatment |
ethnic riots (destruction) |
| Instrument |
distance to the nearest location where armored military vehicles
were stolen |
| Outcome |
prosocial behavior |
| Model |
Figure6 |
df <- readRDS("apsr_Hager_etal_2019.rds")
D <-"affected"
Y <- "pd_in_scale"
Z <- "apc_min_distance"
controls <- NULL
cl <- NULL
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.2335 0.0675 -3.4582 -0.3658 -0.1011 5e-04
## Boot.c -0.2335 0.0680 -3.4348 -0.3626 -0.0908 2e-03
## Boot.t -0.2335 0.0675 -3.4582 -0.3701 -0.0969 1e-03
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.52 0.1416 -3.6733 -0.7975 -0.2425 2e-04
## Boot.c -0.52 0.1463 -3.5548 -0.7991 -0.2220 2e-03
## Boot.t -0.52 0.1416 -3.6733 -0.8034 -0.2366 2e-03
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 13.7909 1.0000 876.0000 0.0002
##
## $AR$ci.print
## [1] "[-0.8019, -0.2445]"
##
## $AR$ci
## [1] -0.8019 -0.2445
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 271.8565 637.5699 NA 685.1390 637.5699
##
## $rho
## [1] 0.4867
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 637.5699 1.9600 -0.5200 0.1416 -3.6733 -0.7975 -0.2425 0.0002
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## apc_min_distance 0.1011 0.0272 2e-04 0.028 0.0425 0.1522 0.002
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## apc_min_distance -0.1943 0.0077 0 0.0074 -0.2069 -0.1779 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 878
##
## $N_cl
## NULL
##
## $df
## [1] 876
##
## $nvalues
## pd_in_scale affected apc_min_distance
## [1,] 2 2 193
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Hager and Krakowski (2022)
| Unit of analysis |
individual |
| Treatment |
number of secret police officers |
| Instrument |
number of corrupted Catholic priests |
| Outcome |
resistance |
| Model |
Table3(2) |
df <- readRDS("apsr_Hager_Krakowski_2022.rds")
D <-"commanders"
Y <- "y"
Z <- "priests_continuous"
controls <- NULL
cl <- NULL
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.1494 0.0751 1.9891 0.0022 0.2965 0.0467
## Boot.c 0.1494 0.3286 0.4546 0.0593 1.4489 0.0000
## Boot.t 0.1494 0.0751 1.9891 -5.3888 5.6875 0.5090
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.1765 0.0952 1.8537 -0.0101 0.3632 0.0638
## Boot.c 0.1765 7.6608 0.0230 0.0857 7.3004 0.0000
## Boot.t 0.1765 0.0952 1.8537 -0.2698 0.6228 0.3630
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 8.7245 1.0000 295.0000 0.0034
##
## $AR$ci.print
## [1] "(-Inf, -1.1605] Union [0.0640, Inf)"
##
## $AR$ci
## [1] -Inf -1.1605 0.0640 Inf
##
## $AR$bounded
## [1] FALSE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 109.0543 3.1403 NA 3.7119 3.1403
##
## $rho
## [1] 0.5195
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 3.1403 Inf 0.1765 0.0952 1.8537 -Inf Inf 1.0000
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## priests_continuous 0.4736 0.1603 0.0031 0.1788 0.1879 0.8884 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## priests_continuous 2.6827 1.5139 0.0764 1.3924 0.0286 4.9724 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 297
##
## $N_cl
## NULL
##
## $df
## [1] 295
##
## $nvalues
## y commanders priests_continuous
## [1,] 14 12 7
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Hager and Hilbig (2019) a
| Unit of analysis |
city |
| Treatment |
equiTable inheritance customs |
| Instrument |
mean elevation |
| Outcome |
female representation |
| Model |
Table3(1) |
df<-readRDS("ajps_Hager_etal_2019.rds")
D <-"fair_dic"
Y <- "gem_women_share"
Z <- "elev_mean"
controls <- c("lon", "lat", "childlabor_mean_1898",
"support_expenses_total_capita","gem_council",
"gem_pop_density","pop_tot")
cl<- NULL
FE<- c("state2","law_cat2")
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0072 0.0042 1.7010 -0.0011 0.0155 0.0889
## Boot.c 0.0072 0.0043 1.6681 -0.0012 0.0157 0.0960
## Boot.t 0.0072 0.0042 1.7010 -0.0013 0.0156 0.1050
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.1363 0.0262 5.1939 0.0849 0.1878 0
## Boot.c 0.1363 0.0266 5.1246 0.0916 0.1934 0
## Boot.t 0.1363 0.0262 5.1939 0.0872 0.1855 0
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 38.9099 1.0000 3848.0000 0.0000
##
## $AR$ci.print
## [1] "[0.0898, 0.1959]"
##
## $AR$ci
## [1] 0.0898 0.1959
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 122.1930 79.2985 NA 77.0438 79.2985
##
## $rho
## [1] 0.1758
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 79.2985 2.0200 0.1363 0.0262 5.1939 0.0833 0.1894 0.0000
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## elev_mean -1e-04 0 0 0 -2e-04 -1e-04 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## elev_mean -9e-04 1e-04 0 1e-04 -0.0012 -7e-04 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 3850
##
## $N_cl
## NULL
##
## $df
## [1] 3831
##
## $nvalues
## gem_women_share fair_dic elev_mean
## [1,] 230 2 3850
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Hager and Hilbig (2019) b
| Unit of analysis |
city |
| Treatment |
equiTable inheritance customs |
| Instrument |
distance to rivers |
| Outcome |
female representation |
| Model |
Table3(2) |
df<-readRDS("ajps_Hager_etal_2019.rds")
D <-"fair_dic"
Y <- "gem_women_share"
Z <-"river_dist_min"
controls <- c("lon", "lat", "childlabor_mean_1898",
"support_expenses_total_capita","gem_council",
"gem_pop_density","pop_tot")
cl<- NULL
FE<- c("law_cat2")
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.015 0.0073 2.0379 6e-04 0.0293 0.0416
## Boot.c 0.015 0.0075 1.9917 2e-04 0.0298 0.0500
## Boot.t 0.015 0.0073 2.0379 1e-04 0.0298 0.0470
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0513 0.0239 2.1441 0.0044 0.0982 0.032
## Boot.c 0.0513 0.0242 2.1212 0.0051 0.1012 0.030
## Boot.t 0.0513 0.0239 2.1441 0.0043 0.0983 0.030
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 4.8070 1.0000 864.0000 0.0286
##
## $AR$ci.print
## [1] "[0.0054, 0.1008]"
##
## $AR$ci
## [1] 0.0054 0.1008
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 99.1676 100.3609 NA 103.0402 100.3609
##
## $rho
## [1] 0.3222
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 100.3609 1.9700 0.0513 0.0239 2.1441 0.0042 0.0985 0.0329
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## river_dist_min -5e-04 2e-04 0.0291 2e-04 -0.001 -1e-04 0.03
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## river_dist_min -0.0105 0.001 0 0.001 -0.0125 -0.0084 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 866
##
## $N_cl
## NULL
##
## $df
## [1] 856
##
## $nvalues
## gem_women_share fair_dic river_dist_min
## [1,] 110 2 866
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Healy and Malhotra (2013)
| Unit of analysis |
individual |
| Treatment |
the share of a respondent’s siblings who are female |
| Instrument |
whether the younger sibling is a sister |
| Outcome |
gender-role attitude in 1973 |
| Model |
Table1(1) |
df <- readRDS("jop_Healy_etal_2013.rds")
D <-"share_sis"
Y <- "womens_rights73"
Z <- "closest"
controls <- "num_sib"
cl <- "PSU"
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0451 0.0516 0.8743 -0.0561 0.1463 0.3819
## Boot.c 0.0451 0.0510 0.8847 -0.0494 0.1435 0.3620
## Boot.t 0.0451 0.0516 0.8743 -0.0291 0.1194 0.2280
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.1706 0.0844 2.0203 0.0051 0.3360 0.0434
## Boot.c 0.1706 0.0842 2.0269 0.0180 0.3505 0.0280
## Boot.t 0.1706 0.0844 2.0203 0.0516 0.2895 0.0010
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 4.1446 1.0000 277.0000 0.0427
##
## $AR$ci.print
## [1] "[0.0056, 0.3401]"
##
## $AR$ci
## [1] 0.0056 0.3401
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 255.3329 252.1198 244.4704 229.7169 244.4704
##
## $rho
## [1] 0.6932
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 244.4704 1.9600 0.1706 0.0844 2.0203 0.0051 0.3360 0.0434
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## closest 0.0832 0.0409 0.0421 0.0399 0.0089 0.1629 0.028
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## closest 0.4876 0.0312 0 0.0322 0.4246 0.547 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 279
##
## $N_cl
## [1] 89
##
## $df
## [1] 276
##
## $nvalues
## womens_rights73 share_sis closest
## [1,] 7 17 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Hong et al. (2022)
| Unit of analysis |
township |
| Treatment |
NVM subsidy per voter |
| Instrument |
Terrain elevation slope |
| Outcome |
Park’s vote share in 2012 |
| Model |
Table3(3) |
df <-readRDS("ajps_Hong_etal_2022.rds")
df<-as.data.frame(df)
D<-"total_Lamount_1974_1978_perelect"
Y <- "E18ConsSh"
Z <- c("te_median1", "ts_median1")
controls <- c("area_1970","demo_female_share_1966","demo_age_15plus_1966",
"demo_illiterate_1966","demo_pop_ch_1970_1966","E17ConsSh","eup")
cl <- "CTY_cd"
FE <- "CTY_cd"
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0151 0.0074 2.0600 0.0007 0.0296 0.0394
## Boot.c 0.0151 0.0074 2.0526 0.0010 0.0291 0.0320
## Boot.t 0.0151 0.0074 2.0600 0.0045 0.0258 0.0080
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0602 0.0262 2.2980 0.0089 0.1116 0.0216
## Boot.c 0.0602 0.0281 2.1431 0.0059 0.1152 0.0260
## Boot.t 0.0602 0.0262 2.2980 0.0205 0.0999 0.0030
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 3.2888 2.0000 1297.0000 0.0376
##
## $AR$ci.print
## [1] "[0.0032, 0.1251]"
##
## $AR$ci
## [1] 0.0032 0.1251
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 34.7064 29.0832 28.2296 26.4745 24.6661
##
## $rho
## [1] 0.2376
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## te_median1 -0.0036 0.0233 0.8774 0.0255 -0.0534 0.0458 0.836
## ts_median1 0.0020 0.0010 0.0509 0.0011 0.0000 0.0042 0.052
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## te_median1 0.3276 0.1352 0.0154 0.1373 0.0667 0.5977 0.018
## ts_median1 0.0171 0.0061 0.0050 0.0060 0.0055 0.0287 0.004
##
## $p_iv
## [1] 2
##
## $N
## [1] 1300
##
## $N_cl
## [1] 131
##
## $df
## [1] 130
##
## $nvalues
## E18ConsSh total_Lamount_1974_1978_perelect te_median1 ts_median1
## [1,] 1292 1285 1300 1232
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Johns and Pelc (2016)
| Unit of analysis |
WTO dispute |
| Treatment |
the number third parties |
| Instrument |
trade stake of the rest of the world |
| Outcome |
becoming a third party |
| Model |
Table2(2) |
df<-readRDS("jop_Johns_etal_2016.rds")
D='third_num_excl'
Y='thirdparty'
Z='ln_ROW_before_disp'
controls=c("ln_gdpk_partner", "ln_history_third", "ln_history_C",
"Multilateral", "trade_before_dispute", "ARTICLEXXII")
cl <- NULL
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.019 0.0017 11.3469 0.0157 0.0223 0
## Boot.c 0.019 0.0017 11.4641 0.0158 0.0223 0
## Boot.t 0.019 0.0017 11.3469 0.0158 0.0223 0
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.0809 0.0297 -2.7247 -0.1392 -0.0227 0.0064
## Boot.c -0.0809 0.0363 -2.2283 -0.1766 -0.0396 0.0000
## Boot.t -0.0809 0.0297 -2.7247 -0.1400 -0.0219 0.0160
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 19.7186 1.0000 2460.0000 0.0000
##
## $AR$ci.print
## [1] "[-0.1793, -0.0373]"
##
## $AR$ci
## [1] -0.1793 -0.0373
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 16.9224 18.1200 NA 18.6170 18.1200
##
## $rho
## [1] 0.0828
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 18.1200 2.6873 -0.0809 0.0297 -2.7247 -0.1608 -0.0011 0.0469
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## ln_ROW_before_disp -0.0137 0.0031 0 0.003 -0.0199 -0.0081 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## ln_ROW_before_disp 0.1692 0.0397 0 0.0392 0.0914 0.2456 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 2462
##
## $N_cl
## NULL
##
## $df
## [1] 2454
##
## $nvalues
## thirdparty third_num_excl ln_ROW_before_disp
## [1,] 2 17 2281
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Kapoor and Magesan (2018)
| Unit of analysis |
constituency*election |
| Treatment |
number of independent candidates |
| Instrument |
changes in entry costs |
| Outcome |
voter turnout |
| Model |
Table4(b5) |
df<-readRDS("apsr_Kapoor_etal_2018.rds")
D <-'CitCand'
Y <- "Turnout"
Z <- "UnScheduledDepChange"
controls <- c("CitCandBaseTrend", "CitCandBaseTrendSq", "CitCandBaseTrendCu",
"CitCandBaseTrendQu", "TurnoutBaseTrend", "TurnoutBaseTrendSq",
"TurnoutBaseTrendCu", "TurnoutBaseTrendQu", "LnElectors",
"LagWinDist", "LagWinDistSq", "LagWinDistCu",
"LagWinDistQu", "LagTightElection")
cl<- "constituency"
FE <- c("year","constituency")
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.0256 0.0110 -2.3216 -0.0472 -0.0040 0.0203
## Boot.c -0.0256 0.0206 -1.2391 -0.0935 -0.0132 0.0000
## Boot.t -0.0256 0.0110 -2.3216 -0.0537 0.0026 0.0740
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.4864 0.2256 2.1562 0.0443 0.9285 0.0311
## Boot.c 0.4864 0.2624 1.8539 0.1227 1.1531 0.0040
## Boot.t 0.4864 0.2256 2.1562 0.1658 0.8069 0.0140
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 7.7339 1.0000 4295.0000 0.0054
##
## $AR$ci.print
## [1] "[0.1276, 1.1655]"
##
## $AR$ci
## [1] 0.1276 1.1655
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 11.2301 23.7168 19.1635 19.0438 19.1635
##
## $rho
## [1] 0.0548
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 19.1635 2.6390 0.4864 0.2256 2.1562 -0.1089 1.0817 0.1093
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## UnScheduledDepChange -1.277 0.46 0.0055 0.461 -2.1613 -0.3436 0.004
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## UnScheduledDepChange -2.6256 0.5998 0 0.6017 -3.802 -1.5078 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 4297
##
## $N_cl
## [1] 543
##
## $df
## [1] 542
##
## $nvalues
## Turnout CitCand UnScheduledDepChange
## [1,] 4293 68 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Kim (2019)
| Unit of analysis |
municipality*year |
| Treatment |
Democratic institutions |
| Instrument |
population threshold |
| Outcome |
women political engagement |
| Model |
Table2(1) |
df<- readRDS("ajps_Kim_2019.rds")
D <-"direct"
Y <- "wm_turnout"
Z <- "new"
controls <- c("left", "wm_voters", "enep")
cl <- NULL
FE <- "year"
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.017 0.4897 0.0346 -0.9429 0.9768 0.9724
## Boot.c 0.017 0.4830 0.0351 -0.8950 0.9663 0.9720
## Boot.t 0.017 0.4897 0.0346 -0.9352 0.9691 0.9790
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 3.9287 1.0855 3.6192 1.8011 6.0563 3e-04
## Boot.c 3.9287 1.1168 3.5177 2.0905 6.2934 0e+00
## Boot.t 3.9287 1.0855 3.6192 1.8591 5.9982 0e+00
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 14.3152 1.0000 2747.0000 0.0002
##
## $AR$ci.print
## [1] "[1.8540, 6.1145]"
##
## $AR$ci
## [1] 1.8540 6.1145
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 1007.3382 914.6461 NA 889.9963 914.6461
##
## $rho
## [1] 0.5186
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 914.6461 1.9600 3.9287 1.0855 3.6192 1.8011 6.0563 0.0003
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## new 1.949 0.516 2e-04 0.5223 1.0388 3.002 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## new 0.4961 0.0164 0 0.0166 0.459 0.5249 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 2749
##
## $N_cl
## NULL
##
## $df
## [1] 2738
##
## $nvalues
## wm_turnout direct new
## [1,] 2606 2 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Kocher et al. (2011)
| Unit of analysis |
hamlet (smallest population unit) |
| Treatment |
aerial bombing |
| Instrument |
past insurgent control |
| Outcome |
changes in local control |
| Model |
Table5(5B) |
df<-readRDS("ajps_Kocher_etal_2011.rds")
D <-"bombed_969"
Y<- "mod2a_1adec"
Z <- c("mod2a_1ajul", "mod2a_1aaug")
controls <- c("mod2a_1asep", "score", "ln_dist", "std", "lnhpop")
cl<- NULL
FE <-NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0249 0.0042 5.8926 0.0166 0.0332 0
## Boot.c 0.0249 0.0044 5.7165 0.0179 0.0347 0
## Boot.t 0.0249 0.0042 5.8926 0.0165 0.0333 0
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 1.464 0.1377 10.6345 1.1942 1.7339 0
## Boot.c 1.464 0.1420 10.3133 1.2190 1.7752 0
## Boot.t 1.464 0.1377 10.6345 1.1918 1.7363 0
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 681.5407 2.0000 9704.0000 0.0000
##
## $AR$ci.print
## [1] "[1.1899, 1.8937]"
##
## $AR$ci
## [1] 1.1899 1.8937
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 44.1703 59.8861 NA 59.3207 61.4797
##
## $rho
## [1] 0.095
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## mod2a_1ajul 0.2562 0.0123 0 0.0123 0.2304 0.2793 0
## mod2a_1aaug 0.1830 0.0134 0 0.0138 0.1565 0.2106 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## mod2a_1ajul 0.1681 0.0284 0 0.0282 0.1157 0.2233 0
## mod2a_1aaug 0.1328 0.0311 0 0.0312 0.0731 0.1935 0
##
## $p_iv
## [1] 2
##
## $N
## [1] 9707
##
## $N_cl
## NULL
##
## $df
## [1] 9700
##
## $nvalues
## mod2a_1adec bombed_969 mod2a_1ajul mod2a_1aaug
## [1,] 5 35 5 5
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Kriner and Schickler (2014)
| Unit of analysis |
month |
| Treatment |
committee investigations |
| Instrument |
number of days that Congress was in session in a given month |
| Outcome |
presidential approval |
| Model |
Table1(1) |
df<-readRDS("jop_Kriner_etal_2014.rds")
D <- "misconductdays"
Y <- "approval"
Z <- "alldaysinsession"
controls <- c("icst1", "positive", "negative", "vcaslast6mos",
"iraqcaslast6mos", "honeymoon", "approvalt1", "ike","jfk",
"lbj","rmn","ford","carter","reagan","bush","clinton","wbush")
cl <- NULL
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.0314 0.0149 -2.1103 -0.0606 -0.0022 0.0348
## Boot.c -0.0314 0.0157 -2.0027 -0.0610 -0.0004 0.0480
## Boot.t -0.0314 0.0149 -2.1103 -0.0622 -0.0007 0.0450
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.1262 0.0449 -2.8096 -0.2142 -0.0382 0.005
## Boot.c -0.1262 0.0462 -2.7282 -0.2226 -0.0425 0.004
## Boot.t -0.1262 0.0449 -2.8096 -0.2129 -0.0394 0.005
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 8.9171 1.0000 634.0000 0.0029
##
## $AR$ci.print
## [1] "[-0.2196, -0.0425]"
##
## $AR$ci
## [1] -0.2196 -0.0425
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 105.5872 121.5394 NA 119.8180 121.5394
##
## $rho
## [1] 0.382
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 121.5394 1.9600 -0.1262 0.0449 -2.8096 -0.2142 -0.0382 0.0050
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## alldaysinsession -0.035 0.0119 0.0032 0.0121 -0.0597 -0.0117 0.004
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## alldaysinsession 0.2777 0.0252 0 0.0254 0.2304 0.3275 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 636
##
## $N_cl
## NULL
##
## $df
## [1] 618
##
## $nvalues
## approval misconductdays alldaysinsession
## [1,] 185 52 49
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Kuipers and Sahn (2022)
| Unit of analysis |
municipality* year |
| Treatment |
civil service reform |
| Instrument |
statewide assignment mandate |
| Outcome |
descriptive representation on an unrestricted sample |
| Model |
Table1(2) |
df <- readRDS("apsr_kuipers_2022.rds")
df<-df%>%filter(occ=='blue_collar' & name=='white_x_native_born')
D <-"treat_actual"
Y <- "govt"
Z <- "treat_assign"
controls <-"pop"
cl <- NULL
FE <- c("YEAR","city")
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.0319 0.0156 -2.0467 -0.0625 -0.0014 0.0407
## Boot.c -0.0319 0.0171 -1.8620 -0.0682 -0.0003 0.0460
## Boot.t -0.0319 0.0156 -2.0467 -0.0640 0.0001 0.0510
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.1689 0.1099 -1.5373 -0.3842 0.0464 0.1242
## Boot.c -0.1689 0.1246 -1.3551 -0.4509 0.0479 0.1020
## Boot.t -0.1689 0.1099 -1.5373 -0.3710 0.0332 0.1080
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 3.0769 1.0000 1684.0000 0.0796
##
## $AR$ci.print
## [1] "[-0.3904, 0.0206]"
##
## $AR$ci
## [1] -0.3904 0.0206
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 32.4157 27.5670 NA 25.5465 27.5670
##
## $rho
## [1] 0.153
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 27.5670 2.3999 -0.1689 0.1099 -1.5373 -0.4326 0.0948 0.2093
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## treat_assign -0.0254 0.0162 0.116 0.0176 -0.0634 0.0059 0.102
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## treat_assign 0.1504 0.0286 0 0.0298 0.0957 0.2125 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 1686
##
## $N_cl
## NULL
##
## $df
## [1] 1352
##
## $nvalues
## govt treat_actual treat_assign
## [1,] 658 2 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Laitin and Ramachandran (2016)
| Unit of analysis |
country |
| Treatment |
language choice |
| Instrument |
geographic distance from the origins of writing |
| Outcome |
human development index |
| Model |
Table10(10) |
df <-readRDS("apsr_Laitin_2016.rds")
D <-"avgdistance_delta50"
Y <- "zhdi_2010"
Z <- "DIST_BGNC"
controls <- c("cdf2003","ln_GDP_Indp", "edes1975",
"America","xconst")
cl<- NULL
FE<- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -1.3676 0.1884 -7.2594 -1.7369 -0.9984 0
## Boot.c -1.3676 0.1905 -7.1794 -1.7544 -1.0063 0
## Boot.t -1.3676 0.1884 -7.2594 -1.7459 -0.9894 0
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -1.3815 0.2963 -4.6618 -1.9623 -0.8007 0
## Boot.c -1.3815 0.3057 -4.5188 -1.9474 -0.7750 0
## Boot.t -1.3815 0.2963 -4.6618 -1.9504 -0.8126 0
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 11.4476 1.0000 135.0000 0.0009
##
## $AR$ci.print
## [1] "[-1.9539, -0.7276]"
##
## $AR$ci
## [1] -1.9539 -0.7276
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 55.1871 32.4040 NA 29.7988 32.4040
##
## $rho
## [1] 0.5459
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 32.4040 2.3208 -1.3815 0.2963 -4.6618 -2.0692 -0.6938 0.0001
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## DIST_BGNC -1e-04 0 9e-04 0 -2e-04 0 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## DIST_BGNC 1e-04 0 0 0 1e-04 1e-04 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 137
##
## $N_cl
## NULL
##
## $df
## [1] 130
##
## $nvalues
## zhdi_2010 avgdistance_delta50 DIST_BGNC
## [1,] 121 93 134
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Lei and Zhou (2022)
| Unit of analysis |
city*year |
| Treatment |
subway approval |
| Instrument |
whether the city has more than 3 million residents* population
size |
| Outcome |
mayor promotion |
| Model |
Table3(A) |
df<-readRDS("jop_Lei_2022.rds")
Y <-'Mayor_promotion3y'
D <-'Mayor_plan'
Z <-'iv1'
controls<-c( 'Per_pop_2', 'iv1_int')
cl<-"City_Code"
FE<-c("provinceyear","City_Code")
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.276 0.1196 2.3077 0.0416 0.5104 0.0210
## Boot.c 0.276 0.2240 1.2323 -0.1138 0.6942 0.1100
## Boot.t 0.276 0.1196 2.3077 -0.3991 0.9510 0.2675
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.4776 0.0519 9.2026 0.3759 0.5793 0.00
## Boot.c 0.4776 0.2633 1.8139 -0.1775 0.6991 0.13
## Boot.t 0.4776 0.0519 9.2026 0.2942 0.6609 0.00
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 83.1817 1.0000 146.0000 0.0000
##
## $AR$ci.print
## [1] "[0.3755, 0.5793]"
##
## $AR$ci
## [1] 0.3755 0.5793
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 53.4747 2276.8055 5359.1714 139.8380 5359.1714
##
## $rho
## [1] 0.7604
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 5359.1714 1.9600 0.4776 0.0519 9.2026 0.3759 0.5793 0.0000
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## iv1 0.4833 0.0534 0 0.2738 -0.1792 0.7256 0.13
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## iv1 1.0119 0.0138 0 0.0856 0.9799 1.2187 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 148
##
## $N_cl
## [1] 45
##
## $df
## [1] 39
##
## $nvalues
## Mayor_promotion3y Mayor_plan iv1
## [1,] 2 2 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Lelkes et al. (2017)
| Unit of analysis |
state*year |
| Treatment |
number of broadband Internet providers |
| Instrument |
state-level ROW index |
| Outcome |
affective polarization |
| Model |
Table1(3) |
df<-readRDS("ajps_Lelkes_2017.rds")
D <-"D"
Y <- "outcome"
Z <- "Total_log"
controls <- c("region", "percent_black", "percent_white",
"percent_male", "lowed", "unemploymentrate",
"density", "HHINC_log")
cl<- "state"
FE <- "year"
weights=NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0041 0.0031 1.3481 -0.0019 0.0102 0.1776
## Boot.c 0.0041 0.0037 1.1318 -0.0027 0.0110 0.2620
## Boot.t 0.0041 0.0031 1.3481 -0.0009 0.0092 0.1160
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0316 0.0141 2.2364 0.0039 0.0593 0.0253
## Boot.c 0.0316 0.2605 0.1212 0.0024 0.1397 0.0500
## Boot.t 0.0316 0.0141 2.2364 0.0087 0.0545 0.0090
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 4.6542 1.0000 114801.0000 0.0310
##
## $AR$ci.print
## [1] "[0.0036, 0.0733]"
##
## $AR$ci
## [1] 0.0036 0.0733
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 9525.8467 8161.7346 11.1632 7.5161 11.1632
##
## $rho
## [1] 0.2768
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 11.1632 3.2489 0.0316 0.0141 2.2364 -0.0143 0.0774 0.1773
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## Total_log 0.0033 0.0015 0.031 0.0019 3e-04 0.0077 0.04
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## Total_log 0.1042 0.0312 8e-04 0.038 0.0131 0.1635 0.014
##
## $p_iv
## [1] 1
##
## $N
## [1] 114803
##
## $N_cl
## [1] 48
##
## $df
## [1] 114790
##
## $nvalues
## outcome D Total_log
## [1,] 2423 1438 43
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Lerman et al. (2017)
| Unit of analysis |
individual |
| Treatment |
public versus only private health insurance |
| Instrument |
born 1946 or 1947 |
| Outcome |
support ACA |
| Model |
Table1(1) |
df<-readRDS("jop_Lerman_2017.rds")
Y <-'suppafford'
D <-'privpubins3r'
Z <-'byr4647'
controls<-c( 'rep', 'ind', 'con', 'mod',
'ideostrength', 'hcsocial', 'fininsur',
'healthcaresupport', 'child18', 'male',
'married', 'labor', 'mobility', 'homeowner',
'religimp','employed', 'votereg', 'vote08',
'black', 'hispanic2', 'military', 'educ',
'fincome', 'newsint', 'publicemp', 'bornagain')
cl<-NULL
FE<-NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0093 0.0109 0.8542 -0.0121 0.0307 0.393
## Boot.c 0.0093 0.0107 0.8674 -0.0122 0.0304 0.374
## Boot.t 0.0093 0.0109 0.8542 -0.0125 0.0311 0.376
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0459 0.0229 2.0095 0.0011 0.0908 0.0445
## Boot.c 0.0459 0.0220 2.0874 0.0014 0.0876 0.0340
## Boot.t 0.0459 0.0229 2.0095 0.0026 0.0893 0.0390
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 4.0770 1.0000 4387.0000 0.0435
##
## $AR$ci.print
## [1] "[0.0013, 0.0909]"
##
## $AR$ci
## [1] 0.0013 0.0909
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 1272.162 1194.659 NA 1142.244 1194.659
##
## $rho
## [1] 0.4752
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 1194.6594 1.9600 0.0459 0.0229 2.0095 0.0011 0.0908 0.0445
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## byr4647 0.0202 0.01 0.0441 0.0097 6e-04 0.0391 0.034
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## byr4647 0.4401 0.0127 0 0.013 0.4152 0.4672 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 4389
##
## $N_cl
## NULL
##
## $df
## [1] 4361
##
## $nvalues
## suppafford privpubins3r byr4647
## [1,] 2 2 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

López-Moctezuma et al. (2020)
| Unit of analysis |
individual |
| Treatment |
town-hall meetings |
| Instrument |
assignment to treatment |
| Outcome |
voting behavior |
| Model |
figure3(2) |
df <-readRDS("ajps_Moctezuma_etal_2020.rds")
df<-as.data.frame(df)
D<-"treatment"
Y <- "vote"
Z <- "assignment"
controls <- NULL
cl <- "barangay"
FE <- "city"
weights<-"weight.att"
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 16.1643 2.5956 6.2275 11.0769 21.2517 0.000
## Boot.c 16.1643 4.7490 3.4037 6.6333 23.6826 0.006
## Boot.t 16.1643 2.5956 6.2275 2.3810 29.9476 0.034
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 17.6531 3.5231 5.0106 10.7478 24.5584 0.000
## Boot.c 17.6531 69.1561 0.2553 -0.0322 67.3013 0.052
## Boot.t 17.6531 3.5231 5.0106 1.7238 33.5824 0.042
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 18.6344 1.0000 888.0000 0.0000
##
## $AR$ci.print
## [1] "[11.1193, 26.1837]"
##
## $AR$ci
## [1] 11.1193 26.1837
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 1663.9064 521.4034 25.2694 5.8093 25.2694
##
## $rho
## [1] 0.8089
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 25.2694 2.4519 17.6531 3.5231 5.0106 9.0146 26.2915 0.0001
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## assignment 13.2179 3.0776 0 5.9926 1.2343 25.6995 0.024
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## assignment 0.7488 0.149 0 0.3107 -0.0023 1 0.052
##
## $p_iv
## [1] 1
##
## $N
## [1] 890
##
## $N_cl
## [1] 30
##
## $df
## [1] 879
##
## $nvalues
## vote treatment assignment
## [1,] 2 2 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Lorentzen et al. (2014)
| Unit of analysis |
city |
| Treatment |
large firm dominance in 2007 |
| Instrument |
same variable measured in 1999 |
| Outcome |
pollution information transparency index |
| Model |
Table1(2) |
df<-readRDS("jop_Lorentzen_2014.rds")
D <- "lfd2007"
Y <- "pitiave3"
Z <- "lfd99"
controls <- c("lbudgetrev", "lexpratio", "tertratio", "sat_air_pca")
cl <- NULL
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -2.4789 1.0508 -2.3590 -4.5385 -0.4193 0.0183
## Boot.c -2.4789 1.0724 -2.3116 -4.5455 -0.3068 0.0240
## Boot.t -2.4789 1.0508 -2.3590 -4.6843 -0.2734 0.0260
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -6.3664 1.6421 -3.8769 -9.5850 -3.1478 1e-04
## Boot.c -6.3664 1.7771 -3.5826 -10.2938 -3.1908 0e+00
## Boot.t -6.3664 1.6421 -3.8769 -9.5691 -3.1638 2e-03
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 17.3155 1.0000 110.0000 0.0001
##
## $AR$ci.print
## [1] "[-10.0252, -3.3643]"
##
## $AR$ci
## [1] -10.0252 -3.3643
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 53.6182 53.4100 NA 52.8998 53.4100
##
## $rho
## [1] 0.5796
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 53.4100 2.1292 -6.3664 1.6421 -3.8769 -9.8628 -2.8700 0.0004
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## lfd99 -3.4227 0.8379 0 0.8778 -5.083 -1.6487 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## lfd99 0.5376 0.0736 0 0.0739 0.3921 0.6787 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 112
##
## $N_cl
## NULL
##
## $df
## [1] 106
##
## $nvalues
## pitiave3 lfd2007 lfd99
## [1,] 108 112 112
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

McClendon (2014)
| Unit of analysis |
individual |
| Treatment |
reading social esteem promising email |
| Instrument |
assignment to treatment |
| Outcome |
participation in LGBTQ events |
| Model |
Table2(1) |
df <- readRDS("ajps_McClendon_2014.rds")
D<-"openedesteem"
Y<- "intended"
Z <- "esteem"
controls <- NULL
cl<- NULL
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.2823 0.0339 8.3291 0.2159 0.3488 0
## Boot.c 0.2823 0.0356 7.9231 0.2166 0.3547 0
## Boot.t 0.2823 0.0339 8.3291 0.2123 0.3523 0
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.3149 0.0890 3.5376 0.1404 0.4893 4e-04
## Boot.c 0.3149 0.0932 3.3798 0.1293 0.4994 2e-03
## Boot.t 0.3149 0.0890 3.5376 0.1363 0.4934 1e-03
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 11.9462 1.0000 3645.0000 0.0006
##
## $AR$ci.print
## [1] "[0.1394, 0.4917]"
##
## $AR$ci
## [1] 0.1394 0.4917
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 103.7604 207.1798 NA 209.7429 207.1798
##
## $rho
## [1] 0.1664
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 207.1798 1.9600 0.3149 0.0890 3.5376 0.1404 0.4893 0.0004
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## esteem 0.0247 0.0072 5e-04 0.0075 0.0106 0.039 0.002
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## esteem 0.0786 0.0055 0 0.0054 0.0683 0.0892 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 3647
##
## $N_cl
## NULL
##
## $df
## [1] 3645
##
## $nvalues
## intended openedesteem esteem
## [1,] 2 2 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Meredith (2013)
| Unit of analysis |
down-ballot race |
| Treatment |
Democratic governor |
| Instrument |
governor’s home county |
| Outcome |
down-ballot Democratic candidates’ vote share |
| Model |
Table3(5) |
df <-readRDS("apsr_Meredith_2013.rds")
Y <- "DemShareDB_res"
D<-"DemShareGOV_res"
Z <- "HomeGOV_res"
controls <- "HomeDB_res"
cl <- "fips"
FE<- NULL
weights<-NULL
(g <- ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.2634 0.0128 20.5976 0.2383 0.2884 0
## Boot.c 0.2634 0.0128 20.5607 0.2405 0.2898 0
## Boot.t 0.2634 0.0128 20.5976 0.2456 0.2811 0
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.1634 0.0712 2.2959 0.0239 0.3030 0.0217
## Boot.c 0.1634 0.0714 2.2893 0.0142 0.2956 0.0360
## Boot.t 0.1634 0.0712 2.2959 0.0674 0.2594 0.0000
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 4.6123 1.0000 14548.0000 0.0318
##
## $AR$ci.print
## [1] "[0.0155, 0.3020]"
##
## $AR$ci
## [1] 0.0155 0.3020
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 284.9652 141.9189 77.2953 75.6437 77.2953
##
## $rho
## [1] 0.1386
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 77.2953 2.0300 0.1634 0.0712 2.2959 0.0189 0.3079 0.0266
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## HomeGOV_res 0.0062 0.0029 0.0317 0.0029 5e-04 0.012 0.036
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## HomeGOV_res 0.0379 0.0043 0 0.0044 0.0298 0.0465 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 14550
##
## $N_cl
## [1] 2750
##
## $df
## [1] 14547
##
## $nvalues
## DemShareDB_res DemShareGOV_res HomeGOV_res
## [1,] 14550 14550 1466
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Nellis and Siddiqui (2018)
| Unit of analysis |
district*election |
| Treatment |
the proportion of MNA seats in a district won by secularist
candidates |
| Instrument |
narrow victory by secular parties in a district |
| Outcome |
religious violence |
| Model |
Table2(1) |
df<-readRDS("apsr_Nellis_etal_2018.rds")
D <-'secular_win'
Y <- "any_violence"
Z <- "secular_close_win"
controls <-"secular_close_race"
cl <- "cluster_var"
FE <- "pro"
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.015 0.0364 -0.4107 -0.0863 0.0564 0.6813
## Boot.c -0.015 0.0356 -0.4195 -0.0815 0.0548 0.7080
## Boot.t -0.015 0.0364 -0.4107 -0.0677 0.0377 0.5930
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.6603 0.2154 -3.0658 -1.0825 -0.2382 0.0022
## Boot.c -0.6603 0.2565 -2.5739 -1.1285 -0.1115 0.0260
## Boot.t -0.6603 0.2154 -3.0658 -1.0266 -0.2941 0.0050
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 12.2950 1.0000 435.0000 0.0005
##
## $AR$ci.print
## [1] "[-1.1587, -0.2778]"
##
## $AR$ci
## [1] -1.1587 -0.2778
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 22.0208 60.0400 53.9103 42.6871 53.9103
##
## $rho
## [1] 0.2207
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 53.9103 2.1258 -0.6603 0.2154 -3.0658 -1.1182 -0.2025 0.0047
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## secular_close_win -0.5965 0.1711 5e-04 0.2008 -0.8829 -0.1009 0.026
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## secular_close_win 0.9034 0.123 0 0.1383 0.6099 1.1586 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 437
##
## $N_cl
## [1] 54
##
## $df
## [1] 430
##
## $nvalues
## any_violence secular_win secular_close_win
## [1,] 2 26 17
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Pianzola et al. (2019)
| Unit of analysis |
individual |
| Treatment |
smartvote use |
| Instrument |
random assignment of the e-mail treatment |
| Outcome |
vote intentions |
| Model |
Table4(3) |
df <- readRDS("jop_Pianzola_etal_2019.rds")
D <- "smartvote"
Y <- "diff_top_ptv"
Z <- "email"
controls <- NULL
cl <- NULL
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0805 0.0684 1.1767 -0.0536 0.2146 0.2393
## Boot.c 0.0805 0.0657 1.2252 -0.0510 0.2093 0.2480
## Boot.t 0.0805 0.0684 1.1767 -0.0477 0.2087 0.2270
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.755 0.3788 1.9934 0.0126 1.4974 0.0462
## Boot.c 0.755 0.3993 1.8909 0.0680 1.5790 0.0380
## Boot.t 0.755 0.3788 1.9934 0.0325 1.4776 0.0440
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 4.2767 1.0000 1773.0000 0.0388
##
## $AR$ci.print
## [1] "[0.0392, 1.5950]"
##
## $AR$ci
## [1] 0.0392 1.5950
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 46.7293 46.7612 NA 41.6791 46.7612
##
## $rho
## [1] 0.1602
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 46.7612 2.1662 0.7550 0.3788 1.9934 -0.0654 1.5755 0.0713
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## email 0.1032 0.0499 0.0386 0.05 0.0094 0.2037 0.038
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## email 0.1367 0.02 0 0.0212 0.095 0.1778 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 1775
##
## $N_cl
## NULL
##
## $df
## [1] 1773
##
## $nvalues
## diff_top_ptv smartvote email
## [1,] 18 2 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Ritter and Conrad (2016)
| Unit of analysis |
province in 54 African countries*day |
| Treatment |
mobilized dissent |
| Instrument |
rainfall |
| Outcome |
repression |
| Model |
Table1(3b) |
df <- readRDS("apsr_Ritter_etal_2016.rds")
D <- "dissentcount"
Y <- "represscount"
Z <- c("lograin", "rainannualpct")
controls <-"urban_mean"
cl<- NULL
FE<- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.1885 0.0067 28.0525 0.1754 0.2017 0
## Boot.c 0.1885 0.0068 27.7009 0.1757 0.2020 0
## Boot.t 0.1885 0.0067 28.0525 0.1755 0.2016 0
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.2708 0.0676 4.0058 0.1383 0.4033 1e-04
## Boot.c 0.2708 0.0675 4.0135 0.1391 0.4014 0e+00
## Boot.t 0.2708 0.0676 4.0058 0.1415 0.4001 0e+00
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 8.36210e+00 2.00000e+00 1.25873e+06 2.00000e-04
##
## $AR$ci.print
## [1] "[0.1149, 0.4448]"
##
## $AR$ci
## [1] 0.1149 0.4448
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 58.3505 73.6819 NA 80.1711 79.3065
##
## $rho
## [1] 0.0096
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## lograin 0.0001 0.0000 0.0000 0.0000 0.0001 0.0002 0.00
## rainannualpct -0.0092 0.0059 0.1199 0.0059 -0.0201 0.0024 0.14
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## lograin 0.0005 0.0000 0e+00 0.0000 0.0004 0.0006 0
## rainannualpct -0.0250 0.0065 1e-04 0.0065 -0.0381 -0.0127 0
##
## $p_iv
## [1] 2
##
## $N
## [1] 1258733
##
## $N_cl
## NULL
##
## $df
## [1] 1258730
##
## $nvalues
## represscount dissentcount lograin rainannualpct
## [1,] 3 5 390194 593785
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Rueda (2017)
| Unit of analysis |
city |
| Treatment |
actual polling place size. |
| Instrument |
the size of the polling station |
| Outcome |
citizens’ reports of electoral manipulation |
| Model |
Table5(1) |
df <- readRDS("ajps_Rueda_2017.rds")
D <-"lm_pob_mesa"
Y <- "e_vote_buying"
Z <- "lz_pob_mesa_f"
controls <- c("lpopulation", "lpotencial")
cl <- "muni_code"
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.675 0.1011 -6.6803 -0.8731 -0.4770 0
## Boot.c -0.675 0.1014 -6.6598 -0.8752 -0.4902 0
## Boot.t -0.675 0.1011 -6.6803 -0.8450 -0.5051 0
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.9835 0.1424 -6.9071 -1.2626 -0.7044 0
## Boot.c -0.9835 0.1384 -7.1044 -1.2696 -0.7218 0
## Boot.t -0.9835 0.1424 -6.9071 -1.2305 -0.7365 0
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 48.4768 1.0000 4350.0000 0.0000
##
## $AR$ci.print
## [1] "[-1.2635, -0.7052]"
##
## $AR$ci
## [1] -1.2635 -0.7052
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 3106.387 3108.591 8598.326 8507.847 8598.326
##
## $rho
## [1] 0.6455
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 8598.3264 1.9600 -0.9835 0.1424 -6.9071 -1.2626 -0.7044 0.0000
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## lz_pob_mesa_f -0.7826 0.1124 0 0.1093 -1.0015 -0.5748 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## lz_pob_mesa_f 0.7957 0.0086 0 0.0086 0.7792 0.8128 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 4352
##
## $N_cl
## [1] 1098
##
## $df
## [1] 4348
##
## $nvalues
## e_vote_buying lm_pob_mesa lz_pob_mesa_f
## [1,] 16 4118 3860
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Schleiter and Tavits (2016)
| Unit of analysis |
election |
| Treatment |
opportunistic election calling |
| Instrument |
prime Minister dissolution power |
| Outcome |
vote share of Prime Minister’s party |
| Model |
Table3(b4) |
df<- readRDS("jop_Schleiter_etal_2016.rds")
D <- "term2"
Y <- "pm_voteshare_next"
Z <- "disspm"
controls <- c("pm_voteshare", "gdp_chg1yr", "cpi1yr", "dumcpi1yr")
cl <- "countryn"
FE <- "decade"
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 3.0828 1.0369 2.9730 1.0504 5.1152 0.0029
## Boot.c 3.0828 1.1562 2.6663 1.4950 6.0083 0.0000
## Boot.t 3.0828 1.0369 2.9730 1.2870 4.8786 0.0040
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 5.0282 2.5494 1.9723 0.0314 10.0250 0.0486
## Boot.c 5.0282 250.0906 0.0201 1.1705 25.8194 0.0260
## Boot.t 5.0282 2.5494 1.9723 -0.2628 10.3192 0.0580
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 5.1692 1.0000 189.0000 0.0241
##
## $AR$ci.print
## [1] "[0.6169, 10.8318]"
##
## $AR$ci
## [1] 0.6169 10.8318
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 107.0322 75.6881 57.1949 23.2520 57.1949
##
## $rho
## [1] 0.6117
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 57.1949 2.1037 5.0282 2.5494 1.9723 -0.3350 10.3914 0.0661
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## disspm 0.3124 0.1412 0.0269 0.1905 0.0797 0.814 0.018
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## disspm 0.0621 0.0082 0 0.0129 0.0225 0.0747 0.016
##
## $p_iv
## [1] 1
##
## $N
## [1] 191
##
## $N_cl
## [1] 25
##
## $df
## [1] 179
##
## $nvalues
## pm_voteshare_next term2 disspm
## [1,] 157 2 6
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Schubiger (2021)
| Unit of analysis |
community |
| Treatment |
exposure to state violence |
| Instrument |
location of a community inside or outside the emergency zone |
| Outcome |
counterinsurgent mobilization |
df <-readRDS("jop_Schubiger_2021.rds")
D <- "violence_est_period2"
Y<-"autodefensa"
Z <- "emzone"
controls <-"distance"
cl<- NULL
FE<- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0702 0.0140 5.0069 0.0427 0.0977 0
## Boot.c 0.0702 0.0144 4.8617 0.0446 0.1015 0
## Boot.t 0.0702 0.0140 5.0069 0.0413 0.0992 0
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.2736 0.0764 3.5814 0.1239 0.4234 3e-04
## Boot.c 0.2736 0.0788 3.4710 0.1260 0.4410 0e+00
## Boot.t 0.2736 0.0764 3.5814 0.1245 0.4227 2e-03
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 12.7351 1.0000 7293.0000 0.0004
##
## $AR$ci.print
## [1] "[0.1299, 0.4470]"
##
## $AR$ci
## [1] 0.1299 0.4470
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 39.9899 38.5348 NA 44.4953 38.5348
##
## $rho
## [1] 0.0739
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 38.5348 2.2392 0.2736 0.0764 3.5814 0.1025 0.4447 0.0017
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## emzone 0.0172 0.0048 4e-04 0.0048 0.0081 0.0272 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## emzone 0.0629 0.0101 0 0.0094 0.0448 0.0812 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 7295
##
## $N_cl
## NULL
##
## $df
## [1] 7292
##
## $nvalues
## autodefensa violence_est_period2 emzone
## [1,] 2 2 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Sexton et al. (2019)
| Unit of analysis |
department*year |
| Treatment |
health budget |
| Instrument |
soldier fatalities |
| Outcome |
health social service |
| Model |
Table3(1) |
df <-readRDS("ajps_Sexton_etal_2019.rds")
D<-"socialservice_b"
Y <- "Finfant_mortality"
Z <- "Lgk_budget"
controls <- c("Lgk_prebudget", "ln_pbi_pc", "execution_nohealth")
cl <- "deptcode"
FE <- c("year","deptcode")
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -1.3472 1.0152 -1.3270 -3.3371 0.6426 0.1845
## Boot.c -1.3472 1.1041 -1.2203 -3.4486 0.9067 0.2419
## Boot.t -1.3472 1.0152 -1.3270 -3.0094 0.3149 0.1018
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -15.0645 8.0376 -1.8743 -30.8181 0.6892 0.0609
## Boot.c -15.0645 97.7685 -0.1541 -49.5157 8.3532 0.2258
## Boot.t -15.0645 8.0376 -1.8743 -77.1568 47.0278 0.1744
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 18.0386 1.0000 70.0000 0.0001
##
## $AR$ci.print
## [1] "[-66.7477, -5.3884]"
##
## $AR$ci
## [1] -66.7477 -5.3884
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 1.0172 2.5692 7.4923 2.4563 7.4923
##
## $rho
## [1] 0.1538
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 7.4923 4.1607 -15.0645 8.0376 -1.8743 -48.5065 18.3775 0.3773
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## Lgk_budget 4.3552 1.0481 0 2.0749 -1.5125 5.8972 0.1915
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## Lgk_budget -0.2891 0.1056 0.0062 0.1845 -0.7084 0.0068 0.0544
##
## $p_iv
## [1] 1
##
## $N
## [1] 72
##
## $N_cl
## [1] 24
##
## $df
## [1] 23
##
## $nvalues
## Finfant_mortality socialservice_b Lgk_budget
## [1,] 39 72 6
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Spenkuch and Tillmann (2018)
| Unit of analysis |
electoral district |
| Treatment |
religion of voters living in the same areas more than three and a
half centuries later |
| Instrument |
individual princes’ decisions concerning whether to adopt
Protestantism |
| Outcome |
Nazi vote share |
| Model |
Table2(B1) |
df <-readRDS("ajps_Spenkuch_etal_2018.rds")
D <-"r_1925C_kath"
Y <- "r_NSDAP_NOV1932_p"
Z <- c("r_kath1624", "r_gem1624")
controls <- c("r_1925C_juden", "r_1925C_others",
"r_M1925C_juden","r_M1925C_others")
cl <- 'WKNR'
FE <- NULL
weights="r_wahlberechtigte_NOV1932"
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.2504 0.0185 -13.5112 -0.2867 -0.2141 0
## Boot.c -0.2504 0.0187 -13.3777 -0.2917 -0.2150 0
## Boot.t -0.2504 0.0185 -13.5112 -0.2827 -0.2181 0
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.2544 0.0182 -13.9439 -0.2902 -0.2187 0
## Boot.c -0.2544 0.0182 -13.9738 -0.2949 -0.2195 0
## Boot.t -0.2544 0.0182 -13.9439 -0.2848 -0.2240 0
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 89.3425 2.0000 979.0000 0.0000
##
## $AR$ci.print
## [1] "[-0.2949, -0.2175]"
##
## $AR$ci
## [1] -0.2949 -0.2175
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 1215.3547 726.7058 212.7390 206.0427 213.2421
##
## $rho
## [1] 0.8446
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## r_kath1624 -17.2028 1.2929 0 1.2989 -19.7287 -14.7083 0
## r_gem1624 -9.1477 1.5382 0 1.6657 -12.8031 -6.1867 0
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## r_kath1624 66.6657 3.232 0 3.2888 60.2575 73.0220 0
## r_gem1624 39.2697 4.320 0 4.7375 31.1488 49.8847 0
##
## $p_iv
## [1] 2
##
## $N
## [1] 982
##
## $N_cl
## [1] 35
##
## $df
## [1] 978
##
## $nvalues
## r_NSDAP_NOV1932_p r_1925C_kath r_kath1624 r_gem1624
## [1,] 982 977 2 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Stewart and Liou (2017)
| Unit of analysis |
insurgency*year |
| Treatment |
foreign territory |
| Instrument |
log total border length and the total number of that state’s
neighbors |
| Outcome |
civilian casualties |
| Model |
Table3(1) |
df <- readRDS("jop_Stewart_2017.rds")
D <- "exterrdum_low"
Y <- "oneside_best_log"
Z <- "total_border_ln"
controls <- c("bd_log", "terrdum", "strengthcent_ord", "rebstrength_ord",
'nonmilsupport', 'rebestsize', 'l1popdensity',
'l1gdppc_log','l1gdppc_change')
cl <- NULL
FE <- c("year","countrynum")
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.803 0.3249 2.4716 0.1662 1.4398 0.0135
## Boot.c 0.803 0.3221 2.4928 0.1327 1.4165 0.0140
## Boot.t 0.803 0.3249 2.4716 0.1344 1.4716 0.0130
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 1.1929 0.5730 2.0817 0.0698 2.3161 0.0374
## Boot.c 1.1929 1.2897 0.9250 -0.1080 2.5030 0.0760
## Boot.t 1.1929 0.5730 2.0817 0.1371 2.2487 0.0180
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 5.0089 1.0000 464.0000 0.0257
##
## $AR$ci.print
## [1] "[0.1476, 2.2861]"
##
## $AR$ci
## [1] 0.1476 2.2861
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 33.9859 99.3150 NA 65.0275 99.3150
##
## $rho
## [1] 0.2786
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 99.3150 1.9734 1.1929 0.5730 2.0817 0.0621 2.3238 0.0387
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## total_border_ln -7.0905 3.3952 0.0368 4.5703 -14.6261 0.6053 0.076
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## total_border_ln -5.9438 0.5964 0 0.7371 -7.2986 -4.6863 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 466
##
## $N_cl
## NULL
##
## $df
## [1] 404
##
## $nvalues
## oneside_best_log exterrdum_low total_border_ln
## [1,] 113 2 45
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Stokes (2016)
| Unit of analysis |
precinct |
| Treatment |
turbine location |
| Instrument |
wind speed |
| Outcome |
vote turnout |
| Model |
Table2(2) |
df<-readRDS("ajps_Stokes_2016.rds")
D <-"prop_3km"
Y <- "chng_lib"
Z <- "avg_pwr_log"
controls <- c("mindistlake", "mindistlake_sq", "longitude",
"long_sq", "latitude", "lat_sq", "long_lat")
cl <- NULL
FE <- "ed_id"
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.0203 0.0073 -2.7638 -0.0347 -0.0059 0.0057
## Boot.c -0.0203 0.0074 -2.7384 -0.0344 -0.0065 0.0020
## Boot.t -0.0203 0.0073 -2.7638 -0.0340 -0.0066 0.0010
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.077 0.0282 -2.7289 -0.1323 -0.0217 0.0064
## Boot.c -0.077 0.0288 -2.6742 -0.1412 -0.0246 0.0100
## Boot.t -0.077 0.0282 -2.7289 -0.1305 -0.0235 0.0100
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 7.6582 1.0000 706.0000 0.0058
##
## $AR$ci.print
## [1] "[-0.1346, -0.0232]"
##
## $AR$ci
## [1] -0.1346 -0.0232
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 67.9032 65.7306 NA 59.4117 65.7306
##
## $rho
## [1] 0.3025
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 65.7306 2.0693 -0.0770 0.0282 -2.7289 -0.1354 -0.0186 0.0097
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## avg_pwr_log -0.0585 0.0216 0.0069 0.0215 -0.1037 -0.0193 0.01
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## avg_pwr_log 0.7602 0.0938 0 0.0986 0.5495 0.9349 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 708
##
## $N_cl
## NULL
##
## $df
## [1] 674
##
## $nvalues
## chng_lib prop_3km avg_pwr_log
## [1,] 708 2 708
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Tajima (2013)
| Unit of analysis |
village and urban neighborhood |
| Treatment |
distance to police posts (as a proxy for exposure to military
intervention) |
| Instrument |
distance to health station |
| Outcome |
incidence of communal violence |
| Model |
Table1(4) |
df<-readRDS("ajps_Tajima_2013.rds")
D <-"z2_distpospol"
Y <- "horiz2"
Z <- "z2_dispuskes"
controls <- c("flat", "z2_altitude","urban", "natres", "z2_logvillpop", "z2_logdensvil",
"z2_povrateksvil", "z2_fgtksvild", "z2_covyredvil", "z2_npwperhh",
"z2_ethfractvil","z2_ethfractsd", "z2_ethfractd", "z2_relfractvil",
"z2_relfractsd", "z2_relfractd", "z2_ethclustsd", "z2_ethclustvd",
"z2_relclustsd", "z2_relclustvd", "z2_wgcovegvil", "z2_wgcovegsd",
"z2_wgcovegd", "z2_wgcovrgvil", "z2_wgcovrgsd", "z2_wgcovrgd",
"natdis","javanese_off_java", "islam", "split_kab03", "split_vil03")
cl <- 'kabid03'
FE <- 'prop'
weights<-"probit_touse_wts03"
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.0024 6e-04 -3.7223 -0.0037 -0.0011 2e-04
## Boot.c -0.0024 7e-04 -3.6031 -0.0038 -0.0011 0e+00
## Boot.t -0.0024 6e-04 -3.7223 -0.0034 -0.0014 0e+00
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.0041 0.0014 -3.0103 -0.0068 -0.0014 0.0026
## Boot.c -0.0041 0.0014 -2.9987 -0.0068 -0.0012 0.0040
## Boot.t -0.0041 0.0014 -3.0103 -0.0062 -0.0021 0.0000
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 9.0632 1.0000 51911.0000 0.0026
##
## $AR$ci.print
## [1] "[-0.0069, -0.0015]"
##
## $AR$ci
## [1] -0.0069 -0.0015
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 13363.7649 1529.0807 202.6374 221.5317 202.6374
##
## $rho
## [1] 0.4527
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 202.6374 1.9600 -0.0041 0.0014 -3.0103 -0.0068 -0.0014 0.0026
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## z2_dispuskes -0.0019 6e-04 0.0026 6e-04 -0.003 -5e-04 0.004
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## z2_dispuskes 0.447 0.0314 0 0.03 0.3934 0.5074 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 51913
##
## $N_cl
## [1] 326
##
## $df
## [1] 51853
##
## $nvalues
## horiz2 z2_distpospol z2_dispuskes
## [1,] 2 101 101
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Trounstine (2016)
| Unit of analysis |
city*year |
| Treatment |
racial segregation |
| Instrument |
the number of waterways in a city; logged population |
| Outcome |
direct general expenditures |
| Model |
Table5(1) |
df<-readRDS("ajps_Trounstine_2016.rds")
D <-"H_citytract_NHW_i"
Y <- "dgepercap_cpi"
Z <- c("total_rivs_all", "logpop")
controls <- c("dgepercap_cpilag","diversityinterp","pctblkpopinterp",
"pctasianpopinterp","pctlatinopopinterp","medincinterp",
"pctlocalgovworker_100","pctrentersinterp","pctover65",
"pctcollegegradinterp","northeast","south","midwest",
"y5", "y6", "y7", "y8", "y9")
cl <- NULL
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -0.9265 0.8648 -1.0713 -2.6214 0.7685 0.284
## Boot.c -0.9265 0.9005 -1.0289 -2.7087 0.5735 0.428
## Boot.t -0.9265 0.8648 -1.0713 -7.7843 5.9313 0.474
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic -2.6757 1.6174 -1.6543 -5.8458 0.4944 0.0981
## Boot.c -2.6757 1.7330 -1.5439 -5.7630 0.8028 0.1880
## Boot.t -2.6757 1.6174 -1.6543 -16.4076 11.0562 0.2870
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 2.3548 2.0000 21142.0000 0.0949
##
## $AR$ci.print
## [1] "[-6.3513, 0.3917]"
##
## $AR$ci
## [1] -6.3513 0.3917
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 3883.651 2506.495 NA 2506.302 2318.687
##
## $rho
## [1] 0.5185
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## total_rivs_all -0.0081 0.0229 0.7217 0.0239 -0.0608 0.0274 0.846
## logpop -0.0855 0.0407 0.0355 0.0446 -0.1624 0.0098 0.104
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## total_rivs_all 0.0054 3e-04 0 3e-04 0.0048 0.0060 0
## logpop 0.0291 5e-04 0 5e-04 0.0281 0.0301 0
##
## $p_iv
## [1] 2
##
## $N
## [1] 21145
##
## $N_cl
## NULL
##
## $df
## [1] 21125
##
## $nvalues
## dgepercap_cpi H_citytract_NHW_i total_rivs_all logpop
## [1,] 21129 15395 22 16223
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Urpelainen and Zhang (2022)
| Unit of analysis |
district*year |
| Treatment |
wind turbine capacity |
| Instrument |
time trend multiplied by the wind resource of the electoral
district |
| Outcome |
Democratic vote |
| Model |
Table3(B1) |
df <-readRDS("jop_urpelainen_2022.rds")
D <- "cum_capacity_turbine"
Y<-"demvotesmajorpercent"
Z <- "inter"
controls <-NULL
cl<- "district_fixed"
FE<- c("stateyear_fixed","district_fixed")
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0063 0.0028 2.2395 8e-04 0.0118 0.0251
## Boot.c 0.0063 0.0036 1.7585 1e-04 0.0141 0.0460
## Boot.t 0.0063 0.0028 2.2395 4e-04 0.0122 0.0400
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0296 0.0109 2.7312 0.0084 0.0509 0.0063
## Boot.c 0.0296 0.0155 1.9136 0.0098 0.0711 0.0060
## Boot.t 0.0296 0.0109 2.7312 0.0121 0.0472 0.0070
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 9.5546 1.0000 1142.0000 0.0020
##
## $AR$ci.print
## [1] "[0.0111, 0.0618]"
##
## $AR$ci
## [1] 0.0111 0.0618
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 93.4366 27.8543 16.1654 15.1202 16.1654
##
## $rho
## [1] 0.3269
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 16.1654 2.7897 0.0296 0.0109 2.7312 -0.0006 0.0599 0.0550
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## inter 0.9095 0.2942 0.002 0.3136 0.2846 1.4443 0.006
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## inter 30.6883 7.6327 1e-04 7.8921 13.4146 44.3271 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 1144
##
## $N_cl
## [1] 287
##
## $df
## [1] 286
##
## $nvalues
## demvotesmajorpercent cum_capacity_turbine inter
## [1,] 965 141 777
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Vernby (2013)
| Unit of analysis |
municipality*term |
| Treatment |
share of noncitizens in the electorate |
| Instrument |
immigration Inflow 1940–1950; Immigration Inflow 1960–1967 |
| Outcome |
municipal education and social spending |
| Model |
Table3(2) |
df<-readRDS("ajps_Vernby_2013.rds")
D <-"noncitvotsh"
Y <- "Y"
Z <- c("inv1950", "inv1967")
controls <- c("Taxbase2", "L_Taxbase2", "manu", "L_manu", "pop", "L_pop")
cl <- "lan"
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 8.9328 1.9684 4.5382 5.0748 12.7908 0.000
## Boot.c 8.9328 2.3403 3.8170 3.2496 12.2679 0.000
## Boot.t 8.9328 1.9684 4.5382 4.3419 13.5237 0.002
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 10.5903 2.9560 3.5827 4.7965 16.3840 0.0003
## Boot.c 10.5903 4.0687 2.6028 1.4685 18.0110 0.0320
## Boot.t 10.5903 2.9560 3.5827 5.1599 16.0206 0.0000
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 5.7276 2.0000 180.0000 0.0039
##
## $AR$ci.print
## [1] "[3.7484, 17.1894]"
##
## $AR$ci
## [1] 3.7484 17.1894
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 66.2203 49.5670 79.6400 27.2507 48.2007
##
## $rho
## [1] 0.6574
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## inv1950 2.5029 9.0396 0.7819 11.6869 -23.4184 21.6511 0.976
## inv1967 10.0729 7.2288 0.1635 9.0620 -7.8192 29.0063 0.188
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## inv1950 0.7234 0.3444 0.0357 0.4197 -0.0896 1.4828 0.104
## inv1967 0.4665 0.2984 0.1180 0.3232 -0.2790 0.9648 0.178
##
## $p_iv
## [1] 2
##
## $N
## [1] 183
##
## $N_cl
## [1] 25
##
## $df
## [1] 175
##
## $nvalues
## Y noncitvotsh inv1950 inv1967
## [1,] 183 183 25 25
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Webster et al. (2022)
| Unit of analysis |
individual |
| Treatment |
percentage of angry words that a respondent wrote in his or her
emotional recall prompt |
| Instrument |
treatment assignment indicator |
| Outcome |
social polarization: do favors |
| Model |
Table2(1) |
df <-readRDS("jop_Webster_2022.rds")
D <- "anger"
Y<-"fourpack_1_01"
Z <- "treated"
controls <-"democrat"
cl<- NULL
FE<- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0024 0.0018 1.3413 -0.0011 0.0058 0.1798
## Boot.c 0.0024 0.0017 1.3925 -0.0011 0.0055 0.1860
## Boot.t 0.0024 0.0018 1.3413 -0.0010 0.0057 0.1730
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0108 0.0039 2.8123 0.0033 0.0184 0.0049
## Boot.c 0.0108 0.0038 2.8691 0.0035 0.0183 0.0020
## Boot.t 0.0108 0.0039 2.8123 0.0034 0.0183 0.0040
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 7.9872 1.0000 3408.0000 0.0047
##
## $AR$ci.print
## [1] "[0.0033, 0.0185]"
##
## $AR$ci
## [1] 0.0033 0.0185
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 801.9232 773.5894 NA 731.7039 773.5894
##
## $rho
## [1] 0.4365
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 773.5894 1.9600 0.0108 0.0039 2.8123 0.0033 0.0184 0.0049
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## treated 0.031 0.011 0.0047 0.0107 0.0102 0.0524 0.002
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## treated 2.8585 0.1028 0 0.1057 2.6555 3.0638 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 3410
##
## $N_cl
## NULL
##
## $df
## [1] 3407
##
## $nvalues
## fourpack_1_01 anger treated
## [1,] 5 252 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

West (2017)
| Unit of analysis |
individual |
| Treatment |
Obama win |
| Instrument |
IEM (prediction market) price |
| Outcome |
political efficacy |
| Model |
Table1(4) |
df<- readRDS("jop_West_2017.rds")
D <- "obama"
Y <- "newindex"
Z <- "avgprice"
controls <- c("partyd1", "partyd2", "partyd3",
"partyd4", "partyd5", "wa01_a", "wa02_a",
"wa03_a", "wa04_a", "wa05_a", "wfc02_a",
"ra01_b", "rd01", "wd02_b", "rkey",
"wave_1", "dt_w12", "dt_w12_2")
cl <- NULL
FE <- c("state","religion")
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.0358 0.0112 3.2084 0.0139 0.0577 0.0013
## Boot.c 0.0358 0.0110 3.2424 0.0139 0.0568 0.0020
## Boot.t 0.0358 0.0112 3.2084 0.0144 0.0572 0.0010
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.2073 0.0873 2.3758 0.0363 0.3784 0.0175
## Boot.c 0.2073 0.0924 2.2428 0.0564 0.4146 0.0140
## Boot.t 0.2073 0.0873 2.3758 0.0499 0.3648 0.0120
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 6.5244 1.0000 2281.0000 0.0107
##
## $AR$ci.print
## [1] "[0.0483, 0.4053]"
##
## $AR$ci
## [1] 0.0483 0.4053
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 41.7917 37.8652 NA 39.7537 37.8652
##
## $rho
## [1] 0.1362
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 37.8652 2.2493 0.2073 0.0873 2.3758 0.0110 0.4036 0.0384
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## avgprice 0.1407 0.0559 0.0119 0.0562 0.0357 0.2615 0.014
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## avgprice 0.6784 0.1103 0 0.1076 0.4533 0.8865 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 2283
##
## $N_cl
## NULL
##
## $df
## [1] 2211
##
## $nvalues
## newindex obama avgprice
## [1,] 122 2 141
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Wood and Grose (2022)
| Unit of analysis |
House member/district |
| Treatment |
incumbent found to have campaign finance violations |
| Instrument |
audit |
| Outcome |
legislator Retired |
| Model |
Table2(1) |
df <-readRDS("ajps_Wood_grose_2022.rds")
# preprocess to generate xwhat and xhat in Stata
D<-"findings"
Y <- "retire__or_resign"
Z <- "audited"
controls <-c("xwhat","south")
cl <- "stcd"
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.2369 0.1076 2.2022 0.0261 0.4477 0.0276
## Boot.c 0.2369 0.1112 2.1304 0.0266 0.4538 0.0240
## Boot.t 0.2369 0.1076 2.2022 -0.0013 0.4751 0.0520
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.2869 0.1615 1.7764 -0.0297 0.6035 0.0757
## Boot.c 0.2869 0.1781 1.6107 -0.0494 0.6443 0.0920
## Boot.t 0.2869 0.1615 1.7764 -0.0363 0.6101 0.0690
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 2.8595 1.0000 433.0000 0.0916
##
## $AR$ci.print
## [1] "[-0.0542, 0.6404]"
##
## $AR$ci
## [1] -0.0542 0.6404
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 220.6007 22.8647 22.8647 20.8499 22.8647
##
## $rho
## [1] 0.5819
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 22.8647 2.5155 0.2869 0.1615 1.7764 -0.1194 0.6932 0.1663
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## audited 0.1377 0.0816 0.0916 0.0815 -0.0204 0.3034 0.092
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## audited 0.48 0.1004 0 0.1051 0.2667 0.667 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 435
##
## $N_cl
## [1] 435
##
## $df
## [1] 431
##
## $nvalues
## retire__or_resign findings audited
## [1,] 2 2 2
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Zhu (2017)
| Unit of analysis |
province*period |
| Treatment |
MNC activity |
| Instrument |
weighted geographic closeness |
| Outcome |
corruption |
| Model |
Table1(1) |
df <- readRDS("ajps_Zhu_2017.rds")
D <-"MNC"
Y <- "corruption1"
Z <- "lwdist"
controls <- c("lgdpcap6978", "gdp6978", "population", "lgovtexp9302",
"pubempratio", "leduc", "pwratio", "female", "time")
cl <- NULL
FE <- NULL
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.3531 0.0960 3.6788 0.1650 0.5412 0.0002
## Boot.c 0.3531 0.1258 2.8073 0.0793 0.5753 0.0180
## Boot.t 0.3531 0.0960 3.6788 0.1464 0.5597 0.0020
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.4855 0.1121 4.3317 0.2658 0.7052 0.000
## Boot.c 0.4855 0.2039 2.3816 0.1150 0.8923 0.018
## Boot.t 0.4855 0.1121 4.3317 0.2584 0.7125 0.000
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 12.7838 1.0000 59.0000 0.0007
##
## $AR$ci.print
## [1] "[0.2552, 0.6855]"
##
## $AR$ci
## [1] 0.2552 0.6855
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 45.9155 45.5515 NA 22.9851 45.5515
##
## $rho
## [1] 0.6919
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 45.5515 2.1802 0.4855 0.1121 4.3317 0.2411 0.7298 0.0001
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## lwdist 0.559 0.1698 0.001 0.2747 0.1153 1.2312 0.018
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## lwdist 1.1514 0.1706 0 0.2402 0.7817 1.7737 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 61
##
## $N_cl
## NULL
##
## $df
## [1] 50
##
## $nvalues
## corruption1 MNC lwdist
## [1,] 61 61 61
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

Ziaja (2020)
| Unit of analysis |
country*year |
| Treatment |
number of democracy donors |
| Instrument |
constructed instrument |
| Outcome |
democracy scores |
| Model |
Table1(B2) |
df <-readRDS("jop_Ziaja_2020.rds")
D <- "l.CMgnh"
Y <- "v2x.polyarchy.n"
Z <- "l.ZwvCMgwh94"
controls <-c("l.pop.log.r", "l.gdpcap.log.r", "l.war25")
cl<- "cnamef"
FE<- c("cnamef", "periodf")
weights<-NULL
(g<-ivDiag(data=df, Y=Y, D=D, Z=Z, controls=controls, FE =FE,
cl =cl,weights=weights, cores = cores))
## $est_ols
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.8746 0.1931 4.5298 0.4962 1.2531 0
## Boot.c 0.8746 0.2003 4.3665 0.4602 1.2443 0
## Boot.t 0.8746 0.1931 4.5298 0.5692 1.1801 0
##
## $est_2sls
## Coef SE t CI 2.5% CI 97.5% p.value
## Analytic 0.8726 0.3877 2.2505 0.1126 1.6325 0.0244
## Boot.c 0.8726 0.4116 2.1198 -0.1411 1.4598 0.1080
## Boot.t 0.8726 0.3877 2.2505 0.2511 1.4941 0.0030
##
## $AR
## $AR$Fstat
## F df1 df2 p
## 4.8018 1.0000 2365.0000 0.0285
##
## $AR$ci.print
## [1] "[0.0949, 1.6295]"
##
## $AR$ci
## [1] 0.0949 1.6295
##
## $AR$bounded
## [1] TRUE
##
##
## $F_stat
## F.standard F.robust F.cluster F.bootstrap F.effective
## 1158.1467 775.0850 199.9166 215.8614 199.9166
##
## $rho
## [1] 0.586
##
## $tF
## F cF Coef SE t CI2.5% CI97.5% p-value
## 199.9166 1.9600 0.8726 0.3877 2.2505 0.1126 1.6325 0.0244
##
## $est_rf
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## l.ZwvCMgwh94 0.0599 0.0273 0.0285 0.0298 -0.0093 0.1076 0.108
##
## $est_fs
## Coef SE p.value SE.b CI.b2.5% CI.b97.5% p.value.b
## l.ZwvCMgwh94 0.0686 0.0049 0 0.0047 0.0618 0.0802 0
##
## $p_iv
## [1] 1
##
## $N
## [1] 2367
##
## $N_cl
## [1] 130
##
## $df
## [1] 129
##
## $nvalues
## v2x.polyarchy.n l.CMgnh l.ZwvCMgwh94
## [1,] 2038 24 2283
##
## attr(,"class")
## [1] "ivDiag"
plot_coef(g)

References
Acharya, Avidit, Matthew Blackwell, and Maya Sen. 2016. “The
Political Legacy of American Slavery.” The Journal of
Politics 78 (3): 621641.
Alt, James E., John Marshall, and David D. Lassen. 2016. “Credible
Sources and Sophisticated Voters: When Does New Information Induce
Economic Voting?” The Journal of Politics 78 (2):
327342.
Arias, Eric, and David Stasavage. 2019. “How Large Are the
Political Costs of Fiscal Austerity?” The Journal of
Politics 81 (4): 1517–22.
Baccini, Leonardo, and Stephen Weymouth. 2021. “Gone for Good:
Deindustrialization, White Voter Backlash, and US Presidential
Voting.” American Political Science Review 115 (2):
550–67.
Barth, Erling, Henning Finseraas, and Karl O. Moene. 2015.
“Political Reinforcement: How Rising Inequality Curbs Manifested
Welfare Generosity.” American Journal of Political
Science 59 (3): 565577.
Bhavnani, Rikhil R., and Alexander Lee. 2018. “Local Embeddedness
and Bureaucratic Performance: Evidence from India.” The
Journal of Politics 80 (1): 7187.
Blair, Robert A, Jessica Di Salvatore, and Hannah M Smidt. 2022.
“When Do UN Peacekeeping Operations Implement Their
Mandates?” American Journal of Political Science 66 (3):
664–80.
Blattman, Christopher, Alexandra C. Hartman, and Robert A. Blair. 2014.
“How to Promote Order and Property Rights Under Weak Rule of Law?
An Experiment in Changing Dispute Resolution Behavior Through Community
Education.” American Political Science Review, 100120.
Carnegie, Allison, and Nikolay Marinov. 2017. “Foreign Aid, Human
Rights, and Democracy Promotion: Evidence from a Natural
Experiment.” American Journal of Political Science 61
(3): 671683.
Charron, Nicholas, Carl Dahlström, Mihaly Fazekas, and Victor Lapuente.
2017. “Careers, Connections, and Corruption Risks: Investigating
the Impact of Bureaucratic Meritocracy on Public Procurement
Processes.” The Journal of Politics 79 (1): 89104.
Charron, Nicholas, and Victor Lapuente. 2013. “Why Do Some Regions
in Europe Have a Higher Quality of Government?” The Journal
of Politics 75 (3): 567582.
Chong, Alberto, Gianmarco León-Ciliotta, Vivian Roza, Martín Valdivia,
and Gabriela Vega. 2019. “Urbanization Patterns, Information
Diffusion, and Female Voting in Rural Paraguay.” American
Journal of Political Science 63 (2): 323341.
Cirone, Alexandra, and Brenda Van Coppenolle. 2018. “Cabinets,
Committees, and Careers: The Causal Effect of Committee Service.”
The Journal of Politics 80 (3): 948963.
Colantone, Italo, and Piero Stanig. 2018a. “Global Competition and
Brexit.” American Political Science Review 112 (2):
201–18.
Colantone, Italo, and Piero Stanig. 2018b. “The Trade Origins of
Economic Nationalism: Import Competition and Voting Behavior in Western
Europe.” American Journal of Political Science 62 (4):
936953.
Coppock, Alexander, and Donald P. Green. 2016. “Is Voting Habit
Forming? New Evidence from Experiments and Regression
Discontinuities.” American Journal of Political Science
60 (4): 10441062.
Croke, Kevin, Guy Grossman, Horacio A. Larreguy, and John Marshall.
2016. “Deliberate Disengagement: How Education Can Decrease
Political Participation in Electoral Authoritarian Regimes.”
American Political Science Review 110 (3): 579600.
De La O, Ana L. 2013. “Do Conditional Cash Transfers Affect
Electoral Behavior? Evidence from a Randomized Experiment in
Mexico.” American Journal of Political Science 57 (1):
114.
Dietrich, Simone, and Joseph Wright. 2015. “Foreign Aid Allocation
Tactics and Democratic Change in Africa.” The Journal of
Politics 77 (1): 216234.
DiGiuseppe, Matthew, and Patrick E Shea. 2022. “Us Patronage,
State Capacity, and Civil Conflict.” The Journal of
Politics 84 (2): 767–82.
Dower, Paul Castaneda, Evgeny Finkel, Scott Gehlbach, and Steven
Nafziger. 2018. “Collective Action and Representation in
Autocracies: Evidence from Russia’s Great Reforms.”
American Political Science Review 112 (1): 125147.
Dube, Oeindrila, and Suresh Naidu. 2015. “Bases, Bullets, and
Ballots: The Effect of US Military Aid on Political Conflict in
Colombia.” The Journal of Politics 77 (1): 249267.
Feigenbaum, James J., and Andrew B. Hall. 2015. “How Legislators
Respond to Localized Economic Shocks: Evidence from Chinese Import
Competition.” The Journal of Politics 77 (4): 10121030.
Flores-Macias, Gustavo A., and Sarah E. Kreps. 2013. “The Foreign
Policy Consequences of Trade: China’s Commercial Relations
with Africa and Latin America, 19922006.” The
Journal of Politics 75 (2): 357371.
Gehlbach, Scott, and Philip Keefer. 2012. “Private Investment and
the Institutionalization of Collective Action in Autocracies: Ruling
Parties and Legislatures.” The Journal of Politics 74
(2): 621635.
Gerber, Alan S., Gregory A. Huber, and Ebonya Washington. 2010.
“Party Affiliation, Partisanship, and Political Beliefs: A Field
Experiment.” American Political Science Review 104 (4):
720744.
Goldstein, Rebecca, and Hye Young You. 2017. “Cities as
Lobbyists.” American Journal of Political Science 61
(4): 864876.
Grossman, Guy, Jan H. Pierskalla, and Emma Boswell Dean. 2017.
“Government Fragmentation and Public Goods Provision.”
The Journal of Politics 79 (3): 823840.
Hager, Anselm, and Hanno Hilbig. 2019. “Do Inheritance Customs
Affect Political and Social Inequality?” American Journal of
Political Science 63 (4): 758773.
Hager, Anselm, and Krzysztof Krakowski. 2022. “Does State
Repression Spark Protests? Evidence from Secret Police Surveillance in
Communist Poland.” American Political Science Review 116
(2): 564–79.
Hager, Anselm, Krzysztof Krakowski, and Max Schaub. 2019. “Ethnic
Riots and Prosocial Behavior: Evidence from Kyrgyzstan.”
American Political Science Review 113 (4): 1029–44.
Healy, Andrew, and Neil Malhotra. 2013. “Childhood Socialization
and Political Attitudes: Evidence from a Natural Experiment.”
The Journal of Politics 75 (4): 10231037.
Henderson, John, and John Brooks. 2016. “Mediating the Electoral
Connection: The Information Effects of Voter Signals on Legislative
Behavior.” The Journal of Politics 78 (3): 653–69.
Hong, Ji Yeon, Sunkyoung Park, and Hyunjoo Yang. 2022. “In
Strongman We Trust: The Political Legacy of the New Village Movement in
South Korea.” American Journal of Political Science.
Johns, Leslie, and Krzysztof J. Pelc. 2016. “Fear of Crowds in
World Trade Organization Disputes: Why Don’t More Countries
Participate?” The Journal of Politics 78 (1): 88104.
Kapoor, Sacha, and Arvind Magesan. 2018. “Independent Candidates
and Political Representation in India.” American Political
Science Review 112 (3): 678697.
Kim, Jeong Hyun. 2019. “Direct Democracy and Women’s Political
Engagement.” American Journal of Political Science 63
(3): 594610.
Kocher, Matthew Adam, Thomas B. Pepinsky, and Stathis N. Kalyvas. 2011.
“Aerial Bombing and Counterinsurgency in the Vietnam War.”
American Journal of Political Science 55 (2): 201218.
Kriner, Douglas L., and Eric Schickler. 2014. “Investigating the
President: Committee Probes and Presidential Approval,
19532006.” The Journal of Politics 76 (2):
521534.
Kuipers, Nicholas, and Alexander Sahn. 2022. “The Representational
Consequences of Municipal Civil Service Reform.” American
Political Science Review, 1–17.
Laitin, David D., and Rajesh Ramachandran. 2016. “Language Policy
and Human Development.” American Political Science
Review 110 (3): 457480.
Lei, Zhenhuan, and Junlong Aaron Zhou. 2022. “Private Returns to
Public Investment: Political Career Incentives and Infrastructure
Investment in China.” The Journal of Politics 84 (1):
455–69.
Lelkes, Yphtach, Gaurav Sood, and Shanto Iyengar. 2017. “The
Hostile Audience: The Effect of Access to Broadband Internet on Partisan
Affect.” American Journal of Political Science 61 (1):
520.
Lerman, Amy E., Meredith L. Sadin, and Samuel Trachtman. 2017.
“Policy Uptake as Political Behavior: Evidence from the Affordable
Care Act.” The American Political Science Review 111
(4): 755.
López-Moctezuma, Gabriel, Leonard Wantchekon, Daniel Rubenson, Thomas
Fujiwara, and Cecilia Pe Lero. 2020. “Policy Deliberation and
Voter Persuasion: Experimental Evidence from an Election in the
Philippines.” American Journal of Political Science.
Lorentzen, Peter, Pierre Landry, and John Yasuda. 2014.
“Undermining Authoritarian Innovation: The Power of
China’s Industrial Giants.” The Journal of
Politics 76 (1): 182194.
McClendon, Gwyneth H. 2014. “Social Esteem and Participation in
Contentious Politics: A Field Experiment at an LGBT Pride Rally.”
American Journal of Political Science 58 (2): 279290.
Meredith, Marc. 2013. “Exploiting Friends-and-Neighbors to
Estimate Coattail Effects.” American Political Science
Review, 742765.
Nellis, Gareth, and Niloufer Siddiqui. 2018. “Secular Party Rule
and Religious Violence in Pakistan.” The American Political
Science Review 112 (1): 49.
Pianzola, Joëlle, Alexander H. Trechsel, Kristjan Vassil, Guido
Schwerdt, and R. Michael Alvarez. 2019. “The Impact of
Personalized Information on Vote Intention: Evidence from a Randomized
Field Experiment.” The Journal of Politics 81 (3):
833847.
Ritter, Emily Hencken, and Courtenay R. Conrad. 2016. “Preventing
and Responding to Dissent: The Observational Challenges of Explaining
Strategic Repression.” American Political Science Review
110 (1): 8599.
Rueda, Miguel R. 2017. “Small Aggregates, Big Manipulation: Vote
Buying Enforcement and Collective Monitoring.” American
Journal of Political Science 61 (1): 163177.
Schleiter, Petra, and Margit Tavits. 2016. “The Electoral Benefits
of Opportunistic Election Timing.” The Journal of
Politics 78 (3): 836850.
Schubiger, Livia Isabella. 2021. “State Violence and Wartime
Civilian Agency: Evidence from Peru.” The Journal of
Politics 83 (4): 1383–98.
Sexton, Renard, Rachel L. Wellhausen, and Michael G. Findley. 2019.
“How Government Reactions to Violence Worsen Social Welfare:
Evidence from Peru.” American Journal of Political
Science 63 (2): 353367.
Spenkuch, Jörg L., and Philipp Tillmann. 2018. “Elite Influence?
Religion and the Electoral Success of the Nazis.” American
Journal of Political Science 62 (1): 1936.
Stewart, Megan A., and Yu-Ming Liou. 2017. “Do Good Borders Make
Good Rebels? Territorial Control and Civilian Casualties.”
The Journal of Politics 79 (1): 284301.
Stokes, Leah C. 2016. “Electoral Backlash Against Climate Policy:
A Natural Experiment on Retrospective Voting and Local Resistance to
Public Policy.” American Journal of Political Science 60
(4): 958974.
Tajima, Yuhki. 2013. “The Institutional Basis of Intercommunal
Order: Evidence from Indonesia’s Democratic Transition.”
American Journal of Political Science 57 (1): 104119.
Trounstine, Jessica. 2016. “Segregation and Inequality in Public
Goods.” American Journal of Political Science 60 (3):
709725.
Urpelainen, Johannes, and Alice Tianbo Zhang. 2022. “Electoral
Backlash or Positive Reinforcement? Wind Power and Congressional
Elections in the United States.” The Journal of Politics
84 (3): 1306–21.
Vernby, K. 2013. “Inclusion and Public Policy: Evidence from
Sweden’s Introduction of Noncitizen Suffrage.”
American Journal of Political Science 57 (1): 1529.
Webster, Steven W, Elizabeth C Connors, and Betsy Sinclair. 2022.
“The Social Consequences of Political Anger.” The
Journal of Politics 84 (3): 1292–305.
West, Emily A. 2017. “Descriptive Representation and Political
Efficacy: Evidence from Obama and Clinton.” The Journal of
Politics 79 (1): 351355.
Wood, Abby K, and Christian R Grose. 2022. “Campaign Finance
Transparency Affects Legislators’ Election Outcomes and
Behavior.” American Journal of Political Science 66 (2):
516–34.
Zhu, Boliang. 2017. “MNCs, Rents, and Corruption: Evidence from
China.” American Journal of Political Science 61 (1):
8499.
Ziaja, Sebastian. 2020. “More Donors, More Democracy.”
The Journal of Politics 82 (2): 433447.