Summarize median survival time and CIs, percentiles of survival times, survival time range of censored/event patients.
Usage
surv_time(
  lyt,
  vars,
  is_event,
  control = control_surv_time(),
  ref_fn_censor = TRUE,
  na_str = default_na_str(),
  nested = TRUE,
  ...,
  var_labels = "Time to Event",
  show_labels = "visible",
  table_names = vars,
  .stats = c("median", "median_ci", "quantiles", "range"),
  .formats = NULL,
  .labels = NULL,
  .indent_mods = c(median_ci = 1L)
)
s_surv_time(df, .var, is_event, control = control_surv_time())
a_surv_time(
  df,
  labelstr = "",
  .var = NULL,
  .df_row = NULL,
  is_event,
  control = control_surv_time(),
  ref_fn_censor = TRUE,
  .stats = NULL,
  .formats = NULL,
  .labels = NULL,
  .indent_mods = NULL,
  na_str = default_na_str()
)Arguments
- lyt
 (
PreDataTableLayouts)
layout that analyses will be added to.- vars
 (
character)
variable names for the primary analysis variable to be iterated over.- is_event
 (
flag)TRUEif event,FALSEif time to event is censored.- control
 - 
(
list)
parameters for comparison details, specified by using the helper functioncontrol_surv_time(). Some possible parameter options are:conf_level(proportion)
confidence level of the interval for survival time.conf_type(string)
confidence interval type. Options are "plain" (default), "log", or "log-log", see more insurvival::survfit(). Note option "none" is not supported.quantiles(numeric)
vector of length two to specify the quantiles of survival time.
 - ref_fn_censor
 (
flag)
whether referential footnotes indicating censored observations should be printed when therangestatistic is included.- 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.
- var_labels
 (
character)
variable labels.- 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("surv_time")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. Each element of the vector should be a name-value pair with name corresponding to a statistic specified in.statsand value the indentation for that statistic's row label.- df
 (
data.frame)
data set containing all analysis variables.- .var
 (
string)
single variable name that is passed byrtableswhen requested by a statistics function.- labelstr
 (
string)
label of the level of the parent split currently being summarized (must be present as second argument in Content Row Functions). Seertables::summarize_row_groups()for more information.- .df_row
 (
data.frame)
data frame across all of the columns for the given row split.
Value
surv_time()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_surv_time()to the table layout.
- 
s_surv_time()returns the statistics:median: Median survival time.median_ci: Confidence interval for median time.quantiles: Survival time for two specified quantiles.range_censor: Survival time range for censored observations.range_event: Survival time range for observations with events.range: Survival time range for all observations.
 
a_surv_time()returns the corresponding list with formattedrtables::CellValue().
Functions
surv_time(): Layout-creating function which can take statistics function arguments and additional format arguments. This function is a wrapper forrtables::analyze().s_surv_time(): Statistics function which analyzes survival times.a_surv_time(): Formatted analysis function which is used asafuninsurv_time().
Examples
library(dplyr)
adtte_f <- tern_ex_adtte %>%
  filter(PARAMCD == "OS") %>%
  mutate(
    AVAL = day2month(AVAL),
    is_event = CNSR == 0
  )
df <- adtte_f %>% filter(ARMCD == "ARM A")
basic_table() %>%
  split_cols_by(var = "ARMCD") %>%
  add_colcounts() %>%
  surv_time(
    vars = "AVAL",
    var_labels = "Survival Time (Months)",
    is_event = "is_event",
    control = control_surv_time(conf_level = 0.9, conf_type = "log-log")
  ) %>%
  build_table(df = adtte_f)
#>                             ARM A          ARM B          ARM C    
#>                             (N=69)         (N=73)         (N=58)   
#> ———————————————————————————————————————————————————————————————————
#> Survival Time (Months)                                             
#>   Median                     32.0           23.9           20.8    
#>     90% CI               (22.6, 46.5)   (18.3, 29.2)   (12.9, 25.9)
#>   25% and 75%-ile         17.4, 65.3     9.8, 42.0      7.3, 37.1  
#>   Range                  0.3 to 155.5   0.1 to 154.1   0.6 to 80.7 
a_surv_time(
  df,
  .df_row = df,
  .var = "AVAL",
  is_event = "is_event"
)
#> RowsVerticalSection (in_rows) object print method:
#> ----------------------------
#>           row_name formatted_cell indent_mod        row_label
#> 1           Median           32.0          0           Median
#> 2           95% CI   (22.5, 49.3)          0           95% CI
#> 3  25% and 75%-ile     17.4, 65.3          0  25% and 75%-ile
#> 4 Range (censored)    0.8 to 63.5          0 Range (censored)
#> 5    Range (event)   0.3 to 155.5          0    Range (event)
#> 6            Range   0.3 to 155.5          0            Range
