Description Usage Arguments Value References See Also Examples
This function performs sensitivity analysis to omitted variables as discussed in Cinelli and Hazlett (2020). It returns an object of
class sensemakr
with several precomputed sensitivity statistics for reporting.
After running sensemakr
you may directly use the plot
, print
and summary
methods in the returned object.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54  sensemakr(...)
## S3 method for class 'lm'
sensemakr(
model,
treatment,
benchmark_covariates = NULL,
kd = 1,
ky = kd,
q = 1,
alpha = 0.05,
r2dz.x = NULL,
r2yz.dx = r2dz.x,
bound_label = "Manual Bound",
reduce = TRUE,
...
)
## S3 method for class 'formula'
sensemakr(
formula,
data,
treatment,
benchmark_covariates = NULL,
kd = 1,
ky = kd,
q = 1,
alpha = 0.05,
r2dz.x = NULL,
r2yz.dx = r2dz.x,
bound_label = "",
reduce = TRUE,
...
)
## S3 method for class 'numeric'
sensemakr(
estimate,
se,
dof,
treatment = "D",
q = 1,
alpha = 0.05,
r2dz.x = NULL,
r2yz.dx = r2dz.x,
bound_label = "manual_bound",
r2dxj.x = NULL,
r2yxj.dx = r2dxj.x,
benchmark_covariates = "manual_benchmark",
kd = 1,
ky = kd,
reduce = TRUE,
...
)

... 
arguments passed to other methods. First argument should either be an 
model 
An 
treatment 
A character vector with the name of the treatment variable of the model. 
benchmark_covariates 
The user has two options: (i) character vector of the names of covariates that will be used to bound the plausible strength of the unobserved confounders. Each variable will be considered separately; (ii) a named list with character vector names of covariates that will be used, as a group, to bound the plausible strength of the unobserved confounders. The names of the list will be used for the benchmark labels. Note: for factor variables with more than two levels, you need to provide the name of each level as encoded in the 
kd 
numeric vector. Parameterizes how many times stronger the confounder is related to the treatment in comparison to the observed benchmark covariate.
Default value is 
ky 
numeric vector. Parameterizes how many times stronger the confounder is related to the outcome in comparison to the observed benchmark covariate.
Default value is the same as 
q 
percent change of the effect estimate that would be deemed problematic. Default is 
alpha 
significance level. 
r2dz.x 
Hypothetical partial R2 of unobserved confounder Z with treatment D, given covariates X. 
r2yz.dx 
Hypothetical partial R2 of unobserved confounder Z with outcome Y, given covariates X and treatment D. 
bound_label 
label to bounds provided manually in 
reduce 
Should the bias adjustment reduce or increase the
absolute value of the estimated coefficient? Default is 
formula 
an object of the class 
data 
data needed only when you pass a formula as first parameter. An object of the class 
estimate 
Coefficient estimate. 
se 
Standard error of the coefficient estimate. 
dof 
Residual degrees of freedom of the regression. 
r2dxj.x 
partial R2 of covariate Xj with the treatment D (after partialling out the effect of the remaining covariates X, excluding Xj). 
r2yxj.dx 
partial R2 of covariate Xj with the outcome Y (after partialling out the effect of the remaining covariates X, excluding Xj). 
An object of class sensemakr
, containing:
info
A data.frame
with the general information of the analysis, including the formula used, the name of the treatment variable, parameter values such as q
, alpha
, and whether the bias is assumed to reduce the current estimate.
sensitivity_stats
A data.frame
with the sensitivity statistics for the treatment variable, as computed by the function sensitivity_stats
.
bounds
A data.frame
with bounds on the strength of confounding according to some benchmark covariates, as computed by the function ovb_bounds
.
Cinelli, C. and Hazlett, C. (2020), "Making Sense of Sensitivity: Extending Omitted Variable Bias." Journal of the Royal Statistical Society, Series B (Statistical Methodology).
The function sensemakr
is a convenience function. You may use the other sensitivity functions of the package directly, such as the functions for sensitivity plots
(ovb_contour_plot
, ovb_extreme_plot
) the functions for computing biasadjusted estimates and tvalues (adjusted_estimate
, adjusted_t
),
the functions for computing the robustness value and partial R2 (robustness_value
, partial_r2
), or the functions for bounding the strength
of unobserved confounders (ovb_bounds
), among others.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28  # loads dataset
data("darfur")
# runs regression model
model < lm(peacefactor ~ directlyharmed + age + farmer_dar + herder_dar +
pastvoted + hhsize_darfur + female + village, data = darfur)
# runs sensemakr for sensitivity analysis
sensitivity < sensemakr(model, treatment = "directlyharmed",
benchmark_covariates = "female",
kd = 1:3)
# short description of results
sensitivity
# long description of results
summary(sensitivity)
# plot bias contour of point estimate
plot(sensitivity)
# plot bias contour of tvalue
plot(sensitivity, sensitivity.of = "tvalue")
# plot extreme scenario
plot(sensitivity, type = "extreme")
# latex code for sensitivity table
ovb_minimal_reporting(sensitivity)

Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.