S7 class (with Ops) for influence function based estimands
You can install the development version of ife from GitHub with:
# install.packages("pak")
::pak("nt-williams/ife") pak
library(ife)
<- 500
n <- runif(n)
w <- rbinom(n, 1, 0.5)
a <- rbinom(n, 1, plogis(-0.75 + a + w))
y
<- data.frame(w, a, y)
foo <- foo0 <- foo
foo1 $a <- 1
foo1$a <- 0
foo0
<- 0.5
pi <- glm(y ~ a + w, data = foo, family = binomial())
m
<- predict(m, type = "response")
Qa <- predict(m, newdata = foo1, type = "response")
Q1 <- predict(m, newdata = foo0, type = "response")
Q0
<- a / pi * (y - Qa) + Q1
if1 <- (1 - a) / pi * (y - Qa) + Q0
if0
<- influence_func_estimand(mean(if1), if1)
ife1 <- influence_func_estimand(mean(if0), if0)
ife0
- ife0
ife1 #> • Estimand: 0.17
#> • Std. error: 0.04
#> • 95% Conf. int.: 0.08, 0.25
/ ife0
ife1 #> • Estimand: 1.35
#> • Std. error: 0.11
#> • 95% Conf. int.: 1.14, 1.56