ivbounds {ivtools} | R Documentation |
Bounds for counterfactual outcome probabilities in instrumental variables scenarios
Description
ivbounds
computes non-parametric bounds for counterfactual outcome probabilities
in instrumental variables scenarios. Let ,
, and
be the outcome, exposure, and instrument, respectively.
and
must be binary,
whereas
can be either binary or ternary.
Ternary instruments are common in, for instance, Mendelian randomization.
Let
be the counterfactual probability of the outcome, had all
subjects been exposed to level
.
ivbounds
computes bounds for the
counterfactuals probabilities and
. Below, we define
.
Usage
ivbounds(data, Z, X, Y, monotonicity=FALSE, weights)
Arguments
data |
either a data frame containing the variables in the model, or a named vector
|
Z |
a string containing the name of the instrument |
X |
a string containing the name of the exposure |
Y |
a string containing the name of the outcome |
monotonicity |
logical. It is sometimes realistic to make the monotonicity assumption
|
weights |
an optional vector of ‘prior weights’ to be used in the fitting process.
Should be NULL or a numeric vector. Only applicable if |
Details
ivbounds
uses linear programming techniques to bound the counterfactual probabilities
and
. Bounds for a causal effect, defined as a contrast between these,
are obtained by plugging in the bounds for
and
into the
contrast. For instance, bounds for the causal risk difference
are obtained as
.
In addition to the bounds,
ivbounds
evaluates the IV inequality
Value
An object of class "ivbounds"
is a list containing
call |
the matched call. |
p0 |
a named vector with elements |
p1 |
a named vector with elements |
p0.symbolic |
a named vector with elements |
p1.symbolic |
a named vector with elements |
IVinequality |
logical. Does the IV inequality hold? |
conditions |
a character vector containing the violated condiations, if |
Author(s)
Arvid Sjolander.
References
Balke, A. and Pearl, J. (1997). Bounds on treatment effects from studies with imperfect compliance. Journal of the American Statistical Association 92(439), 1171-1176.
Sjolander A., Martinussen T. (2019). Instrumental variable estimation with the R package ivtools. Epidemiologic Methods 8(1), 1-20.
Examples
##Vitamin A example from Balke and Pearl (1997).
n000 <- 74
n001 <- 34
n010 <- 0
n011 <- 12
n100 <- 11514
n101 <- 2385
n110 <- 0
n111 <- 9663
n0 <- n000+n010+n100+n110
n1 <- n001+n011+n101+n111
#with data frame...
data <- data.frame(Y=c(0,0,0,0,1,1,1,1), X=c(0,0,1,1,0,0,1,1),
Z=c(0,1,0,1,0,1,0,1))
n <- c(n000, n001, n010, n011, n100, n101, n110, n111)
b <- ivbounds(data=data, Z="Z", X="X", Y="Y", weights=n)
summary(b)
#...or with vector of probabilities
p <- n/rep(c(n0, n1), 4)
names(p) <- c("p00.0", "p00.1", "p01.0", "p01.1",
"p10.0", "p10.1", "p11.0", "p11.1")
b <- ivbounds(data=p)
summary(b)