The analyze function test_proportion_diff() creates a layout element to test the difference between two
proportions. The primary analysis variable, vars, indicates whether a response has occurred for each record. See
the method parameter for options of methods to use to calculate the p-value. Additionally, a stratification
variable can be supplied via the strata element of the variables argument.
Usage
test_proportion_diff(
lyt,
vars,
variables = list(strata = NULL),
method = c("chisq", "schouten", "fisher", "cmh"),
var_labels = vars,
na_str = default_na_str(),
nested = TRUE,
show_labels = "hidden",
table_names = vars,
section_div = NA_character_,
...,
na_rm = TRUE,
.stats = c("pval"),
.stat_names = NULL,
.formats = c(pval = "x.xxxx | (<0.0001)"),
.labels = NULL,
.indent_mods = c(pval = 1L)
)
s_test_proportion_diff(
df,
.var,
.ref_group,
.in_ref_col,
variables = list(strata = NULL),
method = c("chisq", "schouten", "fisher", "cmh"),
...
)
a_test_proportion_diff(
df,
...,
.stats = NULL,
.stat_names = NULL,
.formats = NULL,
.labels = NULL,
.indent_mods = NULL
)Arguments
- lyt
(
PreDataTableLayouts)
layout that analyses will be added to.- vars
(
character)
variable names for the primary analysis variable to be iterated over.- variables
(named
listofstring)
list of additional analysis variables.- method
(
string)
one ofchisq,cmh,fisher, orschouten; specifies the test used to calculate the p-value.- var_labels
(
character)
variable labels.- na_str
(
string)
string used to replace allNAor empty values in the output.- nested
(
flag)
whether this layout instruction should be applied within the existing layout structure _if possible (TRUE, the default) or as a new top-level element (FALSE). Ignored if it would nest a split. underneath analyses, which is not allowed.- show_labels
(
string)
label visibility: one of "default", "visible" and "hidden".- table_names
(
character)
this can be customized in the case that the samevarsare analyzed multiple times, to avoid warnings fromrtables.- section_div
(
string)
string which should be repeated as a section divider after each group defined by this split instruction, orNA_character_(the default) for no section divider.- ...
additional arguments for the lower level functions.
- na_rm
(
flag)
whetherNAvalues should be removed fromxprior to analysis.- .stats
-
(
character)
statistics to select for the table.Options are:
'pval' - .stat_names
(
character)
names of the statistics that are passed directly to name single statistics (.stats). This option is visible when producingrtables::as_result_df()withmake_ard = TRUE.- .formats
(named
characterorlist)
formats for the statistics. See Details inanalyze_varsfor more information on the"auto"setting.- .labels
(named
character)
labels for the statistics (without indent).- .indent_mods
(named
integer)
indent modifiers for the labels. Defaults to 0, which corresponds to the unmodified default behavior. Can be negative.- df
(
data.frame)
data set containing all analysis variables.- .var
(
string)
single variable name that is passed byrtableswhen requested by a statistics function.- .ref_group
(
data.frameorvector)
the data corresponding to the reference group.- .in_ref_col
(
flag)TRUEwhen working with the reference level,FALSEotherwise.
Value
test_proportion_diff()returns a layout object suitable for passing to further layouting functions, or tortables::build_table(). Adding this function to anrtablelayout will add formatted rows containing the statistics froms_test_proportion_diff()to the table layout.
s_test_proportion_diff()returns a namedlistwith a single itempvalwith an attributelabeldescribing the method used. The p-value tests the null hypothesis that proportions in two groups are the same.
a_test_proportion_diff()returns the corresponding list with formattedrtables::CellValue().
Functions
test_proportion_diff(): Layout-creating function which can take statistics function arguments and additional format arguments. This function is a wrapper forrtables::analyze().s_test_proportion_diff(): Statistics function which tests the difference between two proportions.a_test_proportion_diff(): Formatted analysis function which is used asafunintest_proportion_diff().
Examples
dta <- data.frame(
rsp = sample(c(TRUE, FALSE), 100, TRUE),
grp = factor(rep(c("A", "B"), each = 50)),
strata = factor(rep(c("V", "W", "X", "Y", "Z"), each = 20))
)
# With `rtables` pipelines.
l <- basic_table() %>%
split_cols_by(var = "grp", ref_group = "B") %>%
test_proportion_diff(
vars = "rsp",
method = "cmh", variables = list(strata = "strata")
)
build_table(l, df = dta)
#> A B
#> —————————————————————————————————————————————————————
#> p-value (Cochran-Mantel-Haenszel Test) 1.0000
