1
0
mirror of https://github.com/msberends/AMR.git synced 2026-06-29 10:56:21 +02:00

(v3.0.1.9070) Fix #293, update EUCAST rules for PEF

This commit is contained in:
2026-06-26 08:56:59 +02:00
parent 4fac683fac
commit 637ada920b
8 changed files with 31 additions and 1553 deletions

1
.gitignore vendored
View File

@@ -22,6 +22,7 @@ vignettes/*.R
^CRAN-RELEASE$
packrat/lib*/
packrat/src/
*~$*
data-raw/taxa.txt
data-raw/taxon.tab
data-raw/CLSI*.pdf

View File

@@ -1,6 +1,6 @@
Package: AMR
Version: 3.0.1.9069
Date: 2026-06-24
Version: 3.0.1.9070
Date: 2026-06-26
Title: Antimicrobial Resistance Data Analysis
Description: Functions to simplify and standardise antimicrobial resistance (AMR)
data analysis and to work with microbial and antimicrobial properties by

View File

@@ -1,4 +1,4 @@
# AMR 3.0.1.9069
# AMR 3.0.1.9070
Planned as v3.1.0, end of June 2026.
@@ -50,7 +50,7 @@ Planned as v3.1.0, end of June 2026.
* `antimicrobials$group` is now a `list`, so that drugs belonging to multiple groups are fully represented; use `ab_group(all_groups = TRUE)` to retrieve all groups for a drug (#246)
* Improved console messages with clickable links throughout, powered by `cli` if it is installed (#191, #265)
* `as.disk()`: input validation is now more strict, rejecting values that are not recognisable as a numeric disk zone diameter
* `as.sir()` gains an `enforce_method` argument (`"auto"`, `"mic"`, or `"disk"`) to force the interpretation method when S3 class information is lost, e.g. when called from Python (#291)
# AMR 3.0.1

12
R/sir.R
View File

@@ -73,6 +73,7 @@ VALID_SIR_LEVELS <- c("S", "SDD", "I", "R", "NI", "WT", "NWT", "NS")
#' @param threshold Maximum fraction of invalid antimicrobial interpretations of `x`, see *Examples*.
#' @param conserve_capped_values Deprecated, use `capped_mic_handling` instead.
#' @param ... For using on a [data.frame]: selection of columns to apply `as.sir()` to. Supports [tidyselect language][tidyselect::starts_with()] such as `where(is.mic)`, `starts_with(...)`, or `column1:column4`, and can thus also be [antimicrobial selectors][amr_selector()], e.g. `as.sir(df, penicillins())`.
#' @param enforce_method A [character] string to force interpretation as a specific method, useful when the S3 class of `x` is lost (e.g., when called from Python via rpy2). Must be one of `"auto"` (default), `"mic"`, or `"disk"`.
#'
#' Otherwise: arguments passed on to methods.
#' @details
@@ -385,8 +386,15 @@ VALID_SIR_LEVELS <- c("S", "SDD", "I", "R", "NI", "WT", "NWT", "NS")
#' # mutate(across(where(is_sir_eligible), as.sir))
#' }
#' }
as.sir <- function(x, ...) {
UseMethod("as.sir")
as.sir <- function(x, ..., enforce_method = "auto") {
meet_criteria(enforce_method, allow_class = "character", has_length = 1, is_in = c("auto", "mic", "disk"))
if (enforce_method == "mic") {
as.sir.mic(x, ...)
} else if (enforce_method == "disk") {
as.sir.disk(x, ...)
} else {
UseMethod("as.sir")
}
}
as_sir_structure <- function(x,

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -439,9 +439,9 @@ EUCAST Breakpoints 14 Enterobacterales (Order) order is Enterobacterales AMP I A
EUCAST Breakpoints 14 Enterobacterales (Order) order is Enterobacterales AMP R AMX R
EUCAST Breakpoints 14 Enterobacterales (Order) order is Enterobacterales LEX S CZO I
EUCAST Breakpoints 14 Enterobacterales (Order) order is Enterobacterales CFR S CZO I
EUCAST Breakpoints 14 Enterobacterales (Order) genus is Salmonella PEF-S S CIP S
EUCAST Breakpoints 14 Enterobacterales (Order) genus is Salmonella PEF-S I CIP I
EUCAST Breakpoints 14 Enterobacterales (Order) genus is Salmonella PEF-S R CIP R
EUCAST Breakpoints 14 Enterobacterales (Order) order is Enterobacterales PEF-S S fluoroquinolones S
EUCAST Breakpoints 14 Enterobacterales (Order) order is Enterobacterales PEF-S I fluoroquinolones I
EUCAST Breakpoints 14 Enterobacterales (Order) order is Enterobacterales PEF-S R fluoroquinolones R
EUCAST Breakpoints 14 Enterobacterales (Order) genus_species is Yersinia enterocolitica TCY S DOX S
EUCAST Breakpoints 14 Enterobacterales (Order) genus_species is Yersinia enterocolitica TCY I DOX I
EUCAST Breakpoints 14 Enterobacterales (Order) genus_species is Yersinia enterocolitica TCY R DOX R
@@ -630,9 +630,9 @@ EUCAST Breakpoints 15 Enterobacterales (Order) order is Enterobacterales AMP I A
EUCAST Breakpoints 15 Enterobacterales (Order) order is Enterobacterales AMP R AMX R
EUCAST Breakpoints 15 Enterobacterales (Order) order is Enterobacterales LEX S CZO I
EUCAST Breakpoints 15 Enterobacterales (Order) order is Enterobacterales CFR S CZO I
EUCAST Breakpoints 15 Enterobacterales (Order) genus is Salmonella PEF-S S CIP S
EUCAST Breakpoints 15 Enterobacterales (Order) genus is Salmonella PEF-S I CIP I
EUCAST Breakpoints 15 Enterobacterales (Order) genus is Salmonella PEF-S R CIP R
EUCAST Breakpoints 15 Enterobacterales (Order) order is Enterobacterales PEF-S S fluoroquinolones S
EUCAST Breakpoints 15 Enterobacterales (Order) order is Enterobacterales PEF-S I fluoroquinolones I
EUCAST Breakpoints 15 Enterobacterales (Order) order is Enterobacterales PEF-S R fluoroquinolones R
EUCAST Breakpoints 15 Enterobacterales (Order) genus_species is Yersinia enterocolitica TCY S DOX S
EUCAST Breakpoints 15 Enterobacterales (Order) genus_species is Yersinia enterocolitica TCY I DOX I
EUCAST Breakpoints 15 Enterobacterales (Order) genus_species is Yersinia enterocolitica TCY R DOX R
@@ -818,9 +818,9 @@ EUCAST Breakpoints 16 Enterobacterales (Order) order is Enterobacterales AMP I A
EUCAST Breakpoints 16 Enterobacterales (Order) order is Enterobacterales AMP R AMX R
EUCAST Breakpoints 16 Enterobacterales (Order) order is Enterobacterales LEX S CZO I
EUCAST Breakpoints 16 Enterobacterales (Order) order is Enterobacterales CFR S CZO I
EUCAST Breakpoints 16 Enterobacterales (Order) genus is Salmonella PEF-S S CIP S
EUCAST Breakpoints 16 Enterobacterales (Order) genus is Salmonella PEF-S I CIP I
EUCAST Breakpoints 16 Enterobacterales (Order) genus is Salmonella PEF-S R CIP R
EUCAST Breakpoints 16 Enterobacterales (Order) order is Enterobacterales PEF-S S fluoroquinolones S
EUCAST Breakpoints 16 Enterobacterales (Order) order is Enterobacterales PEF-S I fluoroquinolones I
EUCAST Breakpoints 16 Enterobacterales (Order) order is Enterobacterales PEF-S R fluoroquinolones R
EUCAST Breakpoints 16 Enterobacterales (Order) genus_species is Yersinia enterocolitica TCY S DOX S
EUCAST Breakpoints 16 Enterobacterales (Order) genus_species is Yersinia enterocolitica TCY I DOX I
EUCAST Breakpoints 16 Enterobacterales (Order) genus_species is Yersinia enterocolitica TCY R DOX R
@@ -1003,9 +1003,9 @@ EUCAST Breakpoints 13.1 Enterobacterales (Order) order is Enterobacterales AMP I
EUCAST Breakpoints 13.1 Enterobacterales (Order) order is Enterobacterales AMP R AMX R
EUCAST Breakpoints 13.1 Enterobacterales (Order) order is Enterobacterales LEX S CZO I
EUCAST Breakpoints 13.1 Enterobacterales (Order) order is Enterobacterales CFR S CZO I
EUCAST Breakpoints 13.1 Enterobacterales (Order) genus is Salmonella PEF-S S CIP S
EUCAST Breakpoints 13.1 Enterobacterales (Order) genus is Salmonella PEF-S I CIP I
EUCAST Breakpoints 13.1 Enterobacterales (Order) genus is Salmonella PEF-S R CIP R
EUCAST Breakpoints 13.1 Enterobacterales (Order) order is Enterobacterales PEF-S S fluoroquinolones S
EUCAST Breakpoints 13.1 Enterobacterales (Order) order is Enterobacterales PEF-S I fluoroquinolones I
EUCAST Breakpoints 13.1 Enterobacterales (Order) order is Enterobacterales PEF-S R fluoroquinolones R
EUCAST Breakpoints 13.1 Enterobacterales (Order) genus_species is Yersinia enterocolitica TCY S DOX S
EUCAST Breakpoints 13.1 Enterobacterales (Order) genus_species is Yersinia enterocolitica TCY I DOX I
EUCAST Breakpoints 13.1 Enterobacterales (Order) genus_species is Yersinia enterocolitica TCY R DOX R
Can't render this file because it has a wrong number of fields in line 10.

View File

@@ -14,7 +14,7 @@
\alias{sir_interpretation_history}
\title{Interpret MIC and Disk Diffusion as SIR, or Clean Existing SIR Data}
\usage{
as.sir(x, ...)
as.sir(x, ..., enforce_method = "auto")
NA_sir_
@@ -108,7 +108,9 @@ sir_interpretation_history(clean = FALSE)
\arguments{
\item{x}{Vector of values (for class \code{\link{mic}}: MIC values in mg/L, for class \code{\link{disk}}: a disk diffusion radius in millimetres).}
\item{...}{For using on a \link{data.frame}: selection of columns to apply \code{as.sir()} to. Supports \link[tidyselect:starts_with]{tidyselect language} such as \code{where(is.mic)}, \code{starts_with(...)}, or \code{column1:column4}, and can thus also be \link[=amr_selector]{antimicrobial selectors}, e.g. \code{as.sir(df, penicillins())}.
\item{...}{For using on a \link{data.frame}: selection of columns to apply \code{as.sir()} to. Supports \link[tidyselect:starts_with]{tidyselect language} such as \code{where(is.mic)}, \code{starts_with(...)}, or \code{column1:column4}, and can thus also be \link[=amr_selector]{antimicrobial selectors}, e.g. \code{as.sir(df, penicillins())}.}
\item{enforce_method}{A \link{character} string to force interpretation as a specific method, useful when the S3 class of \code{x} is lost (e.g., when called from Python via rpy2). Must be one of \code{"auto"} (default), \code{"mic"}, or \code{"disk"}.
Otherwise: arguments passed on to methods.}