knitr::opts_chunk$set( collapse = TRUE, comment = "#>" )

In this vignette we showcase the various plots can be made with the package.

We first start producing the treatment effect estimates for all subgroups, using
the `unadj`

, `modav`

and `bagged`

functions.

library(ggplot2) library(subtee) ################################################################################ # We use the dataset from Rosenkranz (2016) https://onlinelibrary.wiley.com/doi/abs/10.1002/bimj.201500147 # to illustrate the methods proposed in this work. # The data comes from a clinical trial of an prostate cancer # treatment # Data is loaded from Royston, Patrick, and Willi Sauerbrei. # Multivariable model-building: a pragmatic approach to # regression anaylsis based on fractional polynomials for # modelling continuous variables. Vol. 777. John Wiley & Sons, 2008. # https://www.imbi.uni-freiburg.de/Royston-Sauerbrei-book prca = get_prca_data() ## first create candidate subgroups cand.groups <- subtee::subbuild(prca, dupl.rm = TRUE, BM == 1, PF == 1, HX == 1, STAGE == 4, AGE > 65, WT > 100) fitdat <- cbind(prca, cand.groups) subgr.names = names(cand.groups) prog = as.formula(paste(" ~ ", paste0("`", names(cand.groups),"`", collapse = " + "))) ### Unadjusted estimates res_unadj = unadj(resp = "SURVTIME", trt = "RX", subgr = subgr.names, data = fitdat, covars = prog, event = "CENS", fitfunc = "coxph") ### ModelAveraging estimates res_modav = modav(resp = "SURVTIME", trt = "RX", subgr = subgr.names, data = fitdat, covars = prog, event = "CENS", fitfunc = "coxph") ### Bagged estimates set.seed(321231) # set seed for reproducible results in the bootstrap samples res_bagged = bagged(resp = "SURVTIME", trt = "RX", subgr = subgr.names, data = fitdat, covars = prog, event = "CENS", fitfunc = "coxph", select.by = "BIC", B = 200) #B = 2000)

The objects resulting from calling `unadj`

, `modav`

and `bagged`

are `subtee`

objects that contain the results in a format that can be used to produce plots.
For example, the following produces a forest plot showing treatment effect
estimates for the subgroups and their complements:

ggplot(aes(y = Subset, x = trtEff, xmin = LB, xmax = UB, colour = Subset), data = res_unadj$trtEff) + geom_point(size = 2) + geom_errorbarh(size = 1, show.legend = FALSE, height = 0) + facet_grid(Group ~ .)

`plot`

function provided in the packageThe default option for the generic plot function in the package for `subtee`

objects shows the treatment effect in subgroups along with their confidence intervals.

```
plot(res_unadj)
```

Note that only the treatment effect estimates in subgroups are displayed. Setting the option `show.compl = TRUE`

displays the treatment effect estimates in both subgroups and complements.

plot(res_unadj, show.compl = TRUE)

When using the `plot`

function to `subtee`

objects with unadjusted or model averaging estimates, the same layout is used. However, when the a `subtee`

object generated with the `bagged`

funciton is provided. it will only show the selected subgroup.

plot(res_bagged, show.compl = TRUE)

When more than one object is provided, the plot shows the comparison between different estimation techniques.

plot(res_unadj, res_modav, palette = "Dark2")

In this case it is again possible to set `show.compl = TRUE`

.

plot(res_unadj, res_modav, show.compl = TRUE)

And if bagged estimates are provided, it will only show the selected subgroup.

plot(res_unadj, res_modav, res_bagged, show.compl = TRUE)

The `plot`

function has also the option to show the treatment effect difference between subgroup and complement setting
`type = "trtEffDiff"`

.

plot(res_unadj, type = "trtEffDiff")

And it is also possible to compare

plot(res_unadj, res_modav, type = "trtEffDiff")

plot(res_unadj, res_modav, res_bagged, type = "trtEffDiff")

**Any scripts or data that you put into this service are public.**

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.