Type: Package
Title: Rosenbaum and Rubin Sensitivity
Version: 0.2.1
Author: Jongbin Jung
Maintainer: Jongbin Jung <me@jongbin.com>
Description: Apply sensitivity analysis for offline policy evaluation, as implemented in Jung et al. (2017) <doi:10.48550/arXiv.1702.04690> based on Rosenbaum and Rubin (1983) http://www.jstor.org/stable/2345524.
License: GPL-3 | file LICENSE
Encoding: UTF-8
LazyData: true
Suggests: testthat, covr
Imports: purrr, assertthat
RoxygenNote: 6.0.1
NeedsCompilation: no
Packaged: 2018-04-16 17:35:57 UTC; jongbin
Repository: CRAN
Date/Publication: 2018-04-16 18:46:24 UTC

rnr: A package for computing Rosenbaum and Rubin sensitivity

Description

The rnr package provides functions for computing sensitivity of counterfactual estimates under assumptions of unobserved confounding.


Generic sensitizing for Rosenbaum & Rubin sensitivity analysis

Description

Generic sensitizing for Rosenbaum & Rubin sensitivity analysis

Usage

sensitize(obj, q, dp, d0, d1, ...)

Arguments

obj

data to sensitize

q

p(u = 1 | x)

dp

change in log-odds of treat = 1 if u = 1

d0

change in log-odds of response = 1 if treat = 0 and u = 1

d1

change in log-odds of response = 1 if treat = 1 and u = 1

...

additional arguments required to sensitize object

Value

a sensitized object, identical to, or inheriting the class of original obj


Compute the sensitivity-adjusted estimates of predicted outcome given treatment/control

Description

Compute the sensitivity-adjusted estimates of predicted outcome given treatment/control

Usage

## S3 method for class 'data.frame'
sensitize(obj, q, dp, d0, d1, debug = FALSE, ...)

Arguments

obj

data frame to analyze; must include columns $treat: Observed (binary) treatment, e.g., bail_set $resp_ctl: Predicted probability of positive resp given control, $resp_trt: Predicted probability of positive resp given treatment, $p_trt: predicted probability of treatment

q

p(u = 1 | x)

dp

change in log-odds of treat = 1 if u = 1

d0

change in log-odds of response = 1 if treat = 0 and u = 1

d1

change in log-odds of response = 1 if treat = 1 and u = 1

debug

logical, whether or not to return columns of intermediate variables for debugging purposes

...

additional arguments are ignored

Value

A data frame with the columns resp_ctl and resp_trt updated according to the sensitivity parameters. If debug = TRUE, returned data frame will also contain columns of intermediate variables computed for sensitivity, appended with "__" (e.g., gamma__), with the original response estimates renamed as resp_trt_trt__ = resp_trt resp_ctl_ctl__ = resp_ctl

Examples

obj <- data.frame(treat = 0, resp_ctl = .2, resp_trt = .3, p_trt = .5)
sensitize(obj, q = .5, dp = log(2), d0 = log(2), d1 = log(2))