Conduct cost-effectiveness analysis (CEA) given output of an economic model; that is, summarize a probabilistic sensitivity analysis (PSA), possibly by subgroup.

`cea()`

computes the probability that each treatment is most cost-effective, output for a cost-effectiveness acceptability frontier, the expected value of perfect information, and the net monetary benefit for each treatment.`cea_pw()`

conducts pairwise CEA by comparing strategies to a comparator. Computed quantities include the incremental cost-effectiveness ratio, the incremental net monetary benefit, output for a cost-effectiveness plane, and output for a cost-effectiveness acceptability curve.

cea(x, ...) cea_pw(x, ...) # S3 method for default cea(x, k = seq(0, 2e+05, 500), sample, strategy, grp = NULL, e, c, ...) # S3 method for default cea_pw( x, k = seq(0, 2e+05, 500), comparator, sample, strategy, grp = NULL, e, c, ... ) # S3 method for ce cea(x, k = seq(0, 2e+05, 500), dr_qalys, dr_costs, ...) # S3 method for ce cea_pw(x, k = seq(0, 2e+05, 500), comparator, dr_qalys, dr_costs, ...)

x | An object of simulation output characterizing the probability distribution
of clinical effectiveness and costs. If the default method is used, then |
---|---|

... | Further arguments passed to or from other methods. Currently unused. |

k | Vector of willingness to pay values. |

sample | Character name of column from |

strategy | Character name of column from |

grp | Character name of column from |

e | Character name of column from |

c | Character name of column from |

comparator | Name of the comparator strategy in |

dr_qalys | Discount rate for quality-adjusted life-years (QALYs). |

dr_costs | Discount rate for costs. |

`cea()`

returns a list of four `data.table`

elements.

- summary
A

`data.table`

of the mean, 2.5% quantile, and 97.5% quantile by strategy and group for clinical effectiveness and costs.- mce
The probability that each strategy is the most effective treatment for each group for the range of specified willingness to pay values. In addition, the column

`best`

denotes the optimal strategy (i.e., the strategy with the highest expected net monetary benefit), which can be used to plot the cost-effectiveness acceptability frontier (CEAF).- evpi
The expected value of perfect information (EVPI) by group for the range of specified willingness to pay values. The EVPI is computed by subtracting the expected net monetary benefit given current information (i.e., the strategy with the highest expected net monetary benefit) from the expected net monetary benefit given perfect information.

- nmb
The mean, 2.5% quantile, and 97.5% quantile of net monetary benefits for the range of specified willingness to pay values.

- summary
A data.table of the mean, 2.5% quantile, and 97.5% quantile by strategy and group for clinical effectiveness and costs.

- delta
Incremental effectiveness and incremental cost for each simulated parameter set by strategy and group. Can be used to plot a cost-effectiveness plane.

- ceac
Values needed to plot a cost-effectiveness acceptability curve by group. The CEAC plots the probability that each strategy is more cost-effective than the comparator for the specified willingness to pay values.

- inmb
The mean, 2.5% quantile, and 97.5% quantile of incremental net monetary benefits for the range of specified willingness to pay values.

`cea_pw`

also returns a list of four `data.table`

elements:

# simulation output n_samples <- 100 sim <- data.frame(sample = rep(seq(n_samples), 4), c = c(rlnorm(n_samples, 5, .1), rlnorm(n_samples, 5, .1), rlnorm(n_samples, 11, .1), rlnorm(n_samples, 11, .1)), e = c(rnorm(n_samples, 8, .2), rnorm(n_samples, 8.5, .1), rnorm(n_samples, 11, .6), rnorm(n_samples, 11.5, .6)), strategy = rep(paste0("Strategy ", seq(1, 2)), each = n_samples * 2), grp = rep(rep(c("Group 1", "Group 2"), each = n_samples), 2) ) # cea cea <- cea(sim, k = seq(0, 200000, 500), sample = "sample", strategy = "strategy", grp = "grp", e = "e", c = "c") names(cea)#> [1] "summary" "mce" "evpi" "nmb"# The probability that each strategy is the most cost-effective # in each group with a willingness to pay of 20,000 library("data.table") cea$mce[k == 20000]#> k strategy grp best prob #> 1: 20000 Strategy 1 Group 1 1 0.58 #> 2: 20000 Strategy 2 Group 1 0 0.42 #> 3: 20000 Strategy 1 Group 2 1 0.54 #> 4: 20000 Strategy 2 Group 2 0 0.46# cea_pw cea_pw <- cea_pw(sim, k = seq(0, 200000, 500), comparator = "Strategy 1", sample = "sample", strategy = "strategy", grp = "grp", e = "e", c = "c") names(cea_pw)#> [1] "summary" "delta" "ceac" "inmb"#> k strategy grp prob #> 1: 20000 Strategy 2 Group 1 0.42 #> 2: 20000 Strategy 2 Group 2 0.46 #> 3: 20500 Strategy 2 Group 1 0.48 #> 4: 20500 Strategy 2 Group 2 0.51 #> 5: 21000 Strategy 2 Group 1 0.55 #> 6: 21000 Strategy 2 Group 2 0.55icer_tbl(cea_pw)#> $`Group 1` #> Strategy 1 Strategy 2 #> Incremental QALYs "-" "2.90 (1.79, 4.09)" #> Incremental costs "-" "59,337 (50,462, 70,281)" #> Incremental NMB "-" "85,783 (34,401, 152,297)" #> ICER "-" "20,444" #> Conclusion "-" "Cost-effective" #> #> $`Group 2` #> Strategy 1 Strategy 2 #> Incremental QALYs "-" "2.97 (2.10, 4.07)" #> Incremental costs "-" "60,161 (50,337, 70,778)" #> Incremental NMB "-" "88,560 (41,109, 144,343)" #> ICER "-" "20,226" #> Conclusion "-" "Cost-effective" #>