odds_ratio {tern} | R Documentation |
Odds ratio estimation
Description
The analyze function estimate_odds_ratio()
creates a layout element to compare bivariate responses between
two groups by estimating an odds ratio and its confidence interval.
The primary analysis variable specified by vars
is the group variable. Additional variables can be included in the
analysis via the variables
argument, which accepts arm
, an arm variable, and strata
, a stratification variable.
If more than two arm levels are present, they can be combined into two groups using the groups_list
argument.
Usage
estimate_odds_ratio(
lyt,
vars,
variables = list(arm = NULL, strata = NULL),
conf_level = 0.95,
groups_list = NULL,
na_str = default_na_str(),
nested = TRUE,
...,
show_labels = "hidden",
table_names = vars,
.stats = "or_ci",
.formats = NULL,
.labels = NULL,
.indent_mods = NULL
)
s_odds_ratio(
df,
.var,
.ref_group,
.in_ref_col,
.df_row,
variables = list(arm = NULL, strata = NULL),
conf_level = 0.95,
groups_list = NULL
)
a_odds_ratio(
df,
.var,
.ref_group,
.in_ref_col,
.df_row,
variables = list(arm = NULL, strata = NULL),
conf_level = 0.95,
groups_list = NULL
)
Arguments
lyt |
( |
vars |
( |
variables |
(named |
conf_level |
( |
groups_list |
(named |
na_str |
( |
nested |
( |
... |
arguments passed to |
show_labels |
( |
table_names |
( |
.stats |
( |
.formats |
(named |
.labels |
(named |
.indent_mods |
(named |
df |
( |
.var |
( |
.ref_group |
( |
.in_ref_col |
( |
.df_row |
( |
Value
-
estimate_odds_ratio()
returns a layout object suitable for passing to further layouting functions, or tortables::build_table()
. Adding this function to anrtable
layout will add formatted rows containing the statistics froms_odds_ratio()
to the table layout.
-
s_odds_ratio()
returns a named list with the statisticsor_ci
(containingest
,lcl
, anducl
) andn_tot
.
-
a_odds_ratio()
returns the corresponding list with formattedrtables::CellValue()
.
Functions
-
estimate_odds_ratio()
: Layout-creating function which can take statistics function arguments and additional format arguments. This function is a wrapper forrtables::analyze()
. -
s_odds_ratio()
: Statistics function which estimates the odds ratio between a treatment and a control. Avariables
list witharm
andstrata
variable names must be passed if a stratified analysis is required. -
a_odds_ratio()
: Formatted analysis function which is used asafun
inestimate_odds_ratio()
.
Note
This function uses logistic regression for unstratified analyses, and conditional logistic regression for stratified analyses. The Wald confidence interval is calculated with the specified confidence level.
For stratified analyses, there is currently no implementation for conditional likelihood confidence intervals, therefore the likelihood confidence interval is not available as an option.
When
vars
contains only responders or non-responders no odds ratio estimation is possible so the returned values will beNA
.
See Also
Relevant helper function h_odds_ratio()
.
Examples
set.seed(12)
dta <- data.frame(
rsp = sample(c(TRUE, FALSE), 100, TRUE),
grp = factor(rep(c("A", "B"), each = 50), levels = c("A", "B")),
strata = factor(sample(c("C", "D"), 100, TRUE))
)
l <- basic_table() %>%
split_cols_by(var = "grp", ref_group = "B") %>%
estimate_odds_ratio(vars = "rsp")
build_table(l, df = dta)
# Unstratified analysis.
s_odds_ratio(
df = subset(dta, grp == "A"),
.var = "rsp",
.ref_group = subset(dta, grp == "B"),
.in_ref_col = FALSE,
.df_row = dta
)
# Stratified analysis.
s_odds_ratio(
df = subset(dta, grp == "A"),
.var = "rsp",
.ref_group = subset(dta, grp == "B"),
.in_ref_col = FALSE,
.df_row = dta,
variables = list(arm = "grp", strata = "strata")
)
a_odds_ratio(
df = subset(dta, grp == "A"),
.var = "rsp",
.ref_group = subset(dta, grp == "B"),
.in_ref_col = FALSE,
.df_row = dta
)