Last updated: 2022-06-06

Checks: 7 0

Knit directory: ampel-leipzig-meld/

This reproducible R Markdown analysis was created with workflowr (version 1.7.0). The Checks tab describes the reproducibility checks that were applied when the results were created. The Past versions tab lists the development history.


Great! Since the R Markdown file has been committed to the Git repository, you know the exact version of the code that produced these results.

Great job! The global environment was empty. Objects defined in the global environment can affect the analysis in your R Markdown file in unknown ways. For reproduciblity it’s best to always run the code in an empty environment.

The command set.seed(20210604) was run prior to running the code in the R Markdown file. Setting a seed ensures that any results that rely on randomness, e.g. subsampling or permutations, are reproducible.

Great job! Recording the operating system, R version, and package versions is critical for reproducibility.

Nice! There were no cached chunks for this analysis, so you can be confident that you successfully produced the results during this run.

Great job! Using relative paths to the files within your workflowr project makes it easier to run your code on other machines.

Great! You are using Git for version control. Tracking code development and connecting the code version to the results is critical for reproducibility.

The results in this page were generated with repository version b20484a. See the Past versions tab to see a history of the changes made to the R Markdown and HTML files.

Note that you need to be careful to ensure that all relevant files for the analysis have been committed to Git prior to generating the results (you can use wflow_publish or wflow_git_commit). workflowr only checks the R Markdown file, but you know if there are other scripts or data files that it depends on. Below is the status of the Git repository when the results were generated:


Ignored files:
    Ignored:    _targets/
    Ignored:    container/
    Ignored:    logs/

Untracked files:
    Untracked:  METHODS
    Untracked:  TODO
    Untracked:  scripts/R.sh
    Untracked:  scripts/env.sh

Note that any generated files, e.g. HTML, png, CSS, etc., are not included in this status report because it is ok for generated content to have uncommitted changes.


These are the previous versions of the repository in which changes were made to the R Markdown (analysis/benchmarks.Rmd) and HTML (docs/benchmarks.html) files. If you’ve configured a remote Git repository (see ?wflow_git_remote), click on the hyperlinks in the table below to view the files as they were in that past version.

File Version Author Date Message
html b20484a Sebastian Gibb 2022-06-06 chore: rebuild site
Rmd baac1e4 Sebastian Gibb 2022-06-06 fix: bootstraping elastic net
html 983ec69 Sebastian Gibb 2022-03-17 chore: rebuild site
Rmd 057f935 Sebastian Gibb 2022-03-17 feat: add elastic net bootstrap and timeROC evaluations
Rmd d586eff Sebastian Gibb 2022-02-10 feat: add benchmark table and plots
html 373e7d8 Sebastian Gibb 2021-10-20 chore: rebuild site
html df8964f Sebastian Gibb 2021-10-15 chore: rebuild site
Rmd 0ac3045 Sebastian Gibb 2021-10-15 refactor: reset figure width
Rmd 173a1ca Sebastian Gibb 2021-10-14 refactor: increase figure width
Rmd 1e08cb2 Sebastian Gibb 2021-09-21 fix: load bmrk_aggr and set p.value
Rmd 939fcae Sebastian Gibb 2021-09-20 feat: add benchmark comparison across datasets
Rmd c66640c Sebastian Gibb 2021-09-14 feat: first nnet tests
html c66640c Sebastian Gibb 2021-09-14 feat: first nnet tests
html afa48d9 Sebastian Gibb 2021-08-07 chore: rebuild site
Rmd 4478f6a Sebastian Gibb 2021-08-02 Revert "fix: working directory for targets"
Rmd cac14f6 Sebastian Gibb 2021-08-02 fix: working directory for targets
Rmd 3957af7 Sebastian Gibb 2021-08-02 refactor: move common yaml headers into _site.yml
html 3aab3e1 Sebastian Gibb 2021-08-01 chore: rebuild site
html 3810a79 Sebastian Gibb 2021-07-15 chore: rebuild site
Rmd 1dc8b12 Sebastian Gibb 2021-07-14 feat: add mlr benchmarks

library("targets")
library("data.table")
library("mlr3")
library("mlr3misc")
library("mlr3proba")
library("mlr3viz")
library("viridis")
library("ggplot2")
tar_load(bmrk_results)
tar_load(bmrk_aggr)

agg <- bmrk_results$aggregate(msr("surv.cindex", id = "harrell"))
agg[, `:=`
    (nr = NULL, resample_result = NULL, resampling_id = NULL, iters = NULL)
]
setorder(agg, task_id, -harrell)
p.value <- 0.05

1 Overview

1.1 Table

lapply(split(agg, agg$task_id), knitr::kable, digits = 4)

$ln_eldd

task_id learner_id harrell
ln_eldd scale.ridge.tuned 0.9212
ln_eldd scale.penridge.tuned 0.9211
ln_eldd scale.svmregression.tuned 0.9197
ln_eldd scale.elasticnet.tuned 0.9195
ln_eldd scale.penlasso.tuned 0.9135
ln_eldd ridge.tuned 0.9132
ln_eldd penridge.tuned 0.9129
ln_eldd ranger.tuned 0.9119
ln_eldd scale.ranger.tuned 0.9105
ln_eldd scale.surv.rfsrc.tuned 0.9081
ln_eldd elasticnet.tuned 0.9060
ln_eldd surv.rfsrc.tuned 0.9054
ln_eldd penlasso.tuned 0.9044
ln_eldd cox 0.8632
ln_eldd scale.cox 0.8552
ln_eldd scale.coxtime.tuned 0.8472
ln_eldd scale.deepsurv.tuned 0.8438
ln_eldd scale.surv.xgboost.tuned 0.8368
ln_eldd surv.xgboost.tuned 0.8365
ln_eldd lasso.tuned 0.8335
ln_eldd scale.svmvanbelle1.tuned 0.8331
ln_eldd scale.lasso.tuned 0.8275
ln_eldd svmvanbelle1.tuned 0.7794
ln_eldd deepsurv.tuned 0.7494
ln_eldd coxtime.tuned 0.7336
ln_eldd svmregression.tuned 0.5711

$zlog_eldd

task_id learner_id harrell
zlog_eldd scale.ridge.tuned 0.9211
zlog_eldd scale.svmregression.tuned 0.9197
zlog_eldd scale.elasticnet.tuned 0.9178
zlog_eldd scale.penridge.tuned 0.9173
zlog_eldd ridge.tuned 0.9154
zlog_eldd scale.penlasso.tuned 0.9136
zlog_eldd elasticnet.tuned 0.9133
zlog_eldd penridge.tuned 0.9129
zlog_eldd penlasso.tuned 0.9129
zlog_eldd ranger.tuned 0.9120
zlog_eldd scale.ranger.tuned 0.9113
zlog_eldd surv.rfsrc.tuned 0.9074
zlog_eldd lasso.tuned 0.9054
zlog_eldd scale.surv.rfsrc.tuned 0.9042
zlog_eldd cox 0.8619
zlog_eldd scale.cox 0.8551
zlog_eldd scale.deepsurv.tuned 0.8475
zlog_eldd scale.coxtime.tuned 0.8462
zlog_eldd surv.xgboost.tuned 0.8365
zlog_eldd scale.surv.xgboost.tuned 0.8299
zlog_eldd scale.svmvanbelle1.tuned 0.8267
zlog_eldd svmvanbelle1.tuned 0.8190
zlog_eldd svmregression.tuned 0.8093
zlog_eldd scale.lasso.tuned 0.8007
zlog_eldd coxtime.tuned 0.7994
zlog_eldd deepsurv.tuned 0.7901

1.2 Boxplots

m <- agg[, max(harrell), by = task_id]
autoplot(bmrk_results) +
    geom_boxplot(aes(fill = learner_id)) +
    geom_jitter(position = position_jitter(0.2)) +
    scale_fill_viridis(discrete = TRUE) +
    geom_hline(
        aes(yintercept = V1), linetype = "dashed", color = "red", data = m
    )

Version Author Date
b20484a Sebastian Gibb 2022-06-06
983ec69 Sebastian Gibb 2022-03-17
373e7d8 Sebastian Gibb 2021-10-20
df8964f Sebastian Gibb 2021-10-15
c66640c Sebastian Gibb 2021-09-14
afa48d9 Sebastian Gibb 2021-08-07
3810a79 Sebastian Gibb 2021-07-15
autoplot(
    bmrk_results,
    measure = msr("surv.cindex", id = "uno", weight_meth = "G2")) +
    geom_boxplot(aes(fill = learner_id)) +
    geom_jitter(position = position_jitter(0.2)) +
    scale_fill_viridis(discrete = TRUE)
Warning: Removed 156 rows containing non-finite values (stat_boxplot).
Removed 156 rows containing non-finite values (stat_boxplot).
Warning: Removed 156 rows containing missing values (geom_point).

Version Author Date
b20484a Sebastian Gibb 2022-06-06
983ec69 Sebastian Gibb 2022-03-17

2 Aggregated performance

Aggregated performance across all 2 datasets.

autoplot(bmrk_aggr, type = "box", meas = "harrell") +
    geom_boxplot(aes(fill = learner_id)) +
    geom_jitter(position = position_jitter(0.2)) +
    scale_fill_viridis(discrete = TRUE)

Version Author Date
b20484a Sebastian Gibb 2022-06-06
983ec69 Sebastian Gibb 2022-03-17
373e7d8 Sebastian Gibb 2021-10-20
df8964f Sebastian Gibb 2021-10-15
autoplot(bmrk_aggr, type = "box", meas = "uno") +
    geom_boxplot(aes(fill = learner_id)) +
    geom_jitter(position = position_jitter(0.2)) +
    scale_fill_viridis(discrete = TRUE)
Warning: Removed 50 rows containing non-finite values (stat_boxplot).
Removed 50 rows containing non-finite values (stat_boxplot).
Warning: Removed 50 rows containing missing values (geom_point).

Version Author Date
b20484a Sebastian Gibb 2022-06-06
983ec69 Sebastian Gibb 2022-03-17

3 Pairwise comparison

p-value is set to 0.05 (otherwise an error is thrown because of insignificant results).

autoplot(
    bmrk_aggr, type = "fn", meas = "harrell", p.value = p.value,
    col = palette.colors(2L)[2L]
)

Version Author Date
983ec69 Sebastian Gibb 2022-03-17
df8964f Sebastian Gibb 2021-10-15

4 Critical difference

p-value is set to 0.05 (otherwise an error is thrown because of insignificant results).

autoplot(
    bmrk_aggr, type = "cd", meas = "harrell", style = 2, p.value = p.value,
    minimize = FALSE
) + scale_color_viridis(discrete = TRUE)

Version Author Date
b20484a Sebastian Gibb 2022-06-06
983ec69 Sebastian Gibb 2022-03-17
373e7d8 Sebastian Gibb 2021-10-20
df8964f Sebastian Gibb 2021-10-15

sessionInfo()
R version 4.1.3 (2022-03-10)
Platform: x86_64-unknown-linux-gnu (64-bit)

Matrix products: default
BLAS/LAPACK: /gnu/store/ras6dprsw3wm3swk23jjp8ww5dwxj333-openblas-0.3.18/lib/libopenblasp-r0.3.18.so

locale:
[1] C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] ggplot2_3.3.5     viridis_0.6.2     viridisLite_0.4.0 mlr3viz_0.5.9    
[5] mlr3proba_0.4.11  mlr3misc_0.10.0   mlr3_0.13.3       data.table_1.14.2
[9] targets_0.12.0   

loaded via a namespace (and not attached):
 [1] fs_1.5.2                bbotk_0.5.2             rprojroot_2.0.3        
 [4] mlr3pipelines_0.4.0     mlr3learners_0.5.2      tools_4.1.3            
 [7] backports_1.4.1         bslib_0.3.1             utf8_1.2.2             
[10] R6_2.5.1                colorspace_2.0-3        withr_2.5.0            
[13] tidyselect_1.1.2        gridExtra_2.3           processx_3.5.3         
[16] compiler_4.1.3          git2r_0.30.1            cli_3.2.0              
[19] ooplah_0.2.0            lgr_0.4.3               labeling_0.4.2         
[22] bookdown_0.25           sass_0.4.1              BWStest_0.2.2          
[25] scales_1.1.1            checkmate_2.0.0         mvtnorm_1.1-3          
[28] callr_3.7.0             multcompView_0.1-8      palmerpenguins_0.1.0   
[31] mlr3tuning_0.13.0       stringr_1.4.0           digest_0.6.29          
[34] mlr3extralearners_0.5.9 rmarkdown_2.13          param6_0.2.4           
[37] paradox_0.8.0           set6_0.2.4              pkgconfig_2.0.3        
[40] htmltools_0.5.2         parallelly_1.31.0       mlr3benchmark_0.1.3    
[43] fastmap_1.1.0           highr_0.9               rlang_1.0.2            
[46] SuppDists_1.1-9.7       jquerylib_0.1.4         generics_0.1.2         
[49] farver_2.1.0            jsonlite_1.8.0          dplyr_1.0.8            
[52] magrittr_2.0.3          Matrix_1.4-1            Rcpp_1.0.8.3           
[55] munsell_0.5.0           fansi_1.0.3             lifecycle_1.0.1        
[58] stringi_1.7.6           whisker_0.4             yaml_2.3.5             
[61] MASS_7.3-56             grid_4.1.3              parallel_4.1.3         
[64] dictionar6_0.1.3        listenv_0.8.0           promises_1.2.0.1       
[67] crayon_1.5.1            lattice_0.20-45         PMCMRplus_1.9.4        
[70] splines_4.1.3           knitr_1.38              ps_1.6.0               
[73] pillar_1.7.0            igraph_1.3.0            uuid_1.0-4             
[76] base64url_1.4           kSamples_1.2-9          codetools_0.2-18       
[79] glue_1.6.2              evaluate_0.15           vctrs_0.4.0            
[82] httpuv_1.6.5            distr6_1.6.9            gtable_0.3.0           
[85] purrr_0.3.4             future_1.24.0           cachem_1.0.6           
[88] xfun_0.30               Rmpfr_0.8-7             later_1.3.0            
[91] survival_3.3-1          tibble_3.1.6            memoise_2.0.1          
[94] workflowr_1.7.0         gmp_0.6-5               globals_0.14.0         
[97] ellipsis_0.3.2