The analyze function summarize_ancova() creates a layout element to summarize ANCOVA results.
This function can be used to analyze multiple endpoints and/or multiple timepoints within the response variable(s)
specified as vars.
Additional variables for the analysis, namely an arm (grouping) variable and covariate variables, can be defined
via the variables argument. See below for more details on how to specify variables. An interaction term can
be implemented in the model if needed. The interaction variable that should interact with the arm variable is
specified via the interaction_term parameter, and the specific value of interaction_term for which to extract
the ANCOVA results via the interaction_y parameter.
Usage
summarize_ancova(
lyt,
vars,
variables,
conf_level,
interaction_y = FALSE,
interaction_item = NULL,
var_labels,
na_str = default_na_str(),
nested = TRUE,
...,
show_labels = "visible",
table_names = vars,
.stats = NULL,
.formats = NULL,
.labels = NULL,
.indent_mods = NULL
)
s_ancova(
df,
.var,
.df_row,
variables,
.ref_group,
.in_ref_col,
conf_level,
interaction_y = FALSE,
interaction_item = NULL
)
a_ancova(
df,
.var,
.df_row,
variables,
.ref_group,
.in_ref_col,
conf_level,
interaction_y = FALSE,
interaction_item = 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, with expected elements:arm(string)
group variable, for which the covariate adjusted means of multiple groups will be summarized. Specifically, the first level ofarmvariable is taken as the reference group.covariates(character)
a vector that can contain single variable names (such as"X1"), and/or interaction terms indicated by"X1 * X2".
- conf_level
(
proportion)
confidence level of the interval.- interaction_y
(
stringorflag)
a selected item inside of theinteraction_itemvariable which will be used to select the specific ANCOVA results. if the interaction is not needed, the default option isFALSE.- interaction_item
(
stringorNULL)
name of the variable that should have interactions with arm. if the interaction is not needed, the default option isNULL.- 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.- ...
additional arguments for the lower level functions.
- 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.- .stats
(
character)
statistics to select for the table. Runget_stats("summarize_ancova")to see available statistics for this function.- .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.- .df_row
(
data.frame)
data set that includes all the variables that are called in.varandvariables.- .ref_group
(
data.frameorvector)
the data corresponding to the reference group.- .in_ref_col
(
flag)TRUEwhen working with the reference level,FALSEotherwise.
Value
summarize_ancova()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_ancova()to the table layout.
-
s_ancova()returns a named list of 5 statistics:n: Count of complete sample size for the group.lsmean: Estimated marginal means in the group.lsmean_diff: Difference in estimated marginal means in comparison to the reference group. If working with the reference group, this will be empty.lsmean_diff_ci: Confidence level for difference in estimated marginal means in comparison to the reference group.pval: p-value (not adjusted for multiple comparisons).
a_ancova()returns the corresponding list with formattedrtables::CellValue().
Functions
summarize_ancova(): Layout-creating function which can take statistics function arguments and additional format arguments. This function is a wrapper forrtables::analyze().s_ancova(): Statistics function that produces a named list of results of the investigated linear model.a_ancova(): Formatted analysis function which is used asafuninsummarize_ancova().
Examples
basic_table() %>%
split_cols_by("Species", ref_group = "setosa") %>%
add_colcounts() %>%
summarize_ancova(
vars = "Petal.Length",
variables = list(arm = "Species", covariates = NULL),
table_names = "unadj",
conf_level = 0.95, var_labels = "Unadjusted comparison",
.labels = c(lsmean = "Mean", lsmean_diff = "Difference in Means")
) %>%
summarize_ancova(
vars = "Petal.Length",
variables = list(arm = "Species", covariates = c("Sepal.Length", "Sepal.Width")),
table_names = "adj",
conf_level = 0.95, var_labels = "Adjusted comparison (covariates: Sepal.Length and Sepal.Width)"
) %>%
build_table(iris)
#> setosa versicolor virginica
#> (N=50) (N=50) (N=50)
#> —————————————————————————————————————————————————————————————————————————————————————————————————————
#> Unadjusted comparison
#> n 50 50 50
#> Mean 1.46 4.26 5.55
#> Difference in Means 2.80 4.09
#> 95% CI (2.63, 2.97) (3.92, 4.26)
#> p-value <0.0001 <0.0001
#> Adjusted comparison (covariates: Sepal.Length and Sepal.Width)
#> n 50 50 50
#> Adjusted Mean 2.02 4.19 5.07
#> Difference in Adjusted Means 2.17 3.05
#> 95% CI (1.96, 2.38) (2.81, 3.29)
#> p-value <0.0001 <0.0001
