Broom methods for tidy cuminc objects
object of class 'tidycuminc'
Numeric vector of times to obtain risk estimates at
Logical indicating whether or not to include a confidence
interval in the tidied output. Defaults to FALSE
.
Level of the confidence interval. Default matches that in
cuminc(conf.level=)
(typically, 0.95)
not used
a tibble
tidy()
data frameThe returned tidy()
data frame returns the following columns:
Column Name | Description |
outcome | Competing Event Outcome |
time | Numeric follow-up time |
estimate | Risk estimate |
std.error | Standard Error |
n.risk | Number at risk at the specified time |
n.event | If the times= argument is missing, then the number of events that occurred at time t . Otherwise, it is the cumulative number of events that have occurred since the last time listed. |
n.censor | If the times= argument is missing, then the number of censored obs at time t . Otherwise, it is the cumulative number of censored obs that have occurred since the last time listed. |
cum.event | Cumulative number of events at specified time |
cum.censor | Cumulative number of censored observations at specified time |
If tidy(time=)
is specified, then n.event
and n.censor
are the
cumulative number of events/censored in the interval. For example, if
tidy(time = c(0, 12, 18))
is passed, n.event
and n.censor
at time = 18
are the cumulative number of events/censored in the interval (12, 18]
.
The p-values reported in cuminc()
, glance.tidycuminc()
and add_p.tbl_cuminc()
are Gray's test as described in
Gray RJ (1988) A class of K-sample tests for comparing the cumulative incidence of a competing risk, Annals of Statistics, 16:1141-1154.
The confidence intervals for cumulative incidence estimates use the recommended method in Competing Risks: A Practical Perspective by Melania Pintilie.
$$x^{exp(±z * se / (x * log(x)))}$$
where \(x\) is the cumulative incidence estimate, \(se\) is the standard error estimate, and \(z\) is the z-score associated with the confidence level of the interval, e.g. \(z = 1.96\) for a 95% CI.
Other cuminc() functions:
cuminc()
cuminc <- cuminc(Surv(ttdeath, death_cr) ~ trt, trial)
tidy(cuminc)
#> # A tibble: 444 × 12
#> time outcome strata estimate std.error conf.low conf.high n.risk n.event
#> <dbl> <chr> <fct> <dbl> <dbl> <dbl> <dbl> <int> <int>
#> 1 0 death from… Drug A 0 0 NA NA 98 0
#> 2 3.53 death from… Drug A 0 0 NA NA 98 0
#> 3 5.33 death from… Drug A 0 0 NA NA 97 0
#> 4 6.32 death from… Drug A 0 0 NA NA 97 0
#> 5 7.27 death from… Drug A 0.0102 0.0102 8.84e-4 0.0503 97 1
#> 6 7.38 death from… Drug A 0.0204 0.0144 3.90e-3 0.0652 96 1
#> 7 8.37 death from… Drug A 0.0204 0.0144 3.90e-3 0.0652 95 0
#> 8 8.71 death from… Drug A 0.0204 0.0144 3.90e-3 0.0652 94 0
#> 9 9.24 death from… Drug A 0.0204 0.0144 3.90e-3 0.0652 94 0
#> 10 9.73 death from… Drug A 0.0204 0.0144 3.90e-3 0.0652 94 0
#> # ℹ 434 more rows
#> # ℹ 3 more variables: n.censor <int>, cum.event <int>, cum.censor <int>
glance(cuminc)
#> # A tibble: 1 × 8
#> outcome_1 statistic_1 df_1 p.value_1 outcome_2 statistic_2 df_2 p.value_2
#> <chr> <dbl> <dbl> <dbl> <chr> <dbl> <dbl> <dbl>
#> 1 death from … 1.99 1 0.159 death ot… 0.0886 1 0.766
# restructure glance to one line per outcome
glance(cuminc) %>%
tidyr::pivot_longer(
everything(),
names_to = c(".value", "outcome_id"),
names_pattern = "(.*)_(.*)"
)
#> # A tibble: 2 × 5
#> outcome_id outcome statistic df p.value
#> <chr> <chr> <dbl> <dbl> <dbl>
#> 1 1 death from cancer 1.99 1 0.159
#> 2 2 death other causes 0.0886 1 0.766