@@ -147,21 +147,21 @@ make the structure of your data generally look like this:
-
2026-03-11
+
2026-03-18
abcd
Escherichia coli
S
S
-
2026-03-11
+
2026-03-18
abcd
Escherichia coli
S
R
-
2026-03-11
+
2026-03-18
efgh
Escherichia coli
R
@@ -263,17 +263,17 @@ user input can be used:
Now we can thus clean our data:
our_data$bacteria<-as.mo(our_data$bacteria, info =TRUE)
-#> ℹ Retrieved values from the `microorganisms.codes` data set for "ESCCOL",
+#> ℹ Retrieved values from the `microorganisms.codes` data set for "ESCCOL",#> "KLEPNE", "STAAUR", and "STRPNE".#> ℹ Microorganism translation was uncertain for four microorganisms. Run
-#> `mo_uncertainties()` to review these uncertainties, or use
-#> `add_custom_microorganisms()` to add custom entries.
+#> `mo_uncertainties()` to review these uncertainties, or use
+#> `add_custom_microorganisms()` to add custom entries.
Apparently, there was some uncertainty about the translation to
taxonomic codes. Let’s check this:
mo_uncertainties()#> Matching scores are based on the resemblance between the input and the full
-#> taxonomic name, and the pathogenicity in humans. See `?mo_matching_score`.
+#> taxonomic name, and the pathogenicity in humans. See `?mo_matching_score`.#> Colour keys: 0.000-0.549 0.550-0.649 0.650-0.749 0.750-1.000 #> #> --------------------------------------------------------------------------------
@@ -311,8 +311,8 @@ taxonomic codes. Let’s check this:
#> periodonticum (0.519)#> #> Only the first 10 other matches of each record are shown. Run
-#> `print(mo_uncertainties(), n = ...)` to view more entries, or save
-#> `mo_uncertainties()` to an object.
+#> `print(mo_uncertainties(), n = ...)` to view more entries, or save
+#> `mo_uncertainties()` to an object.
That’s all good.
@@ -400,11 +400,11 @@ the methods on the first_isolate
our_data<-our_data%>%mutate(first =first_isolate(info =TRUE))#> ℹ Determining first isolates using an episode length of 365 days
-#> ℹ Using column 'bacteria' as input for `col_mo`.
+#> ℹ Using column 'bacteria' as input for `col_mo`.#> ℹ Column 'first' is SIR eligible (despite only having empty values), since#> it seems to be cefozopran (ZOP)
-#> ℹ Using column 'date' as input for `col_date`.
-#> ℹ Using column 'patient_id' as input for `col_patient_id`.
+#> ℹ Using column 'date' as input for `col_date`.
+#> ℹ Using column 'patient_id' as input for `col_patient_id`.#> ℹ Basing inclusion on all antimicrobial results, using a points threshold#> of 2#> => Found 2,724 'phenotype-based' first isolates (90.8% of total where a
@@ -525,7 +525,7 @@ in:
our_data_1st%>%select(date, aminoglycosides())
-#> ℹ For `aminoglycosides()` using column 'GEN' (gentamicin)
+#> ℹ For `aminoglycosides()` using column 'GEN' (gentamicin)#> # A tibble: 2,724 × 2#> date GEN #> <date><sir>
@@ -543,7 +543,7 @@ in:
our_data_1st%>%select(bacteria, betalactams())
-#> ℹ For `betalactams()` using columns 'AMX' (amoxicillin) and 'AMC'
+#> ℹ For `betalactams()` using columns 'AMX' (amoxicillin) and 'AMC'#> (amoxicillin/clavulanic acid)#> # A tibble: 2,724 × 3#> bacteria AMX AMC
@@ -580,7 +580,7 @@ in:
# filtering using AB selectors is also possible:our_data_1st%>%filter(any(aminoglycosides()=="R"))
-#> ℹ For `aminoglycosides()` using column 'GEN' (gentamicin)
+#> ℹ For `aminoglycosides()` using column 'GEN' (gentamicin)#> # A tibble: 981 × 9#> patient_id hospital date bacteria AMX AMC CIP GEN first#> <chr><chr><date><mo><sir><sir><sir><sir><lgl>
@@ -598,7 +598,7 @@ in:
our_data_1st%>%filter(all(betalactams()=="R"))
-#> ℹ For `betalactams()` using columns 'AMX' (amoxicillin) and 'AMC'
+#> ℹ For `betalactams()` using columns 'AMX' (amoxicillin) and 'AMC'#> (amoxicillin/clavulanic acid)#> # A tibble: 462 × 9#> patient_id hospital date bacteria AMX AMC CIP GEN first
@@ -617,7 +617,7 @@ in:
# even works in base R (since R 3.0):our_data_1st[all(betalactams()=="R"), ]
-#> ℹ For `betalactams()` using columns 'AMX' (amoxicillin) and 'AMC'
+#> ℹ For `betalactams()` using columns 'AMX' (amoxicillin) and 'AMC'#> (amoxicillin/clavulanic acid)#> # A tibble: 462 × 9#> patient_id hospital date bacteria AMX AMC CIP GEN first
@@ -699,9 +699,9 @@ previously mentioned antibiotic class selectors:
antibiogram(example_isolates, antibiotics =c(aminoglycosides(), carbapenems()))
-#> ℹ For `aminoglycosides()` using columns 'GEN' (gentamicin), 'TOB'
+#> ℹ For `aminoglycosides()` using columns 'GEN' (gentamicin), 'TOB'#> (tobramycin), 'AMK' (amikacin), and 'KAN' (kanamycin)
-#> ℹ For `carbapenems()` using columns 'IPM' (imipenem) and 'MEM' (meropenem)
+#> ℹ For `carbapenems()` using columns 'IPM' (imipenem) and 'MEM' (meropenem)
@@ -830,7 +830,7 @@ language to be Spanish using the language argument:
antibiotics =aminoglycosides(), ab_transform ="name", language ="es")
-#> ℹ For `aminoglycosides()` using columns 'GEN' (gentamicin), 'TOB'
+#> ℹ For `aminoglycosides()` using columns 'GEN' (gentamicin), 'TOB'#> (tobramycin), 'AMK' (amikacin), and 'KAN' (kanamycin)
@@ -956,9 +956,9 @@ argument must be used. This can be any column in the data, or e.g. an
antibiogram(example_isolates, antibiotics =c(aminoglycosides(), carbapenems()), syndromic_group ="ward")
-#> ℹ For `aminoglycosides()` using columns 'GEN' (gentamicin), 'TOB'
+#> ℹ For `aminoglycosides()` using columns 'GEN' (gentamicin), 'TOB'#> (tobramycin), 'AMK' (amikacin), and 'KAN' (kanamycin)
-#> ℹ For `carbapenems()` using columns 'IPM' (imipenem) and 'MEM' (meropenem)
+#> ℹ For `carbapenems()` using columns 'IPM' (imipenem) and 'MEM' (meropenem)
our_data_1st%>%resistance(AMX)
-#> ℹ `resistance()` assumes the EUCAST guideline and thus considers the 'I'
-#> category susceptible. Set the `guideline` argument or the `AMR_guideline`
-#> option to either "CLSI" or "EUCAST", see `?AMR-options`.
+#> ℹ `resistance()` assumes the EUCAST guideline and thus considers the 'I'
+#> category susceptible. Set the `guideline` argument or the `AMR_guideline`
+#> option to either "CLSI" or "EUCAST", see `?AMR-options`.#> ℹ This message will be shown once per session.#> [1] 0.4203377
Or can be used in conjunction with group_by() and
diff --git a/articles/AMR.md b/articles/AMR.md
index 691e56c72..529fee0ff 100644
--- a/articles/AMR.md
+++ b/articles/AMR.md
@@ -3,7 +3,7 @@
**Note:** values on this page will change with every website update
since they are based on randomly created values and the page was written
in [R Markdown](https://rmarkdown.rstudio.com/). However, the
-methodology remains unchanged. This page was generated on 11 March 2026.
+methodology remains unchanged. This page was generated on 18 March 2026.
## Introduction
@@ -51,9 +51,9 @@ structure of your data generally look like this:
| date | patient_id | mo | AMX | CIP |
|:----------:|:----------:|:----------------:|:---:|:---:|
-| 2026-03-11 | abcd | Escherichia coli | S | S |
-| 2026-03-11 | abcd | Escherichia coli | S | R |
-| 2026-03-11 | efgh | Escherichia coli | R | S |
+| 2026-03-18 | abcd | Escherichia coli | S | S |
+| 2026-03-18 | abcd | Escherichia coli | S | R |
+| 2026-03-18 | efgh | Escherichia coli | R | S |
### Needed R packages
diff --git a/articles/AMR_for_Python.html b/articles/AMR_for_Python.html
index 6b1ad64c4..5b0a32e89 100644
--- a/articles/AMR_for_Python.html
+++ b/articles/AMR_for_Python.html
@@ -30,7 +30,7 @@
AMR (for R)
- 3.0.1.9034
+ 3.0.1.9035
diff --git a/articles/AMR_with_tidymodels.html b/articles/AMR_with_tidymodels.html
index 5c19ef9b1..8a7d4ef4a 100644
--- a/articles/AMR_with_tidymodels.html
+++ b/articles/AMR_with_tidymodels.html
@@ -30,7 +30,7 @@
AMR (for R)
- 3.0.1.9034
+ 3.0.1.9035
@@ -179,9 +179,9 @@ package.
mo =as.factor(mo_gramstain(mo)))%>%# drop NAs - the ones without a Gramstain (fungi, etc.)drop_na()
-#> ℹ For `aminoglycosides()` using columns 'GEN' (gentamicin), 'TOB'
+#> ℹ For `aminoglycosides()` using columns 'GEN' (gentamicin), 'TOB'#> (tobramycin), 'AMK' (amikacin), and 'KAN' (kanamycin)
-#> ℹ For `betalactams()` using columns 'PEN' (benzylpenicillin), 'OXA'
+#> ℹ For `betalactams()` using columns 'PEN' (benzylpenicillin), 'OXA'#> (oxacillin), 'FLC' (flucloxacillin), 'AMX' (amoxicillin), 'AMC'#> (amoxicillin/clavulanic acid), 'AMP' (ampicillin), 'TZP'#> (piperacillin/tazobactam), 'CZO' (cefazolin), 'FEP' (cefepime), 'CXM'
@@ -227,9 +227,9 @@ we have with step_corr(), the necessary parameters can be
estimated from a training set using prep():
prep(resistance_recipe)
-#> ℹ For `aminoglycosides()` using columns 'GEN' (gentamicin), 'TOB'
+#> ℹ For `aminoglycosides()` using columns 'GEN' (gentamicin), 'TOB'#> (tobramycin), 'AMK' (amikacin), and 'KAN' (kanamycin)
-#> ℹ For `betalactams()` using columns 'PEN' (benzylpenicillin), 'OXA'
+#> ℹ For `betalactams()` using columns 'PEN' (benzylpenicillin), 'OXA'#> (oxacillin), 'FLC' (flucloxacillin), 'AMX' (amoxicillin), 'AMC'#> (amoxicillin/clavulanic acid), 'AMP' (ampicillin), 'TZP'#> (piperacillin/tazobactam), 'CZO' (cefazolin), 'FEP' (cefepime), 'CXM'
@@ -737,10 +737,10 @@ into a structured time-series format.
.names ="res_{.col}"), .groups ="drop")%>%filter(!is.na(res_AMX)&!is.na(res_AMC)&!is.na(res_CIP))# Drop missing values
-#> ℹ Using column 'mo' as input for `col_mo`.
-#> ℹ `resistance()` assumes the EUCAST guideline and thus considers the 'I'
-#> category susceptible. Set the `guideline` argument or the `AMR_guideline`
-#> option to either "CLSI" or "EUCAST", see `?AMR-options`.
+#> ℹ Using column 'mo' as input for `col_mo`.
+#> ℹ `resistance()` assumes the EUCAST guideline and thus considers the 'I'
+#> category susceptible. Set the `guideline` argument or the `AMR_guideline`
+#> option to either "CLSI" or "EUCAST", see `?AMR-options`.#> ℹ This message will be shown once per session.data_time
diff --git a/articles/EUCAST.html b/articles/EUCAST.html
index 997d6a2bd..11384c54b 100644
--- a/articles/EUCAST.html
+++ b/articles/EUCAST.html
@@ -30,7 +30,7 @@
AMR (for R)
- 3.0.1.9034
+ 3.0.1.9035
diff --git a/articles/PCA.html b/articles/PCA.html
index 91dbd5fb3..38911d5cf 100644
--- a/articles/PCA.html
+++ b/articles/PCA.html
@@ -30,7 +30,7 @@
AMR (for R)
- 3.0.1.9034
+ 3.0.1.9035
@@ -163,9 +163,9 @@ per taxonomic order and genus:
order, genus, AMC, CXM, CTX,CAZ, GEN, TOB, TMP, SXT)# and select only relevant columns
-#> ℹ `resistance()` assumes the EUCAST guideline and thus considers the 'I'
-#> category susceptible. Set the `guideline` argument or the `AMR_guideline`
-#> option to either "CLSI" or "EUCAST", see `?AMR-options`.
+#> ℹ `resistance()` assumes the EUCAST guideline and thus considers the 'I'
+#> category susceptible. Set the `guideline` argument or the `AMR_guideline`
+#> option to either "CLSI" or "EUCAST", see `?AMR-options`.#> ℹ This message will be shown once per session.head(resistance_data)
diff --git a/articles/WHONET.html b/articles/WHONET.html
index 0e03b13e6..a46de966e 100644
--- a/articles/WHONET.html
+++ b/articles/WHONET.html
@@ -30,7 +30,7 @@
AMR (for R)
- 3.0.1.9034
+ 3.0.1.9035
@@ -255,9 +255,9 @@ Longest: 40
# our transformed antibiotic columns# amoxicillin/clavulanic acid (J01CR02) as an exampledata%>%freq(AMC_ND2)
-#> ℹ `susceptibility()` assumes the EUCAST guideline and thus considers the
-#> 'I' category susceptible. Set the `guideline` argument or the
-#> `AMR_guideline` option to either "CLSI" or "EUCAST", see `?AMR-options`.
+#> ℹ `susceptibility()` assumes the EUCAST guideline and thus considers the
+#> 'I' category susceptible. Set the `guideline` argument or the
+#> `AMR_guideline` option to either "CLSI" or "EUCAST", see `?AMR-options`.#> ℹ This message will be shown once per session.
Function amr_course(), which allows for automated download and unpacking of a GitHub repository for e.g. webinar use
-
Fixes
+
Fixes
Fixed a bug in as.sir() where values that were purely numeric (e.g., "1") and matched the broad SIR-matching regex would be incorrectly stripped of all content by the Unicode letter filter
Fixed a bug in as.mic() where MIC values in scientific notation (e.g., "1e-3") were incorrectly handled because the letter e was removed along with other Unicode letters; scientific notation e is now preserved
Fixed a bug in as.ab() where certain AB codes containing “PH” or “TH” (such as ETH, MTH, PHE, PHN, STH, THA, THI1) would incorrectly return NA when combined in a vector with any untranslatable value (#245)
@@ -96,7 +96,7 @@
Fixed SIR and MIC coercion of combined values, e.g. as.sir("<= 0.002; S") or as.mic("S; 0.002") (#252)
-
Updates
+
Updates
mdro() now infers resistance for a missing base drug column from an available corresponding drug+inhibitor combination showing resistance (e.g., piperacillin is absent but required, while piperacillin/tazobactam available and resistant). Can be set with the new argument infer_from_combinations, which defaults to TRUE (#209). Note that this can yield a higher MDRO detection (which is a good thing as it has become more reliable).
diff --git a/news/index.md b/news/index.md
index 894a99f9e..65d643d50 100644
--- a/news/index.md
+++ b/news/index.md
@@ -1,6 +1,6 @@
# Changelog
-## AMR 3.0.1.9034
+## AMR 3.0.1.9035
#### New
diff --git a/pkgdown.yml b/pkgdown.yml
index 53b3fbad9..8cbc27a2f 100644
--- a/pkgdown.yml
+++ b/pkgdown.yml
@@ -10,7 +10,7 @@ articles:
PCA: PCA.html
WHONET: WHONET.html
WISCA: WISCA.html
-last_built: 2026-03-11T15:15Z
+last_built: 2026-03-18T09:40Z
urls:
reference: https://amr-for-r.org/reference
article: https://amr-for-r.org/articles
diff --git a/reference/AMR-deprecated.html b/reference/AMR-deprecated.html
index bef6fcbc7..bc42298de 100644
--- a/reference/AMR-deprecated.html
+++ b/reference/AMR-deprecated.html
@@ -7,7 +7,7 @@
AMR (for R)
- 3.0.1.9034
+ 3.0.1.9035
diff --git a/reference/AMR-options.html b/reference/AMR-options.html
index 9a1a30f86..bd746f465 100644
--- a/reference/AMR-options.html
+++ b/reference/AMR-options.html
@@ -9,7 +9,7 @@ options(AMR_guideline = "CLSI")'>AMR (for R)
- 3.0.1.9034
+ 3.0.1.9035
diff --git a/reference/AMR.html b/reference/AMR.html
index 9bc4e9bfc..f7a3b9eee 100644
--- a/reference/AMR.html
+++ b/reference/AMR.html
@@ -21,7 +21,7 @@ The AMR package is available in English, Arabic, Bengali, Chinese, Czech, Danish
AMR (for R)
- 3.0.1.9034
+ 3.0.1.9035
diff --git a/reference/WHOCC.html b/reference/WHOCC.html
index 4159258d3..5dddb0354 100644
--- a/reference/WHOCC.html
+++ b/reference/WHOCC.html
@@ -7,7 +7,7 @@
AMR (for R)
- 3.0.1.9034
+ 3.0.1.9035
diff --git a/reference/WHONET.html b/reference/WHONET.html
index e84254c0d..b78e6274b 100644
--- a/reference/WHONET.html
+++ b/reference/WHONET.html
@@ -7,7 +7,7 @@
AMR (for R)
- 3.0.1.9034
+ 3.0.1.9035
diff --git a/reference/ab_from_text.html b/reference/ab_from_text.html
index 5b94a8375..ca3fc6f41 100644
--- a/reference/ab_from_text.html
+++ b/reference/ab_from_text.html
@@ -7,7 +7,7 @@
AMR (for R)
- 3.0.1.9034
+ 3.0.1.9035
diff --git a/reference/ab_property.html b/reference/ab_property.html
index ed2c626bb..9664d1ba7 100644
--- a/reference/ab_property.html
+++ b/reference/ab_property.html
@@ -7,7 +7,7 @@
AMR (for R)
- 3.0.1.9034
+ 3.0.1.9035
diff --git a/reference/add_custom_antimicrobials.html b/reference/add_custom_antimicrobials.html
index 79c6345a3..4e7c6d1a6 100644
--- a/reference/add_custom_antimicrobials.html
+++ b/reference/add_custom_antimicrobials.html
@@ -7,7 +7,7 @@
AMR (for R)
- 3.0.1.9034
+ 3.0.1.9035
@@ -111,7 +111,7 @@
group ="Test Group"))
-#>ℹ Added one record to the internal `antimicrobials` data set.
+#>ℹ Added one record to the internal `antimicrobials` data set.# "testab" is now a new antibiotic:as.ab("testab")
@@ -180,7 +180,7 @@
group ="Beta-lactams/penicillins"))
-#>ℹ Added one record to the internal `antimicrobials` data set.
+#>ℹ Added one record to the internal `antimicrobials` data set.ab_atc("Co-fluampicil")#> [1] "J01CR50"ab_name("J01CR50")
@@ -197,7 +197,7 @@
#> random_column coflu ampicillin#> 1 some value S Rx[, betalactams()]
-#>ℹ For `betalactams()` using columns 'coflu' (co-fluampicil) and
+#>ℹ For `betalactams()` using columns 'coflu' (co-fluampicil) and#> 'ampicillin'#> coflu ampicillin#> 1 S R
diff --git a/reference/add_custom_microorganisms.html b/reference/add_custom_microorganisms.html
index 4e6819a15..336bed35a 100644
--- a/reference/add_custom_microorganisms.html
+++ b/reference/add_custom_microorganisms.html
@@ -7,7 +7,7 @@
AMR (for R)
- 3.0.1.9034
+ 3.0.1.9035
@@ -109,7 +109,7 @@
species ="asburiae/cloacae"))
-#>ℹ Added Enterobacter asburiae/cloacae to the internal `microorganisms` data
+#>ℹ Added Enterobacter asburiae/cloacae to the internal `microorganisms` data#> set.# E. asburiae/cloacae is now a new microorganism:
@@ -204,7 +204,7 @@
SPECIES ="SPECIES"))
-#>ℹ Added Bacteroides/Parabacteroides to the internal `microorganisms` data
+#>ℹ Added Bacteroides/Parabacteroides to the internal `microorganisms` data#> set.mo_name("BACTEROIDES / PARABACTEROIDES")#> [1] "Bacteroides/Parabacteroides"
@@ -225,7 +225,7 @@
))#>ℹ Added Citrobacter braakii complex and Citrobacter freundii complex to the
-#> internal `microorganisms` data set.
+#> internal `microorganisms` data set.mo_name(c("C. freundii complex", "C. braakii complex"))#> [1] "Citrobacter freundii complex" "Citrobacter braakii complex" mo_species(c("C. freundii complex", "C. braakii complex"))
diff --git a/reference/age.html b/reference/age.html
index 3712a1dc4..630f34db7 100644
--- a/reference/age.html
+++ b/reference/age.html
@@ -7,7 +7,7 @@
AMR (for R)
- 3.0.1.9034
+ 3.0.1.9035
@@ -112,16 +112,16 @@
df#> birth_date age age_exact age_at_y2k
-#> 1 1999-06-30 26 26.69589 0
-#> 2 1968-01-29 58 58.11233 31
-#> 3 1965-12-05 60 60.26301 34
-#> 4 1980-03-01 46 46.02740 19
-#> 5 1949-11-01 76 76.35616 50
-#> 6 1947-02-14 79 79.06849 52
-#> 7 1940-02-19 86 86.05479 59
-#> 8 1988-01-10 38 38.16438 11
-#> 9 1997-08-27 28 28.53699 2
-#> 10 1978-01-26 48 48.12055 21
+#> 1 1999-06-30 26 26.71507 0
+#> 2 1968-01-29 58 58.13151 31
+#> 3 1965-12-05 60 60.28219 34
+#> 4 1980-03-01 46 46.04658 19
+#> 5 1949-11-01 76 76.37534 50
+#> 6 1947-02-14 79 79.08767 52
+#> 7 1940-02-19 86 86.07397 59
+#> 8 1988-01-10 38 38.18356 11
+#> 9 1997-08-27 28 28.55616 2
+#> 10 1978-01-26 48 48.13973 21