Skip to content

Commit 75d26a7

Browse files
committed
journal of open source software paper added
1 parent 25587dc commit 75d26a7

File tree

9 files changed

+806
-2
lines changed

9 files changed

+806
-2
lines changed

.Rbuildignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,4 @@
66
^Meta$
77
inst/joss_code\.Rmd
88
scripts/create_package_data\.R
9+
^joss\_paper/

DESCRIPTION

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Package: outstandR
2-
Title: Model-based Standardisation
2+
Title: Model-based Standardisation for indirect treatment comparison with limited subject-level data
33
Version: 0.0.0.9000
44
Authors@R: c(
55
person("Nathan", "Green", , "[email protected]", role = c("aut", "cre"),
@@ -10,7 +10,8 @@ Authors@R: c(
1010
comment = c(ORCID = "0000-0002-7263-4251"))
1111
)
1212
Description:
13-
Model-based standardisation with several different computation approaches.
13+
For the problem of indirect treatment comparison with limited subject-level data, this
14+
package provides tools for model-based standardisation with several different computation approaches.
1415
See Remiro‐Azócar A, Heath A, Baio G (2022. Parametric G‐computation for compatible
1516
indirect treatment comparisons with limited individual patient data,
1617
Res. Synth. Methods, 1–31. ISSN 1759-2879, <doi:10.1002/jrsm.1565, 2108.12208>.)

inst/joss_paper/figure.jpeg

131 KB
Loading

inst/joss_paper/paper.bib

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
@Article{survHE,
2+
title = {{survHE}: Survival Analysis for Health Economic Evaluation and Cost-Effectiveness Modeling},
3+
author = {Gianluca Baio},
4+
journal = {Journal of Statistical Software},
5+
year = {2020},
6+
volume = {95},
7+
number = {14},
8+
pages = {1--47},
9+
doi = {10.18637/jss.v095.i14},
10+
}
11+
12+
@Article{stan2017,
13+
title = {{Stan}: A Probabilistic Programming Language},
14+
author = {Bob Carpenter and Andrew Gelman and Matthew D. Hoffman and Daniel Lee and Ben Goodrich and Michael Betancourt and Marcus Brubaker and Jiqiang Guo and Peter Li and Allen Riddell},
15+
journal = {Journal of Statistical Software},
16+
year = {2017},
17+
volume = {76},
18+
number = {1},
19+
pages = {1--32},
20+
doi = {10.18637/jss.v076.i01},
21+
}
22+
23+
@article{RemiroAzocar2022a,
24+
author = {Remiro-Azócar, A. and Heath, A. and Baio, G.},
25+
title = {Parametric G-computation for Compatible Indirect Treatment Comparisons with Limited Individual Patient Data},
26+
journal = {Research Synthesis Methods},
27+
year = {2022},
28+
volume = {11},
29+
number = {6},
30+
pages = {716-744},
31+
doi = {10.1002/jrsm.1565}
32+
}
33+
34+
@article{RemiroAzocar2022b,
35+
author = {Remiro-Azócar, A. and Heath, A. and Baio, G.},
36+
title = {Model-based standardization using multiple imputation},
37+
journal = {BMC Medical Research Methodology},
38+
year = {2024},
39+
volume = {24},
40+
number = {32},
41+
pages = {1--15},
42+
doi = {10.1186/s12874-024-02157-x}
43+
}
44+
45+
@Manual{RemiroAzocar2022c,
46+
title = {{outstandR}: Outcome regression standardisation},
47+
author = {A. Remiro-Azócar and N. Heath and G. Baio},
48+
year = {2022},
49+
note = {R package version 0.1.0},
50+
url = {https://statisticshealtheconomics.github.io/outstandR/},
51+
}
52+
53+
@techreport{phillippo2016methods,
54+
title={{Methods for population-adjusted indirect comparisons in submissions to NICE}},
55+
author={Phillippo, David M. and Dias, Sofia and Ades, A. E. and Belger, Mark and Briscoe, Tom and Abrams, Keith R.},
56+
year={2016},
57+
institution={NICE Decision Support Unit, School of Health and Related Research (ScHARR), University of Sheffield},
58+
type={NICE DSU Technical Support Document},
59+
number={18}
60+
}
61+
62+
@article{aari_marginaleffects_2024,
63+
title = {{marginaleffects: An R Package to Estimate and Plot Predictions, Marginal Means, and Marginal Effects}},
64+
author = {Arel-Bundock, Vincent},
65+
date = {2024-05-15},
66+
journal = {Journal of Open Source Software},
67+
publisher = {The Open Journal},
68+
volume = {9},
69+
number = {97},
70+
pages = {6224},
71+
doi = {10.21105/joss.06224},
72+
url = {https://joss.theoj.org/papers/10.21105/joss.06224}
73+
}
74+
75+
@software{g_sofer_2023_10022204,
76+
author = {G. Sofer, Tom and L. D., Ryan and Richardson},
77+
title = {{tsa-lab/stdReg2: stdReg2}},
78+
month = oct,
79+
year = 2023,
80+
publisher = {Zenodo},
81+
version = {v1.1.0},
82+
doi = {10.5281/zenodo.10022204},
83+
url = {https://doi.org/10.5281/zenodo.10022204}
84+
}
85+
86+
@software{maicplus_2024,
87+
author = {maicplus, Maintainer},
88+
title = {{maicplus: Matching-Adjusted Indirect Comparison Plus}},
89+
url = {https://cran.r-project.org/package=maicplus},
90+
version = {0.1.0},
91+
year = {2024}
92+
}
93+
94+
@article{sjolander2023gformula,
95+
title={{gfoRmula: An R package for implementing the g-formula}},
96+
author={Sj{\"o}lander, Arvid and Dahlqwist, Elin},
97+
journal={Observational Studies},
98+
volume={9},
99+
number={1},
100+
pages={1--19},
101+
year={2023},
102+
publisher={University of Pennsylvania Press}
103+
}
104+
105+
@article{Sterne2023,
106+
author = {Jonathan A C Sterne and Rhian M Daniel and Amy M B Ferguson and Sanja Sari and Margarita Moreno-Betancur and John W R Wallace and Ian R White and Angela M Wood and Kate Tilling},
107+
title = {A unified framework for multiple imputation and missing data in the parametric g-formula},
108+
journal = {Statistics in Medicine},
109+
year = {2023},
110+
volume = {42},
111+
number = {24},
112+
pages = {4455-4470},
113+
doi = {10.1002/sim.9863}
114+
}

inst/joss_paper/paper.html

Lines changed: 565 additions & 0 deletions
Large diffs are not rendered by default.

inst/joss_paper/paper.md

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
---
2+
title: 'outstandR: An R Package for Indirect Treatment Comparison with Limited Subject-Level Data'
3+
tags:
4+
- R
5+
- health economics
6+
- outcome standardisation
7+
- Bayesian inference
8+
authors:
9+
- name: Nathan Green
10+
orcid: 0000-0003-2745-1736
11+
equal-contrib: true
12+
affiliation: 1
13+
- name: Antonio Remiro-Acócar
14+
orcid:
15+
equal-contrib: true
16+
affiliation: 2
17+
- name: Gianluca Baio
18+
corresponding: true
19+
affiliation: 1
20+
affiliations:
21+
- name: University College London (UCL), UK
22+
index: 1
23+
ror: 02jx3x895
24+
- name: Novonodisk
25+
index: 2
26+
ror:
27+
date: 1 August 2025
28+
bibliography: paper.bib
29+
editor_options:
30+
markdown:
31+
wrap: 72
32+
---
33+
34+
# Summary
35+
36+
The goal of `outstandR` is to provide functionality to perform
37+
population adjustment methods are increasingly used to compare marginal
38+
treatment effects when there are cross-trial differences in effect
39+
modifiers and limited patient-level data [@RemiroAzocar2022a]. This
40+
presents a significant challenge in evidence synthesis, particularly in
41+
health technology assessment. Existing methods often face limitations
42+
such as sensitivity to poor covariate overlap or inability to
43+
extrapolate beyond observed covariate spaces. The `outstandR` package
44+
addresses these challenges by offering a robust framework for out- come
45+
regression standardisation, focusing on G-estimation. It enables
46+
researchers to perform model-based standardization with two additional
47+
crucial steps: covariate simulation (to over- come limited subject-level
48+
data for one of the studies) and indirect comparison across studies
49+
[@RemiroAzocar2022a]. The target audience of `outstandR` is those who
50+
want to perform model-based standardization in the specific context of
51+
two-study indirect treatment comparisons with limited subject-level
52+
data.
53+
54+
# Statement of need
55+
56+
Indirect treatment comparisons (ITCs) are a cornerstone of modern
57+
evidence synthesis, especially in health technology assessment (HTA)
58+
where decision-makers must compare novel treatments against a range of
59+
competitors. A common and challenging scenario arises when individual
60+
patient data (IPD) is available for one trial, but only aggregate-level
61+
data (ALD) is available for the comparator trial. Naively comparing
62+
these studies can introduce significant bias because of differences in
63+
patient populations. There is a clear need for a unified and robust
64+
software tool that implements a range of modern population adjustment
65+
techniques to address these challenges systematically.
66+
67+
# Method
68+
69+
We developed the `outstandR` R package to provide a comprehensive
70+
framework for performing anchored ITCs using a suite of population
71+
adjustment methods, with a focus on robust G-computation techniques.
72+
`outstandR` streamlines the entire analytical workflow: from fitting
73+
outcome models on IPD and standardizing them to the ALD population, to
74+
performing the final indirect comparison. By implementing multiple
75+
methods — including Matching-Adjusted Indirect Comparison (MAIC),
76+
Simulated Treatment Comparison (STC) [@phillippo2016methods], parametric
77+
G-computation (both frequentist and Bayesian) [@RemiroAzocar2022a], and
78+
the Multiple Imputation Marginalization (MIM) method
79+
[@RemiroAzocar2022b] — within a single interface, our package empowers
80+
researchers to conduct sensitivity analyses and select the most
81+
appropriate approach for their data. `outstandR` lowers the technical
82+
barrier to entry for these complex analyses, promoting more reliable and
83+
transparent evidence synthesis for healthcare decision-making.
84+
85+
Related R packages we are aware of are more general-purpose tools
86+
implementing specific methods. The `marginaleffects` [@aari_marginaleffects_2024] package is not
87+
designed for population adjustment between studies. `stdReg2` focuses on
88+
standardising outcomes with a single data set [@g_sofer_2023_10022204].
89+
For G-formula
90+
implementations, `gfoRmula` can estimate effects in the presence of
91+
time-varying treatments and confounders [@sjolander2023gformula]. It is designed for estimating
92+
causal effects from longitudinal data with one study. `gFormulaMI`
93+
employs multiple imputation using the `mice` package [@Sterne2023]. Finally,
94+
`maicplus` is a specialist ITC package but focused only on the MAIC
95+
approach [@maicplus_2024].
96+
97+
Our analysis performs an anchored indirect treatment comparison (ITC) to
98+
estimate the relative effect of two treatments, A and B. This comparison
99+
uses individual patient data (IPD) from a trial comparing treatments A
100+
and C (the AC trial) and aggregate level data (ALD) from a trial
101+
comparing treatments B and C (the BC trial). To account for potential
102+
differences in the patient populations between the two trials, which can
103+
bias the ITC, we use population adjustment methods. These methods
104+
standardize the results from the AC trial to the baseline
105+
characteristics of the BC trial population.
106+
107+
The general procedure involves two main stages. First, we fit an outcome
108+
regression model using the IPD from the AC trial. This model describes
109+
the relationship between the outcome, treatment assignment, and a set of
110+
baseline covariates, including both prognostic factors and treatment
111+
effect modifiers. Second, we use this fitted model to predict the
112+
outcomes for treatment A and C in a target population that reflects the
113+
aggregate baseline characteristics of the BC trial. For G-computation,
114+
this step can involve simulating a large synthetic dataset that mirrors
115+
the covariate distributions of the BC population. The resulting adjusted
116+
treatment effect, $\Delta$AC(BC), is then indirectly compared against
117+
the observed effect from the ALD, $\Delta$BC(BC), to yield the final
118+
adjusted estimate for A versus B, $\Delta$AB(BC). Uncertainty is
119+
quantified using non-parametric bootstrapping for frequentist methods or
120+
by propagating parameter uncertainty from the full posterior
121+
distribution in Bayesian implementations.
122+
123+
# References
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)