@@ -629,7 +629,7 @@ takes into account the antimicrobial susceptibility test results using
#> Basing inclusion on all antimicrobial results, using a points threshold of#> 2#> Including isolates from ICU.
-#> => Found 12,293 'phenotype-based' first isolates (61.5% of total where a
+#> => Found 12,307 'phenotype-based' first isolates (61.5% of total where a#> microbial ID was available)
So only 61.5% is suitable for resistance analysis! We can now filter
on it with the filter() function, also from the
@@ -641,7 +641,7 @@ on it with the
# base R:plot(disk_values, mo ="E. coli", ab ="cipro")
diff --git a/articles/AMR_files/figure-html/disk_plots-1.png b/articles/AMR_files/figure-html/disk_plots-1.png
index 679a7268..9c87d798 100644
Binary files a/articles/AMR_files/figure-html/disk_plots-1.png and b/articles/AMR_files/figure-html/disk_plots-1.png differ
diff --git a/articles/AMR_files/figure-html/disk_plots_mo_ab-1.png b/articles/AMR_files/figure-html/disk_plots_mo_ab-1.png
index 5b9a7fe3..fae97ef2 100644
Binary files a/articles/AMR_files/figure-html/disk_plots_mo_ab-1.png and b/articles/AMR_files/figure-html/disk_plots_mo_ab-1.png differ
diff --git a/articles/AMR_files/figure-html/mic_plots-1.png b/articles/AMR_files/figure-html/mic_plots-1.png
index cd54e62b..34518c06 100644
Binary files a/articles/AMR_files/figure-html/mic_plots-1.png and b/articles/AMR_files/figure-html/mic_plots-1.png differ
diff --git a/articles/AMR_files/figure-html/mic_plots-2.png b/articles/AMR_files/figure-html/mic_plots-2.png
index 5c44bff3..e40fc590 100644
Binary files a/articles/AMR_files/figure-html/mic_plots-2.png and b/articles/AMR_files/figure-html/mic_plots-2.png differ
diff --git a/articles/AMR_files/figure-html/mic_plots_mo_ab-1.png b/articles/AMR_files/figure-html/mic_plots_mo_ab-1.png
index bc64d15d..967f91fa 100644
Binary files a/articles/AMR_files/figure-html/mic_plots_mo_ab-1.png and b/articles/AMR_files/figure-html/mic_plots_mo_ab-1.png differ
diff --git a/articles/AMR_files/figure-html/mic_plots_mo_ab-2.png b/articles/AMR_files/figure-html/mic_plots_mo_ab-2.png
index 9b76b3dd..16372182 100644
Binary files a/articles/AMR_files/figure-html/mic_plots_mo_ab-2.png and b/articles/AMR_files/figure-html/mic_plots_mo_ab-2.png differ
diff --git a/articles/AMR_files/figure-html/plot 1-1.png b/articles/AMR_files/figure-html/plot 1-1.png
index 7e1f517c..1a964284 100644
Binary files a/articles/AMR_files/figure-html/plot 1-1.png and b/articles/AMR_files/figure-html/plot 1-1.png differ
diff --git a/articles/AMR_files/figure-html/plot 3-1.png b/articles/AMR_files/figure-html/plot 3-1.png
index dc3aa6a5..f8b60c6b 100644
Binary files a/articles/AMR_files/figure-html/plot 3-1.png and b/articles/AMR_files/figure-html/plot 3-1.png differ
diff --git a/articles/AMR_files/figure-html/plot 4-1.png b/articles/AMR_files/figure-html/plot 4-1.png
index 43ba8886..33d0105e 100644
Binary files a/articles/AMR_files/figure-html/plot 4-1.png and b/articles/AMR_files/figure-html/plot 4-1.png differ
diff --git a/articles/AMR_files/figure-html/plot 5-1.png b/articles/AMR_files/figure-html/plot 5-1.png
index feee56a1..a9573673 100644
Binary files a/articles/AMR_files/figure-html/plot 5-1.png and b/articles/AMR_files/figure-html/plot 5-1.png differ
diff --git a/articles/EUCAST.html b/articles/EUCAST.html
index 96899d52..c8c7f9a8 100644
--- a/articles/EUCAST.html
+++ b/articles/EUCAST.html
@@ -38,7 +38,7 @@
AMR (for R)
- 1.8.2.9139
+ 1.8.2.9140
diff --git a/articles/MDR.html b/articles/MDR.html
index c83404a6..6c1298c5 100644
--- a/articles/MDR.html
+++ b/articles/MDR.html
@@ -38,7 +38,7 @@
AMR (for R)
- 1.8.2.9139
+ 1.8.2.9140
@@ -385,19 +385,19 @@ names or codes, this would have worked exactly the same way:
head(my_TB_data)#> rifampicin isoniazid gatifloxacin ethambutol pyrazinamide moxifloxacin
-#> 1 R S S S I S
-#> 2 I R S R I S
-#> 3 I R R I S R
-#> 4 R R S R S I
-#> 5 S S S S I S
-#> 6 R I I S S I
+#> 1 R I R I I I
+#> 2 I S S S R S
+#> 3 S R R S I S
+#> 4 I S S I I R
+#> 5 R I I I R I
+#> 6 R R I S R S#> kanamycin
-#> 1 I
+#> 1 S#> 2 I
-#> 3 S
+#> 3 R#> 4 S#> 5 S
-#> 6 I
+#> 6 R
We can now add the interpretation of MDR-TB to our data set. You can
use:
Like many other functions in this package, antibiogram() comes with support for 20 languages that are often detected automatically based on system language:
antibiogram(example_isolates,
- antibiotics =c("CIP", "TOB", "GEN"),
+ antibiotics =c("cipro", "tobra", "genta"), # any arbitrary name or code will work mo_transform ="gramstain", ab_transform ="name", language ="uk")# Ukrainian
For this milestone version, we replaced all mentions of RSI with SIR, to comply with what is actually being commonly used in the field of clinical microbiology when it comes to this tri-form regarding AMR.
While existing functions such as as.rsi(), rsi_df() and ggplot_rsi() still work, their replacements as.sir(), sir_df(), ggplot_sir() are now the current functions for AMR data analysis. A warning will be thrown once a session to remind users about this. The data set rsi_translation is now called clinical_breakpoints to better reflect its content.
The ‘RSI functions’ will be removed in a future version, but not before late 2023 / early 2024.
-
New antibiogram function
+
New antibiogram function
With the new antibiogram() function, users can now generate traditional, combined, syndromic, and even weighted-incidence syndromic combination antibiograms (WISCA). With this, we follow the logic in the previously described work of Klinker et al. (2021, DOI 10.1177/20499361211011373) and Barbieri et al. (2021, DOI 10.1186/s13756-021-00939-2).
The help page for antibiogram() extensively elaborates on use cases, and antibiogram() also supports printing in R Markdown and Quarto, with support for 20 languages.
Furthermore, different plotting methods were implemented to allow for graphical visualisations as well.
-
Interpretation of MIC and disk diffusion values
+
Interpretation of MIC and disk diffusion values
The clinical breakpoints and intrinsic resistance of EUCAST 2022 and CLSI 2022 have been added for as.sir(). EUCAST 2022 (v12.0) is now the new default guideline for all MIC and disks diffusion interpretations, and for eucast_rules() to apply EUCAST Expert Rules. The default guideline (EUCAST) can now be changed with the new AMR_guideline option, such as: options(AMR_guideline = "CLSI 2020").
With the new arguments include_PKPD (default: TRUE) and include_screening (default: FALSE), users can now specify whether breakpoints for screening and from the PK/PD table should be included when interpreting MICs and disks diffusion values. These options can be set globally, which can be read in our new manual.
Interpretation guidelines older than 10 years were removed, the oldest now included guidelines of EUCAST and CLSI are from 2013.
-
Supported languages
+
Supported languages
We added support for the following ten languages: Chinese (simplified), Czech, Finnish, Greek, Japanese, Norwegian (bokmål), Polish, Romanian, Turkish and Ukrainian. All antibiotic names are now available in these languages, and the AMR package will automatically determine a supported language based on the user’s system language.
We are very grateful for the valuable input by our colleagues from other countries. The AMR package is now available in 20 languages in total, and according to download stats used in almost all countries in the world!
-
Microbiological taxonomy
+
Microbiological taxonomy
The microorganisms data set no longer relies on the Catalogue of Life, but on the List of Prokaryotic names with Standing in Nomenclature (LPSN) and is supplemented with the ‘backbone taxonomy’ from the Global Biodiversity Information Facility (GBIF). The structure of this data set has changed to include separate LPSN and GBIF identifiers. Almost all previous MO codes were retained. It contains over 1,400 taxonomic names from 2022.
We previously relied on our own experience to categorise species into pathogenic groups, but we were very happy to encounter the very recent work of Bartlett et al. (2022, DOI 10.1099/mic.0.001269) who extensively studied medical-scientific literature to categorise all bacterial species into groups. See mo_matching_score() on how their work was incorporated into the prevalence column of the microorganisms data set. Using their results, the as.mo() and all mo_*() functions are now much better capable of converting user input to valid taxonomic records.
The microorganisms.old data set was removed, and all previously accepted names are now included in the microorganisms data set. A new column status contains "accepted" for currently accepted names and "synonym" for taxonomic synonyms; currently invalid names. All previously accepted names now have a microorganisms ID and - if available - an LPSN, GBIF and SNOMED CT identifier.
-
Antibiotic agents and selectors
+
Antibiotic agents and selectors
The new function add_custom_antimicrobials() allows users to add custom antimicrobial codes and names to the AMR package.
The antibiotics data set was greatly updated:
The following 20 antibiotics have been added (also includes the new J01RA ATC group): azithromycin/fluconazole/secnidazole (AFC), cefepime/amikacin (CFA), cefixime/ornidazole (CEO), ceftriaxone/beta-lactamase inhibitor (CEB), ciprofloxacin/metronidazole (CIM), ciprofloxacin/ornidazole (CIO), ciprofloxacin/tinidazole (CIT), furazidin (FUR), isoniazid/sulfamethoxazole/trimethoprim/pyridoxine (IST), lascufloxacin (LSC), levofloxacin/ornidazole (LEO), nemonoxacin (NEM), norfloxacin/metronidazole (NME), norfloxacin/tinidazole (NTI), ofloxacin/ornidazole (OOR), oteseconazole (OTE), rifampicin/ethambutol/isoniazid (REI), sarecycline (SRC), tetracycline/oleandomycin (TOL), and thioacetazone (TAT)
@@ -217,14 +217,14 @@
Also, we added support for using antibiotic selectors in scoped dplyr verbs (with or without using vars()), such as in: ... %>% summarise_at(aminoglycosides(), resistance), please see resistance() for examples.
-
Antiviral agents
+
Antiviral agents
We now added extensive support for antiviral agents! For the first time, the AMR package has extensive support for antiviral drugs and to work with their names, codes and other data in any way.
The antivirals data set has been extended with 18 new drugs (also from the new J05AJ ATC group) and now also contains antiviral identifiers and LOINC codes
A new data type av (antivirals) has been added, which is functionally similar to ab for antibiotics
Function mean_amr_distance() to calculate the mean AMR distance. The mean AMR distance is a normalised numeric value to compare AMR test results and can help to identify similar isolates, without comparing antibiograms by hand.
Function sir_interpretation_history() to view the history of previous runs of as.sir() (previously as.rsi()). This returns a ‘logbook’ with the selected guideline, reference table and specific interpretation of each row in a data set on which as.sir() was run.
@@ -233,7 +233,7 @@
-
Changes
+
Changes
Argument combine_IR has been removed from this package (affecting functions count_df(), proportion_df(), and sir_df() and some plotting functions), since it was replaced with combine_SI three years ago
Using units in ab_ddd(..., units = "...") had been deprecated for some time and is now not supported anymore. Use ab_ddd_units() instead.
@@ -277,7 +277,7 @@
mo_synonyns() now contains the scientific reference as names
-
Other
+
Other
Added Peter Dutey-Magni, Dmytro Mykhailenko, Anton Mymrikov, Andrew Norgan, Jonas Salm, and Anita Williams as contributors, to thank them for their valuable input
New website to make use of the new Bootstrap 5 and pkgdown 2.0. The website now contains results for all examples and will be automatically regenerated with every change to our repository, using GitHub Actions
All R and Rmd files in this project are now styled using the styler package