Recurrence-free survival times, in days, of 686 patients with node-positive breast cancer from the German Breast Cancer Study Group (Collett, 2023, Example 6.5).
Format
A data frame with 686 rows and 11 variables:
- id
Patient number.
- treat
Hormonal treatment: 0 = no tamoxifen, 1 = tamoxifen.
- age
Age of the patient in years.
- men
Menopausal status: 1 = premenopausal, 2 = postmenopausal.
- size
Tumour size in mm.
- grade
Tumour grade (1, 2 or 3).
- nodes
Number of positive lymph nodes.
- prog
Progesterone receptor status (femtomoles).
- oest
Oestrogen receptor status (femtomoles).
- time
Recurrence-free survival time in days.
- status
Event indicator: 1 = relapse or death, 0 = right-censored.
Source
Collett, D. (2023) Modelling Survival Data in Medical Research, 4th ed. Chapman & Hall/CRC, Example 6.5 (Table 6.1). Data from Schumacher et al. (1994) and Sauerbrei and Royston (1999).
Details
The patients had primary, histologically proven, non-metastatic node-positive breast cancer treated with mastectomy; the study compared three with six cycles of chemotherapy and investigated additional hormonal treatment. Recurrence-free survival is the time from entry until a recurrence of the cancer or death, and there are 299 events.
The example introduces flexible parametric (Royston-Parmar) models with a treatment effect and several prognostic variables (Examples 6.5 and 6.6).
Aliases
The data set is available under the aliases d6.5, d6.6; dX.Y is the
alias for the data set used in Example X.Y of Collett (2023). See
dataset_by_exercise for the complete index.
Examples
# Collett (2023), Chapter 17 style -----------------------------------
# Examples 6.5 and 6.6: log-logistic (proportional odds) model
survival::survreg(
survival::Surv(time, status) ~ treat + age + men + size + grade +
nodes + prog + oest,
data = breast_rfs, dist = "loglogistic"
)
#> Call:
#> survival::survreg(formula = survival::Surv(time, status) ~ treat +
#> age + men + size + grade + nodes + prog + oest, data = breast_rfs,
#> dist = "loglogistic")
#>
#> Coefficients:
#> (Intercept) treat age men size
#> 7.8239614739 0.3211627402 0.0130429842 -0.2890810649 -0.0066881339
#> grade nodes prog oest
#> -0.2300284356 -0.0516203143 0.0016303009 -0.0000607376
#>
#> Scale= 0.5701717
#>
#> Loglik(model)= -2567 Loglik(intercept only)= -2627.9
#> Chisq= 121.9 on 8 degrees of freedom, p= <2e-16
#> n= 686
# Modern tools --------------------------------------------------------
if (requireNamespace("flexsurv", quietly = TRUE)) {
flexsurv::flexsurvspline(
survival::Surv(time, status) ~ treat + age + men + size + grade +
nodes + prog + oest,
data = breast_rfs, k = 1
)
}
#> Call:
#> flexsurv::flexsurvspline(formula = survival::Surv(time, status) ~
#> treat + age + men + size + grade + nodes + prog + oest, data = breast_rfs,
#> k = 1)
#>
#> Estimates:
#> data mean est L95% U95% se exp(est)
#> gamma0 NA -1.92e+01 -2.24e+01 -1.60e+01 1.65e+00 NA
#> gamma1 NA 2.76e+00 2.23e+00 3.28e+00 2.68e-01 NA
#> gamma2 NA 2.15e-01 1.40e-01 2.89e-01 3.79e-02 NA
#> treat 3.59e-01 -3.33e-01 -5.86e-01 -8.01e-02 1.29e-01 7.17e-01
#> age 5.31e+01 -8.96e-03 -2.70e-02 9.06e-03 9.20e-03 9.91e-01
#> men 1.58e+00 2.62e-01 -9.64e-02 6.21e-01 1.83e-01 1.30e+00
#> size 2.93e+01 7.55e-03 -9.43e-05 1.52e-02 3.90e-03 1.01e+00
#> grade 2.12e+00 2.78e-01 7.02e-02 4.85e-01 1.06e-01 1.32e+00
#> nodes 5.01e+00 5.04e-02 3.60e-02 6.49e-02 7.37e-03 1.05e+00
#> prog 1.10e+02 -2.23e-03 -2.56e-03 -1.90e-03 1.67e-04 9.98e-01
#> oest 9.63e+01 1.68e-04 -1.60e-04 4.95e-04 1.67e-04 1.00e+00
#> L95% U95%
#> gamma0 NA NA
#> gamma1 NA NA
#> gamma2 NA NA
#> treat 5.57e-01 9.23e-01
#> age 9.73e-01 1.01e+00
#> men 9.08e-01 1.86e+00
#> size 1.00e+00 1.02e+00
#> grade 1.07e+00 1.62e+00
#> nodes 1.04e+00 1.07e+00
#> prog 9.97e-01 9.98e-01
#> oest 1.00e+00 1.00e+00
#>
#> N = 686, Events: 299, Censored: 387
#> Total time at risk: 771400
#> Log-likelihood = -2562.974, df = 11
#> AIC = 5147.949
#>