Sensitivity statistics for regression coefficients
Sensitivity statistics for regression coefficients
Convenience function that computes the robustness_value, partial_r2 and partial_f2 of the coefficient of interest.
sensitivity_stats(...)## S3 method for class 'lm'sensitivity_stats( model, treatment, q =1, alpha =0.05, reduce =TRUE, invert =FALSE,...)## S3 method for class 'fixest'sensitivity_stats( model, treatment, q =1, alpha =0.05, reduce =TRUE, invert =FALSE, message = T,...)## S3 method for class 'numeric'sensitivity_stats( estimate, se, dof, treatment ="treatment", q =1, alpha =0.05, reduce =TRUE, invert =FALSE,...)
Arguments
...: arguments passed to other methods.
model: An lm or fixest object with the outcome regression.
treatment: A character vector with the name of the treatment variable of the model.
q: percent change of the effect estimate that would be deemed problematic. Default is 1, which means a reduction of 100% of the current effect estimate (bring estimate to zero). It has to be greater than zero.
alpha: significance level.
reduce: should the bias adjustment reduce or increase the absolute value of the estimated coefficient? Default is TRUE.
invert: should IRV be computed instead of RV? (i.e. is the estimate insignificant?). Default is FALSE.
message: should messages be printed? Default = TRUE.
estimate: Coefficient estimate.
se: standard error of the coefficient estimate.
dof: residual degrees of freedom of the regression.
Returns
A data.frame containing the following quantities:
treatment: a character with the name of the treatment variable
estimate: a numeric vector with the estimated effect of the treatment
se: a numeric vector with the estimated standard error of the treatment effect
t_statistics: a numeric vector with the t-value of the treatment
r2yd.x: a numeric vector with the partial R2 of the treatment and the outcome, see details in partial_r2
rv_q: a numeric vector with the robustness value of the treatment, see details in robustness_value
rv_qa: a numeric vector with the robustness value of the treatment considering statistical significance, see details in robustness_value
f2yd.x: a numeric vector with the partial (Cohen's) f2 of the treatment with the outcome, see details in partial_f2
dof: a numeric vector with the degrees of freedom of the model
Examples
## loads datadata("darfur")## fits modelmodel <- lm(peacefactor ~ directlyharmed + age + farmer_dar + herder_dar + pastvoted + hhsize_darfur + female + village, data = darfur)## sensitivity stats for directly harmedsensitivity_stats(model, treatment ="directlyharmed")## you can also pass the numeric values directlysensitivity_stats(estimate =0.09731582, se =0.02325654, dof =783)
References
Cinelli, C. and Hazlett, C. (2020), "Making Sense of Sensitivity: Extending Omitted Variable Bias." Journal of the Royal Statistical Society, Series B (Statistical Methodology).