aboutsummaryrefslogtreecommitdiff
path: root/R/id.R
diff options
context:
space:
mode:
authorNaeem Model <me@nmode.ca>2024-11-02 18:13:28 +0000
committerNaeem Model <me@nmode.ca>2024-11-02 18:13:28 +0000
commit94b4dcd37e662eb1e525dc241817c8dd5d4681fc (patch)
treef5ef5b90bf2307dd28ae946413350e34a159b7fa /R/id.R
parent9fd931aeeba4ab7bdede1a625f64e7024c2b55aa (diff)
Add input validation to estimators
Diffstat (limited to 'R/id.R')
-rw-r--r--R/id.R7
1 files changed, 7 insertions, 0 deletions
diff --git a/R/id.R b/R/id.R
index 5277591..c7c28d3 100644
--- a/R/id.R
+++ b/R/id.R
@@ -41,5 +41,12 @@
#' # Obtain R0 when the serial distribution has a mean of three days.
#' id(cases, mu = 3 / 7)
id <- function(cases, mu) {
+ validate_cases(cases, min_length = 1, min_count = 1)
+ if (!is_real(mu) || mu <= 0) {
+ stop("The serial interval (`mu`) must be a number greater than 0.",
+ call. = FALSE
+ )
+ }
+
exp(sum((log(cases) * mu) / seq_along(cases)) / length(cases))
}