Nothing
## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
## ----setup, message = FALSE---------------------------------------------------
library(postcard)
library(magrittr)
withr::local_seed(1395878)
withr::local_options(list(postcard.verbose = 0))
## ----dat-sim------------------------------------------------------------------
n <- 1000
b0 <- 1
b1 <- 3
b2 <- 2
dat_gaus <- glm_data(
Y ~ b0+b1*sin(W)^2+b2*A,
W = runif(n, min = -2, max = 2),
A = rbinom(n, 1, prob = 1/2)
)
dat_gaus_hist <- glm_data(
Y ~ b0+b1*sin(W)^2,
W = runif(n, min = -2, max = 2)
)
dat_pois <- glm_data(
Y ~ b0+b1*sin(W)^2+b2*A,
W = runif(n, min = -2, max = 2),
A = rbinom(n, 1, 1/2),
family = poisson(link = "log")
)
## -----------------------------------------------------------------------------
# Default amount of printing
ate <- rctglm(
formula = Y ~ A + W,
exposure_indicator = A,
exposure_prob = 1/2,
data = dat_gaus,
verbose = 2)
ate_prog <- rctglm_with_prognosticscore(
formula = Y ~ A + W,
exposure_indicator = A,
exposure_prob = 1/2,
data = dat_gaus,
data_hist = dat_gaus_hist,
verbose = 2)
# At little less printing
ate <- rctglm(
formula = Y ~ A + W,
exposure_indicator = A,
exposure_prob = 1/2,
data = dat_gaus,
verbose = 1)
ate_prog <- rctglm_with_prognosticscore(
formula = Y ~ A + W,
exposure_indicator = A,
exposure_prob = 1/2,
data = dat_gaus,
data_hist = dat_gaus_hist,
verbose = 1)
# No printing
ate <- rctglm(
formula = Y ~ A + W,
exposure_indicator = A,
exposure_prob = 1/2,
data = dat_gaus,
verbose = 0)
ate_prog <- rctglm_with_prognosticscore(
formula = Y ~ A + W,
exposure_indicator = A,
exposure_prob = 1/2,
data = dat_gaus,
data_hist = dat_gaus_hist,
verbose = 0)
## ----rate-ratio-run-show------------------------------------------------------
rate_ratio <- rctglm(
formula = Y ~ A + W,
exposure_indicator = A,
exposure_prob = 1/2,
data = dat_pois,
family = "poisson",
estimand_fun = "rate_ratio",
verbose = 1)
rate_ratio$estimand_funs
## ----nonsense-run-show--------------------------------------------------------
nonsense_estimand_fun <- function(psi1, psi0) {
psi1 / sqrt(psi0) * 2 - 1
}
nonsense_estimand <- rctglm(
formula = Y ~ A * W,
exposure_indicator = A,
exposure_prob = 1/2,
data = dat_pois,
family = poisson(),
estimand_fun = nonsense_estimand_fun,
verbose = 1)
nonsense_estimand$estimand_funs
## ----default-learners-show----------------------------------------------------
default_learners
## ----fit-own-learners---------------------------------------------------------
learners <- list(
rf = list(
model = parsnip::rand_forest(
mode = "regression",
trees = 500,
min_n = parsnip::tune("min_n")
) %>%
parsnip::set_engine("ranger"),
grid = data.frame(
min_n = 1:10
)
),
svm.linear = list(
model = parsnip::svm_linear(
mode = "regression",
cost = parsnip::tune("cost"),
margin = parsnip::tune("margin")) %>%
parsnip::set_engine("LiblineaR"),
grid = data.frame(
cost = 1:5,
margin = seq(0.1, 0.5, 0.1)
)
)
)
model_own_learners <- rctglm_with_prognosticscore(
formula = Y ~ A * W,
exposure_indicator = A,
exposure_prob = 1/2,
data = dat_gaus,
data_hist = dat_gaus_hist,
learners = learners)
## ----prognostic-info-show-----------------------------------------------------
prog_info <- prog(model_own_learners)
prog_info$data <- head(prog_info$data)
prog_info
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.