From c98a0711e9e4397db253302324bd1bb9aa0688d6 Mon Sep 17 00:00:00 2001 From: Joshua Lambert Date: Fri, 20 Sep 2024 14:55:25 +0100 Subject: [PATCH] add conversion for lnorm median and dispersion to convert_summary_stats_to_params --- R/convert_params.R | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/R/convert_params.R b/R/convert_params.R index 6352ed4f3..a5fe41b20 100644 --- a/R/convert_params.R +++ b/R/convert_params.R @@ -401,6 +401,16 @@ convert_params_to_summary_stats.epiparameter <- function(x, ...) { return(list(meanlog = meanlog, sdlog = sdlog)) } + if (checkmate::test_number(x$median) && + checkmate::test_number(x$dispersion)) { + # median and dispersion to params + checkmate::assert_number(x$median, lower = 0) + checkmate::assert_number(x$dispersion, lower = 0) + meanlog <- log(x$median) + sdlog <- log(x$dispersion) + return(list(meanlog = meanlog, sdlog = sdlog)) + } + if (!(checkmate::test_number(x$median) && checkmate::test_number(x$sd))) { stop("Cannot calculate lognormal parameters from given input") }