After my talks in Barcelona, I have started thinking about potential improvements or changes, mostly to do in BCEA — I got some nice comments from quite a few people, some of whom were asking for some tweaks or extra facilities.
Obviously, I’ve not prioritised any of those requests… But: I did think a bit and finally found some time to work on something that I think may be rather useful, particuarly in helping people standardise their workflow using R in health economics. So I have started making a new function
make.report(...), which essentially uses some of the facilities that are already in place in BCEAweb. I have updated the GitHub repository so the newest (development) version, code 2.2-63 includes this feature.
In particular, the function takes as inputs a BCEA object and uses it to create the most common analyses (summaries, cost-effectiveness planes, EIB and CEAC plots, etc) and creates a report with some (for now, a bit rudimentary) pre-compiled text. Basically something like this
devtools::install_github("giabaio/BCEA") library(BCEA) data(Vaccine) m=bcea(e,c,ref=2,interventions=c("Status quo","Vaccine")) make.report(m)
compiles and creates the report with the following analyses:
- Summary (for a given willingness to pay threshold, which can be specified using the non-mandatory input
wtp. For now, the default is at the maximum value of the WTP grid contained in the
- Cost-effectiveness plane (again, it is possible to select the input
- Expected incremental benefit graph (at the moment, including 95% interval estimates);
- Cost-effectiveness frontier;
- Cost-effectiveness acceptability curve;
- Expected value of perfect information.
The idea is to also allow for the possibility that the user may have performed some extra analyses (eg EVPPI, EVSI, or even missing data analysis), so that, once the relevant object has been created, it is post-processed and the relevant text is appended to the report.
Inspired by the British Prime Minister, I will listen to people, so if you have comments or desiderata, I will try hard to implement them — at this stage, this is pretty much open to everything (within reason)…