insightsengineering / tern

Table, Listings, and Graphs (TLG) library for common outputs used in clinical trials
https://insightsengineering.github.io/tern/
Other
77 stars 22 forks source link

Add `riskdiff` argument to `tabulate_rsp_subgroups` and `tabulate_survival_subgroups` #1276

Closed edelarua closed 3 months ago

edelarua commented 3 months ago

Pull Request

Fixes #1246

Note for reviewers: tabulate_rsp_subgroups and tabulate_survival_subgroups are almost identical so changes made to each function are also nearly identical.

Also refactors the functions to add the .formats argument.

github-actions[bot] commented 3 months ago

Unit Tests Summary

    1 files     83 suites   1m 13s :stopwatch:   847 tests   835 :white_check_mark:  12 :zzz: 0 :x: 1 820 runs  1 143 :white_check_mark: 677 :zzz: 0 :x:

Results for commit ebdaed51.

:recycle: This comment has been updated with latest results.

github-actions[bot] commented 3 months ago

Unit Test Performance Difference

Test Suite $Status$ Time on main $±Time$ $±Tests$ $±Skipped$ $±Failures$ $±Errors$
response_subgroups 💔 $2.94$ $+1.09$ $+4$ $+2$ $0$ $0$
survival_duration_subgroups 💔 $3.56$ $+1.31$ $+4$ $+2$ $0$ $0$
Additional test case details | Test Suite | $Status$ | Time on `main` | $±Time$ | Test Case | |:-----|:----:|:----:|:----:|:-----| | response_subgroups | 👶 | | $+0.52$ | tabulate_rsp_subgroups_.formats_argument_works_as_expected | | response_subgroups | 👶 | | $+0.57$ | tabulate_rsp_subgroups_riskdiff_argument_works_as_expected | | survival_duration_subgroups | 👶 | | $+0.57$ | tabulate_survival_subgroups_.formats_argument_works_as_expected | | survival_duration_subgroups | 👶 | | $+0.62$ | tabulate_survival_subgroups_riskdiff_argument_works_as_expected |

Results for commit ed30cdc2ae1071dadd363accac07369f58c8af0a

♻️ This comment has been updated with latest results.

github-actions[bot] commented 3 months ago

badge

Code Coverage Summary

Filename                                   Stmts    Miss  Cover    Missing
---------------------------------------  -------  ------  -------  ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
R/abnormal_by_baseline.R                      65       0  100.00%
R/abnormal_by_marked.R                        55       5  90.91%   78-82
R/abnormal_by_worst_grade_worsen.R           116       3  97.41%   242-244
R/abnormal_by_worst_grade.R                   60       0  100.00%
R/abnormal.R                                  43       0  100.00%
R/analyze_variables.R                        162       3  98.15%   488, 512, 628
R/analyze_vars_in_cols.R                     176      33  81.25%   179, 202-207, 222, 236-237, 245-253, 259-265, 344-350
R/bland_altman.R                              92       1  98.91%   43
R/combination_function.R                       9       0  100.00%
R/compare_variables.R                         84       5  94.05%   130-134, 246, 305
R/control_incidence_rate.R                    10       0  100.00%
R/control_logistic.R                           7       0  100.00%
R/control_step.R                              23       1  95.65%   58
R/control_survival.R                          15       0  100.00%
R/count_cumulative.R                          50       1  98.00%   67
R/count_missed_doses.R                        34       0  100.00%
R/count_occurrences_by_grade.R               113       5  95.58%   101, 151-153, 156
R/count_occurrences.R                        115       1  99.13%   108
R/count_patients_events_in_cols.R             67       1  98.51%   53
R/count_patients_with_event.R                 47       0  100.00%
R/count_patients_with_flags.R                 58       4  93.10%   56-57, 62-63
R/count_values.R                              27       0  100.00%
R/cox_regression_inter.R                     154       0  100.00%
R/cox_regression.R                           161       0  100.00%
R/coxph.R                                    167       7  95.81%   191-195, 238, 253, 261, 267-268
R/d_pkparam.R                                406       0  100.00%
R/decorate_grob.R                            113       0  100.00%
R/desctools_binom_diff.R                     621      64  89.69%   53, 88-89, 125-126, 129, 199, 223-232, 264, 266, 286, 290, 294, 298, 353, 356, 359, 362, 422, 430, 439, 444-447, 454, 457, 466, 469, 516-517, 519-520, 522-523, 525-526, 593, 604-616, 620, 663, 676, 680
R/df_explicit_na.R                            30       0  100.00%
R/estimate_multinomial_rsp.R                  50       1  98.00%   63
R/estimate_proportion.R                      205      12  94.15%   78-85, 89, 94, 315, 481, 587
R/fit_rsp_step.R                              36       0  100.00%
R/fit_survival_step.R                         36       0  100.00%
R/formatting_functions.R                     183       2  98.91%   143, 278
R/g_forest.R                                 585      60  89.74%   241, 253-256, 261-262, 276, 278, 288-291, 336-339, 346, 415, 502, 515, 519-520, 525-526, 539, 555, 602, 633, 708, 717, 723, 742, 797-817, 820, 831, 850, 905, 908, 1043-1048
R/g_ipp.R                                    133       0  100.00%
R/g_km.R                                     350      57  83.71%   286-289, 308-310, 364-367, 401, 429, 433-476, 483-487
R/g_lineplot.R                               249      23  90.76%   196, 370-377, 416-426, 518, 524, 526
R/g_step.R                                    68       1  98.53%   109
R/g_waterfall.R                               47       0  100.00%
R/h_adsl_adlb_merge_using_worst_flag.R        73       0  100.00%
R/h_biomarkers_subgroups.R                    46       0  100.00%
R/h_cox_regression.R                         110       0  100.00%
R/h_km.R                                     509      41  91.94%   137, 189-194, 287, 378, 380-381, 392-394, 413, 420-421, 423-425, 433-435, 460, 465-468, 651-654, 1108-1119
R/h_logistic_regression.R                    468       3  99.36%   203-204, 273
R/h_map_for_count_abnormal.R                  54       0  100.00%
R/h_pkparam_sort.R                            15       0  100.00%
R/h_response_biomarkers_subgroups.R           90      12  86.67%   50-55, 107-112
R/h_response_subgroups.R                     178      18  89.89%   257-270, 329-334
R/h_stack_by_baskets.R                        64       1  98.44%   89
R/h_step.R                                   180       0  100.00%
R/h_survival_biomarkers_subgroups.R           88       6  93.18%   111-116
R/h_survival_duration_subgroups.R            207      18  91.30%   259-271, 336-341
R/imputation_rule.R                           17       2  88.24%   54-55
R/incidence_rate.R                            96       7  92.71%   44-51
R/logistic_regression.R                      102       0  100.00%
R/missing_data.R                              21       3  85.71%   32, 66, 76
R/odds_ratio.R                               109       0  100.00%
R/prop_diff_test.R                            91       0  100.00%
R/prop_diff.R                                265      16  93.96%   62-65, 97, 282-289, 432, 492, 597
R/prune_occurrences.R                         57      10  82.46%   138-142, 188-192
R/response_biomarkers_subgroups.R             69       6  91.30%   192-197
R/response_subgroups.R                       206      12  94.17%   95-100, 247-248, 323, 374-376
R/riskdiff.R                                  65       7  89.23%   102-105, 114, 124-125
R/rtables_access.R                            38       4  89.47%   159-162
R/score_occurrences.R                         20       1  95.00%   124
R/split_cols_by_groups.R                      49       0  100.00%
R/stat.R                                      59       3  94.92%   73-74, 129
R/summarize_ancova.R                         106       2  98.11%   174, 179
R/summarize_change.R                          30       0  100.00%
R/summarize_colvars.R                         10       0  100.00%
R/summarize_coxreg.R                         172       2  98.84%   203, 430
R/summarize_glm_count.R                      209      27  87.08%   192-193, 307, 463-495
R/summarize_num_patients.R                    93       5  94.62%   108-110, 244-245
R/summarize_patients_exposure_in_cols.R       96       1  98.96%   42
R/survival_biomarkers_subgroups.R             78       6  92.31%   113-118
R/survival_coxph_pairwise.R                   79      11  86.08%   45-46, 58-66
R/survival_duration_subgroups.R              211       6  97.16%   119-124
R/survival_time.R                             79       0  100.00%
R/survival_timepoint.R                       113       7  93.81%   120-126
R/utils_checkmate.R                           68       0  100.00%
R/utils_default_stats_formats_labels.R       124       1  99.19%   72
R/utils_factor.R                             109       2  98.17%   84, 302
R/utils_ggplot.R                             110       0  100.00%
R/utils_grid.R                               126       5  96.03%   164, 279-286
R/utils_rtables.R                            100       9  91.00%   39, 46, 51, 58-62, 403-404
R/utils_split_funs.R                          52       2  96.15%   82, 94
R/utils.R                                    141       7  95.04%   118, 121, 124, 128, 137-138, 332
TOTAL                                      10474     553  94.72%

Diff against main

Filename                             Stmts    Miss  Cover
---------------------------------  -------  ------  --------
R/h_biomarkers_subgroups.R              +1       0  +100.00%
R/response_biomarkers_subgroups.R       +1       0  +0.13%
R/response_subgroups.R                 +14      +2  -0.62%
R/riskdiff.R                            +6       0  +1.10%
R/survival_duration_subgroups.R        +14       0  +0.20%
TOTAL                                  +36      +2  -0.00%

Results for commit: ebdaed5172c618de745e94f9c5eb4108d7de9eac

Minimum allowed coverage is 80%

:recycle: This comment has been updated with latest results