{"id":29625199,"url":"https://github.com/novartis/monitos","last_synced_at":"2025-07-21T06:07:37.635Z","repository":{"id":226470688,"uuid":"765376158","full_name":"Novartis/monitOS","owner":"Novartis","description":"Monitoring overall survival in pivotal trials for indolent cancer","archived":false,"fork":false,"pushed_at":"2025-07-17T15:37:47.000Z","size":522,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-17T18:49:00.527Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"R","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Novartis.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2024-02-29T19:54:54.000Z","updated_at":"2025-04-29T16:27:18.000Z","dependencies_parsed_at":"2024-03-07T19:28:03.786Z","dependency_job_id":"f04a9c73-5dca-4560-b21d-f7b70462449e","html_url":"https://github.com/Novartis/monitOS","commit_stats":null,"previous_names":["novartis/monitos"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/Novartis/monitOS","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Novartis%2FmonitOS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Novartis%2FmonitOS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Novartis%2FmonitOS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Novartis%2FmonitOS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Novartis","download_url":"https://codeload.github.com/Novartis/monitOS/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Novartis%2FmonitOS/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266248501,"owners_count":23899056,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-07-21T06:07:37.011Z","updated_at":"2025-07-21T06:07:37.629Z","avatar_url":"https://github.com/Novartis.png","language":"R","funding_links":[],"categories":[],"sub_categories":[],"readme":"# monitOS: Monitoring overall survival in pivotal trials in indolent cancers\n\n\u003c!-- badges: start --\u003e\n\n[![CRAN](https://www.r-pkg.org/badges/version-ago/monitOS)](https://CRAN.R-project.org/package=monitOS)\n[![Stats](https://cranlogs.r-pkg.org/badges/grand-total/monitOS?color=brightgreen)](https://CRAN.R-project.org/package=monitOS)\n[![Paper](https://img.shields.io/badge/SBR-Monitoring_Overall_Survival_in_Pivotal_Trials_in_Indolent_Cancers-blue)](https://www.tandfonline.com/doi/full/10.1080/19466315.2024.2365648)\n[![CodeFactor](https://www.codefactor.io/repository/github/novartis/monitos/badge/main)](https://www.codefactor.io/repository/github/novartis/monitos/overview/main)\n\u003c!-- [![Preprint](https://img.shields.io/badge/arXiv-Monitoring_Overall_Survival_in_Pivotal_Trials_in_Indolent_Cancers-blue)](https://arxiv.org/abs/2310.20658) --\u003e\n\n\n\u003c!-- badges: end --\u003e\n\nThese guidelines are meant to provide a pragmatic, yet rigorous, help to drug developers and decision makers, since they are shaped by three fundamental ingredients: the clinically determined margin of detriment on OS that is unacceptably high (`δnull`); the benefit on OS that is plausible given the mechanism of action of the novel intervention (`δalt`); and the quantity of information (i.e. events, expected number of survival events, at primary and final analysis) it is feasible to accrue given the clinical and drug development setting. The proposed guidelines facilitate transparent discussions between stakeholders focusing on the risks of erroneous decisions and what might be an acceptable trade-off between power and the false positive error rate.\n\nMonitoring guidelines assume that the hazard ratio (HR) can adequately summarize the size of the benefits and harms of the experimental intervention vs control on overall survival (OS). Furthermore, guidelines assume that an OS HR \\\u003c 1 is consistent with a beneficial effect of the intervention on OS (and smaller OS HRs \\\u003c1 indicate increased efficacy). For more details about how OS monitoring guidelines are formulated, please refer to our [**paper**](https://www.tandfonline.com/doi/full/10.1080/19466315.2024.2365648).\n\n\nIf you find this repository useful, please consider giving a star! ⭐\n\n## Installation\n\nYou can install the development version of `monitOS` like so:\n\n``` r\ninstall.packages('monitOS')\n```\n\n## Shiny app\n\nThe recommended way to use `monitOS` is to run its integrated shiny app.\nIt can done simply call the wrapper function using:\n\n``` r\nmonitOS::run_app()\n```\nThe shiny app, as seen below, is designed to guide users through their trial designs.\n\n![](man/figures/shiny.png)\n\n## Examples\n\nThese are basic examples on using `monitOS`:\n\n``` r\nlibrary(monitOS)\n# Example 01: OS monitoring guideline retrospectively applied to Motivating Example 1\n# with delta null = 1.3, delta alt = 0.80, gamma_FA = 0.025 and  beta_PA = 0.10.\n\u003e\u003e\u003e bounds(events=c(60, 89, 110, 131, 178),\n           power_int=0.9,  # βPA\n           falsepos=0.025,  # γFA\n           hr_null = 1.3,  # δnull\n           hr_alt = 0.8,   # δalt\n           rand_ratio = 1,\n           hr_marg_benefit = NULL)\n\n$lhr_null\n[1] 0.2623643\n\n$lhr_alt\n[1] -0.2231436\n\n$lhr_pos\n[1]  0.107751640  0.048544837  0.021238743  0.000795809 -0.031446759\n\n$summary\n  Deaths OS HR threshold for positivity One-sided false positive error rate Level of 2-sided CI needed to rule out delta null\n1     60                          1.114                               0.275                                                45\n2     89                          1.050                               0.157                                                69\n3    110                          1.021                               0.103                                                79\n4    131                          1.001                               0.067                                                87\n5    178                          0.969                               0.025                                                95\n  Probability of meeting positivity threshold under delta alt Posterior probability the true OS HR exceeds delta null given the data\n1                                                         0.9                                                                  0.275\n2                                                         0.9                                                                  0.157\n3                                                         0.9                                                                  0.103\n4                                                         0.9                                                                  0.067\n5                                                         0.9                                                                  0.025\n  Predictive probability the OS HR estimate at Final Analysis does not exceed the positivity threshold\n1                                                                                               25.394\n2                                                                                               29.681\n3                                                                                               32.744\n4                                                                                               35.977\n5                                                                                                   NA\n\n\n\n# Example 02: OS monitoring guideline applied to Motivating Example 2\n# with delta null = 4/3, delta alt = 0.7, gamma_FA = 0.20, beta_PA = 0.1,\n# randomization ratio 2 and 0.95 HR marginal benefit\n\u003e\u003e\u003e bounds(events=c(60, 89, 110, 131, 178),\n           power_int=0.9,  # βPA\n           falsepos=0.025,  # γFA\n           hr_null = 1.3,  # δnull\n           hr_alt = 0.8,   # δalt\n           rand_ratio = 2, # rand_ratio\n           hr_marg_benefit = 0.95)  # Marginal HR benefit\n$lhr_null\n[1] 0.2623643\n\n$lhr_alt\n[1] -0.2231436\n\n$lhr_pos\n[1]  0.12782380  0.06502550  0.03606302  0.01438001 -0.04926939\n\n$summary\n  Deaths OS HR threshold for positivity One-sided false positive error rate Level of 2-sided CI needed to rule out delta null\n1     60                          1.136                               0.312                                                38\n2     89                          1.067                               0.190                                                62\n3    110                          1.037                               0.132                                                74\n4    131                          1.014                               0.090                                                82\n5    178                          0.952                               0.025                                                95\n  Probability of meeting positivity threshold under delta alt Posterior probability the true OS HR exceeds delta null given the data\n1                                                       0.900                                                                  0.301\n2                                                       0.900                                                                  0.176\n3                                                       0.900                                                                  0.118\n4                                                       0.900                                                                  0.078\n5                                                       0.863                                                                  0.019\n  Predictive probability the OS HR estimate at Final Analysis does not exceed the positivity threshold\n1                                                                                               19.978\n2                                                                                               22.290\n3                                                                                               23.453\n4                                                                                               23.921\n5                                                                                                   NA\n  Probability of meeting positivity threshold under incremental benefit\n1                                                                 0.743\n2                                                                 0.698\n3                                                                 0.667\n4                                                                 0.638\n5                                                                 0.505\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnovartis%2Fmonitos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnovartis%2Fmonitos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnovartis%2Fmonitos/lists"}