@@ -375,19 +375,19 @@ names or codes, this would have worked exactly the same way:
head ( my_TB_data )
# rifampicin isoniazid gatifloxacin ethambutol pyrazinamide moxifloxacin
-# 1 R R S I R I
-# 2 S I I R I I
-# 3 I R S R R I
-# 4 R R R R R S
-# 5 R I I I I R
-# 6 S S S I S S
+# 1 R R S R I I
+# 2 R S S S I S
+# 3 R S R I S S
+# 4 R S S I I R
+# 5 S R R I I I
+# 6 S I I R R S
# kanamycin
-# 1 R
+# 1 S
# 2 R
-# 3 S
-# 4 S
+# 3 R
+# 4 R
# 5 I
-# 6 I
+# 6 R
We can now add the interpretation of MDR-TB to our data set. You can
use:
@@ -428,40 +428,40 @@ Unique: 5
1
Mono-resistant
-3210
-64.20%
-3210
-64.20%
+3254
+65.08%
+3254
+65.08%
2
Negative
-1010
-20.20%
-4220
-84.40%
+960
+19.20%
+4214
+84.28%
3
Multi-drug-resistant
-451
-9.02%
-4671
-93.42%
+443
+8.86%
+4657
+93.14%
4
Poly-resistant
-235
-4.70%
-4906
-98.12%
+240
+4.80%
+4897
+97.94%
5
Extensively drug-resistant
-94
-1.88%
+103
+2.06%
5000
100.00%
diff --git a/articles/PCA.html b/articles/PCA.html
index 79b004c2..6d96f27b 100644
--- a/articles/PCA.html
+++ b/articles/PCA.html
@@ -38,7 +38,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
@@ -280,7 +280,7 @@ function:
# [1] "Caryophanales" "Enterobacterales" "Lactobacillales" "Pseudomonadales"
# Importance of components:
# PC1 PC2 PC3 PC4 PC5 PC6 PC7
-# Standard deviation 2.1539 1.6807 0.6138 0.33879 0.20808 0.03140 5.121e-17
+# Standard deviation 2.1539 1.6807 0.6138 0.33879 0.20808 0.03140 9.577e-17
# Proportion of Variance 0.5799 0.3531 0.0471 0.01435 0.00541 0.00012 0.000e+00
# Cumulative Proportion 0.5799 0.9330 0.9801 0.99446 0.99988 1.00000 1.000e+00
# Groups (n=4, named as 'order'):
diff --git a/articles/PCA_files/figure-html/unnamed-chunk-5-1.png b/articles/PCA_files/figure-html/unnamed-chunk-5-1.png
index 34be1bb1..568c261e 100644
Binary files a/articles/PCA_files/figure-html/unnamed-chunk-5-1.png and b/articles/PCA_files/figure-html/unnamed-chunk-5-1.png differ
diff --git a/articles/PCA_files/figure-html/unnamed-chunk-6-1.png b/articles/PCA_files/figure-html/unnamed-chunk-6-1.png
index e4d7127e..a5668a59 100644
Binary files a/articles/PCA_files/figure-html/unnamed-chunk-6-1.png and b/articles/PCA_files/figure-html/unnamed-chunk-6-1.png differ
diff --git a/articles/PCA_files/figure-html/unnamed-chunk-7-1.png b/articles/PCA_files/figure-html/unnamed-chunk-7-1.png
index fa91144f..6e5b7b3f 100644
Binary files a/articles/PCA_files/figure-html/unnamed-chunk-7-1.png and b/articles/PCA_files/figure-html/unnamed-chunk-7-1.png differ
diff --git a/articles/SPSS.html b/articles/SPSS.html
index 5a5179aa..db90107f 100644
--- a/articles/SPSS.html
+++ b/articles/SPSS.html
@@ -38,7 +38,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
@@ -168,7 +168,7 @@
Dr. Matthijs
Berends
- 29 November 2022
+ 09 December 2022
Source: vignettes/SPSS.Rmd
SPSS.Rmd
@@ -247,7 +247,7 @@ data using a custom made website. The webdesign knowledge needed
R has a huge community.
Many R users just ask questions on websites like StackOverflow.com , the largest
-online community for programmers. At the time of writing, 472,394
+online community for programmers. At the time of writing, 473,435
R-related questions have already been asked on this platform (that
covers questions and answers for any programming language). In my own
experience, most questions are answered within a couple of
diff --git a/articles/WHONET.html b/articles/WHONET.html
index a7dc6b3e..b690a881 100644
--- a/articles/WHONET.html
+++ b/articles/WHONET.html
@@ -38,7 +38,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/articles/datasets.html b/articles/datasets.html
index f005163b..8135254e 100644
--- a/articles/datasets.html
+++ b/articles/datasets.html
@@ -38,7 +38,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
@@ -166,7 +166,7 @@
Automatically, using the rOpenSci R-universe platform , by adding our R-universe address to your list of repositories (‘repos’):
diff --git a/news/index.html b/news/index.html
index 9dd49afd..84118429 100644
--- a/news/index.html
+++ b/news/index.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
@@ -132,10 +132,10 @@
-
AMR 1.8.2.9054
+
AMR 1.8.2.9057
This version will eventually become v2.0! We’re happy to reach a new major milestone soon!
-
Breaking
+
Breaking
Removed all species of the taxonomic kingdom Chromista from the package. This was done for multiple reasons:
CRAN allows packages to be around 5 MB maximum, some packages are exempted but this package is not one of them
Chromista are not relevant when it comes to antimicrobial resistance, thus lacking the primary scope of this package
@@ -151,7 +151,7 @@
Using units
in ab_ddd(..., units = "...")
had been deprecated and is now not supported anymore. Use ab_ddd_units()
instead.
-
New
+
New
EUCAST 2022 and CLSI 2022 guidelines have been added for as.rsi()
. 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.
Support for the following languages: Chinese, Greek, Japanese, Polish, Turkish and Ukrainian. We are very grateful for the valuable input by our colleagues from other countries. The AMR
package is now available in 16 languages. The automatic language determination will give a note at start-up on systems in supported languages.
@@ -193,16 +193,17 @@
-
Changed
-
Fixes and changes for using as.rsi()
:
-On certain EUCAST breakpoints for MIC values
-On NA
values (e.g. as.rsi(as.disk(NA), ...)
)
-On bug-drug combinations with multiple breakpoints for different body sites
+Changes
+For as.rsi()
:
+Fixed certain EUCAST breakpoints for MIC values
+Allow NA
values (e.g. as.rsi(as.disk(NA), ...)
)
+Fix for bug-drug combinations with multiple breakpoints for different body sites
Interpretation from MIC and disk zones is now more informative about availability of breakpoints and more robust
The default guideline (EUCAST) can now be changed with options(AMR_guideline = "...")
Removed the as.integer()
method for MIC values, since MIC are not integer values and running table()
on MIC values consequently failed for not being able to retrieve the level position (as that’s how normally as.integer()
on factor
s work)
+Fixed determination of Gram stains (mo_gramstain()
), since the taxonomic phyla Actinobacteria, Chloroflexi, Firmicutes, and Tenericutes have been renamed to respectively Actinomycetota, Chloroflexota, Bacillota, and Mycoplasmatota in 2021
droplevels()
on MIC will now return a common factor
at default and will lose the mic
class. Use droplevels(..., as.mic = TRUE)
to keep the mic
class.
Small fix for using ab_from_text()
@@ -231,7 +232,7 @@
Cleaning columns with as.rsi()
, as.mic()
, or as.disk()
will now show the column name in the warning for invalid results
-
Other
+
Other
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
Added Peter Dutey-Magni, Dmytro Mykhailenko, Anton Mymrikov, and Jonas Salm as contributors, to thank them for their valuable input
All R and Rmd files in this project are now styled using the styler
package
diff --git a/pkgdown.yml b/pkgdown.yml
index ad098317..aeda53e8 100644
--- a/pkgdown.yml
+++ b/pkgdown.yml
@@ -11,7 +11,7 @@ articles:
datasets: datasets.html
resistance_predict: resistance_predict.html
welcome_to_AMR: welcome_to_AMR.html
-last_built: 2022-11-29T18:41Z
+last_built: 2022-12-09T10:24Z
urls:
reference: https://msberends.github.io/AMR/reference
article: https://msberends.github.io/AMR/articles
diff --git a/reference/AMR-deprecated.html b/reference/AMR-deprecated.html
index d355012b..155f22b9 100644
--- a/reference/AMR-deprecated.html
+++ b/reference/AMR-deprecated.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/AMR.html b/reference/AMR.html
index ade89d64..917ea575 100644
--- a/reference/AMR.html
+++ b/reference/AMR.html
@@ -62,7 +62,7 @@ Principal component analysis for AMR
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/Rplot005.png b/reference/Rplot005.png
index 69b46159..e89e6374 100644
Binary files a/reference/Rplot005.png and b/reference/Rplot005.png differ
diff --git a/reference/Rplot006.png b/reference/Rplot006.png
index 10cbeaef..4d5057e4 100644
Binary files a/reference/Rplot006.png and b/reference/Rplot006.png differ
diff --git a/reference/Rplot007.png b/reference/Rplot007.png
index 864b525e..1013447e 100644
Binary files a/reference/Rplot007.png and b/reference/Rplot007.png differ
diff --git a/reference/Rplot008.png b/reference/Rplot008.png
index f070b283..087b8a3a 100644
Binary files a/reference/Rplot008.png and b/reference/Rplot008.png differ
diff --git a/reference/Rplot009.png b/reference/Rplot009.png
index 8fe109c0..4b608c5d 100644
Binary files a/reference/Rplot009.png and b/reference/Rplot009.png differ
diff --git a/reference/Rplot010.png b/reference/Rplot010.png
index 5129464a..46064676 100644
Binary files a/reference/Rplot010.png and b/reference/Rplot010.png differ
diff --git a/reference/WHOCC.html b/reference/WHOCC.html
index 7626bf55..da0f6fb3 100644
--- a/reference/WHOCC.html
+++ b/reference/WHOCC.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/WHONET.html b/reference/WHONET.html
index 1e1f1122..3706b5c7 100644
--- a/reference/WHONET.html
+++ b/reference/WHONET.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/ab_from_text.html b/reference/ab_from_text.html
index ee0574cf..fd5e033f 100644
--- a/reference/ab_from_text.html
+++ b/reference/ab_from_text.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/ab_property.html b/reference/ab_property.html
index dbd2ca0e..611e26c7 100644
--- a/reference/ab_property.html
+++ b/reference/ab_property.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/add_custom_antimicrobials.html b/reference/add_custom_antimicrobials.html
index 59f9b7ca..c39f142e 100644
--- a/reference/add_custom_antimicrobials.html
+++ b/reference/add_custom_antimicrobials.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/age.html b/reference/age.html
index 04f85202..c1e7f47e 100644
--- a/reference/age.html
+++ b/reference/age.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
@@ -195,16 +195,16 @@
df
#> birth_date age age_exact age_at_y2k
-#> 1 1944-12-30 77 77.91507 55
-#> 2 1946-04-06 76 76.64932 53
-#> 3 1933-09-07 89 89.22740 66
-#> 4 1992-05-18 30 30.53425 7
-#> 5 1970-02-25 52 52.75890 29
-#> 6 1944-11-05 78 78.06575 55
-#> 7 1950-02-10 72 72.80000 49
-#> 8 1995-05-07 27 27.56438 4
-#> 9 1998-09-17 24 24.20000 1
-#> 10 1969-01-26 53 53.84110 30
+#> 1 1982-05-17 40 40.56438 17
+#> 2 1992-09-06 30 30.25753 7
+#> 3 1996-06-28 26 26.44932 3
+#> 4 1999-03-07 23 23.75890 0
+#> 5 1965-11-27 57 57.03288 34
+#> 6 1939-11-24 83 83.04110 60
+#> 7 1955-12-24 66 66.95890 44
+#> 8 1948-04-02 74 74.68767 51
+#> 9 1950-10-19 72 72.13973 49
+#> 10 1978-01-02 44 44.93425 21
On this page
diff --git a/reference/age_groups.html b/reference/age_groups.html
index 04232d72..28572a63 100644
--- a/reference/age_groups.html
+++ b/reference/age_groups.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/antibiotic_class_selectors.html b/reference/antibiotic_class_selectors.html
index 5d441e2a..4007e6a8 100644
--- a/reference/antibiotic_class_selectors.html
+++ b/reference/antibiotic_class_selectors.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/antibiotics.html b/reference/antibiotics.html
index ad2d9059..7e190860 100644
--- a/reference/antibiotics.html
+++ b/reference/antibiotics.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/as.ab.html b/reference/as.ab.html
index c4000933..1964abf3 100644
--- a/reference/as.ab.html
+++ b/reference/as.ab.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/as.av.html b/reference/as.av.html
index ce970af0..f05e8d75 100644
--- a/reference/as.av.html
+++ b/reference/as.av.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/as.disk.html b/reference/as.disk.html
index 24b80064..2ddb17bf 100644
--- a/reference/as.disk.html
+++ b/reference/as.disk.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/as.mic.html b/reference/as.mic.html
index 55a329dd..c1a09e05 100644
--- a/reference/as.mic.html
+++ b/reference/as.mic.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/as.mo.html b/reference/as.mo.html
index f14e4dab..2e94e4ce 100644
--- a/reference/as.mo.html
+++ b/reference/as.mo.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/as.rsi.html b/reference/as.rsi.html
index ea604f6f..365fe42d 100644
--- a/reference/as.rsi.html
+++ b/reference/as.rsi.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
@@ -506,16 +506,16 @@ A microorganism is categorised as Susceptible, Increased exposure when
#> # A tibble: 50 × 12
#> datetime index ab_input ab_gu…¹ mo_in…² mo_guideline guide…³
#> <dttm> <int> <chr> <ab> <chr> <mo> <chr>
-#> 1 2022-11-29 18:42:02 1 ampicillin AMP Strep … B_STRPT_PNMN EUCAST…
-#> 2 2022-11-29 18:42:03 1 AMP AMP Escher… B_[ORD]_ENTRBCTR EUCAST…
-#> 3 2022-11-29 18:42:03 1 CIP CIP Escher… B_[ORD]_ENTRBCTR EUCAST…
-#> 4 2022-11-29 18:42:03 1 GEN GEN Escher… B_[ORD]_ENTRBCTR EUCAST…
-#> 5 2022-11-29 18:42:04 1 TOB TOB Escher… B_[ORD]_ENTRBCTR EUCAST…
-#> 6 2022-11-29 18:42:05 1 AMX AMX B_STRP… B_STRPT_PNMN EUCAST…
-#> 7 2022-11-29 18:42:05 1 AMX AMX B_STRP… B_STRPT_PNMN EUCAST…
-#> 8 2022-11-29 18:42:05 2 AMX AMX B_STRP… B_STRPT_PNMN EUCAST…
-#> 9 2022-11-29 18:42:05 3 AMX AMX B_STRP… B_STRPT_PNMN EUCAST…
-#> 10 2022-11-29 18:42:05 4 AMX AMX B_STRP… B_STRPT_PNMN EUCAST…
+#> 1 2022-12-09 10:24:24 1 ampicillin AMP Strep … B_STRPT_PNMN EUCAST…
+#> 2 2022-12-09 10:24:24 1 AMP AMP Escher… B_[ORD]_ENTRBCTR EUCAST…
+#> 3 2022-12-09 10:24:25 1 CIP CIP Escher… B_[ORD]_ENTRBCTR EUCAST…
+#> 4 2022-12-09 10:24:25 1 GEN GEN Escher… B_[ORD]_ENTRBCTR EUCAST…
+#> 5 2022-12-09 10:24:25 1 TOB TOB Escher… B_[ORD]_ENTRBCTR EUCAST…
+#> 6 2022-12-09 10:24:26 1 AMX AMX B_STRP… B_STRPT_PNMN EUCAST…
+#> 7 2022-12-09 10:24:26 1 AMX AMX B_STRP… B_STRPT_PNMN EUCAST…
+#> 8 2022-12-09 10:24:26 2 AMX AMX B_STRP… B_STRPT_PNMN EUCAST…
+#> 9 2022-12-09 10:24:26 3 AMX AMX B_STRP… B_STRPT_PNMN EUCAST…
+#> 10 2022-12-09 10:24:26 4 AMX AMX B_STRP… B_STRPT_PNMN EUCAST…
#> # … with 40 more rows, 5 more variables: ref_table <chr>, method <chr>,
#> # input <dbl>, outcome <rsi>, breakpoint_S_R <chr>, and abbreviated variable
#> # names ¹ab_guideline, ²mo_input, ³guideline
diff --git a/reference/atc_online.html b/reference/atc_online.html
index 669ef880..f65f6fc4 100644
--- a/reference/atc_online.html
+++ b/reference/atc_online.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/av_from_text.html b/reference/av_from_text.html
index 53df4360..70338bf5 100644
--- a/reference/av_from_text.html
+++ b/reference/av_from_text.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/av_property.html b/reference/av_property.html
index 3acacee0..9a8e1820 100644
--- a/reference/av_property.html
+++ b/reference/av_property.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/availability.html b/reference/availability.html
index 12cb96e9..c92ccb43 100644
--- a/reference/availability.html
+++ b/reference/availability.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/bug_drug_combinations.html b/reference/bug_drug_combinations.html
index 4560e07c..2bfb281b 100644
--- a/reference/bug_drug_combinations.html
+++ b/reference/bug_drug_combinations.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
@@ -260,16 +260,16 @@
#> # A tibble: 80 × 6
#> mo ab S I R total
#> * <chr> <chr> <int> <int> <int> <int>
-#> 1 Gram-negative PEN 17 1 726 744
-#> 2 Gram-negative OXA 9 0 1 10
-#> 3 Gram-negative FLC 11 0 1 12
-#> 4 Gram-negative AMX 231 1 407 639
-#> 5 Gram-negative AMC 473 89 175 737
-#> 6 Gram-negative AMP 231 1 407 639
-#> 7 Gram-negative TZP 556 11 76 643
+#> 1 Gram-negative PEN 8 0 717 725
+#> 2 Gram-negative OXA 6 0 0 6
+#> 3 Gram-negative FLC 6 0 0 6
+#> 4 Gram-negative AMX 226 0 405 631
+#> 5 Gram-negative AMC 463 89 174 726
+#> 6 Gram-negative AMP 226 0 405 631
+#> 7 Gram-negative TZP 554 11 76 641
#> 8 Gram-negative CZO 94 2 110 206
#> 9 Gram-negative FEP 470 1 14 485
-#> 10 Gram-negative CXM 546 22 144 712
+#> 10 Gram-negative CXM 539 22 142 703
#> # … with 70 more rows
#> Use 'format()' on this result to get a publishable/printable format.
diff --git a/reference/count.html b/reference/count.html
index 962a5ab5..2a18008e 100644
--- a/reference/count.html
+++ b/reference/count.html
@@ -12,7 +12,7 @@ count_resistant() should be used to count resistant isolates, count_susceptible(
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/custom_eucast_rules.html b/reference/custom_eucast_rules.html
index deac7459..73be2ff0 100644
--- a/reference/custom_eucast_rules.html
+++ b/reference/custom_eucast_rules.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/dosage.html b/reference/dosage.html
index cb041d74..29b924e4 100644
--- a/reference/dosage.html
+++ b/reference/dosage.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/eucast_rules.html b/reference/eucast_rules.html
index 7d9c3277..3a9a74ea 100644
--- a/reference/eucast_rules.html
+++ b/reference/eucast_rules.html
@@ -12,7 +12,7 @@ To improve the interpretation of the antibiogram before EUCAST rules are applied
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/example_isolates.html b/reference/example_isolates.html
index fab4e317..62d612af 100644
--- a/reference/example_isolates.html
+++ b/reference/example_isolates.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/example_isolates_unclean.html b/reference/example_isolates_unclean.html
index 6765d5b5..9a9463c9 100644
--- a/reference/example_isolates_unclean.html
+++ b/reference/example_isolates_unclean.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/first_isolate.html b/reference/first_isolate.html
index 357968e7..e7553531 100644
--- a/reference/first_isolate.html
+++ b/reference/first_isolate.html
@@ -12,7 +12,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
@@ -354,7 +354,7 @@
example_isolates [ which ( first_isolate ( info = FALSE ) & mo_is_gram_negative ( ) ) , ]
#> Including isolates from ICU.
#> ℹ Using column 'mo' as input for mo_is_gram_negative()
-#> # A tibble: 460 × 46
+#> # A tibble: 437 × 46
#> date patient age gender ward mo PEN OXA FLC AMX
#> <date> <chr> <dbl> <chr> <chr> <mo> <rsi> <rsi> <rsi> <rsi>
#> 1 2002-01-02 A77334 65 F Clinical B_ESCHR_COLI R NA NA NA
@@ -367,7 +367,7 @@
#> 8 2002-03-16 4FC193 69 M Clinical B_PSDMN_AERG R NA NA R
#> 9 2002-04-01 496896 46 F ICU B_ESCHR_COLI R NA NA NA
#> 10 2002-04-23 EE2510 69 F ICU B_ESCHR_COLI R NA NA NA
-#> # … with 450 more rows, and 36 more variables: AMC <rsi>, AMP <rsi>, TZP <rsi>,
+#> # … with 427 more rows, and 36 more variables: AMC <rsi>, AMP <rsi>, TZP <rsi>,
#> # CZO <rsi>, FEP <rsi>, CXM <rsi>, FOX <rsi>, CTX <rsi>, CAZ <rsi>,
#> # CRO <rsi>, GEN <rsi>, TOB <rsi>, AMK <rsi>, KAN <rsi>, TMP <rsi>,
#> # SXT <rsi>, NIT <rsi>, FOS <rsi>, LNZ <rsi>, CIP <rsi>, MFX <rsi>,
diff --git a/reference/g.test.html b/reference/g.test.html
index 31bc78e2..2bfec91b 100644
--- a/reference/g.test.html
+++ b/reference/g.test.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/get_episode.html b/reference/get_episode.html
index c8e22866..d070b7d5 100644
--- a/reference/get_episode.html
+++ b/reference/get_episode.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
@@ -182,40 +182,40 @@
df <- example_isolates [ sample ( seq_len ( 2000 ) , size = 200 ) , ]
get_episode ( df $ date , episode_days = 60 ) # indices
-#> [1] 53 62 32 61 13 24 5 35 42 38 15 9 6 4 24 17 13 61 29 35 46 18 27 5 29
-#> [26] 15 43 28 19 12 13 32 59 8 32 6 20 2 5 23 21 32 43 45 32 56 37 48 38 29
-#> [51] 13 18 53 7 48 52 24 7 36 52 60 6 32 29 31 5 21 12 58 15 44 31 25 8 41
-#> [76] 29 8 44 32 56 11 44 9 32 39 31 13 60 30 33 17 49 10 47 8 19 19 11 7 46
-#> [101] 31 15 47 3 25 30 61 36 1 22 55 23 20 60 60 44 63 36 46 58 58 26 51 12 41
-#> [126] 13 11 7 2 63 12 23 18 45 26 51 46 54 32 21 11 1 59 9 53 59 62 59 47 8
-#> [151] 54 10 15 56 39 36 50 38 40 57 42 22 31 34 14 49 34 4 26 29 63 59 62 31 8
-#> [176] 4 63 33 28 40 40 3 32 4 58 13 11 16 5 58 29 1 46 38 61 59 7 51 34 27
+#> [1] 49 11 47 52 11 50 54 53 64 23 65 64 4 33 34 43 52 35 16 4 9 27 38 10 37
+#> [26] 34 39 43 60 8 7 12 47 22 19 22 19 16 6 8 58 4 17 15 21 4 55 3 7 2
+#> [51] 65 45 66 40 62 50 22 18 26 38 17 32 27 49 35 36 30 47 34 24 58 61 36 45 17
+#> [76] 48 23 34 28 55 21 53 13 59 30 23 17 60 1 29 48 26 21 8 1 61 29 43 16 29
+#> [101] 31 31 12 15 46 31 13 35 39 14 8 64 52 36 60 32 4 48 28 33 30 45 10 25 17
+#> [126] 25 42 8 61 60 54 2 20 38 18 63 3 63 10 14 5 26 52 15 57 65 30 22 64 50
+#> [151] 23 61 41 64 58 36 20 15 44 51 57 20 27 41 26 37 29 37 47 18 18 30 28 62 13
+#> [176] 38 43 20 31 21 18 35 15 48 14 39 26 44 49 56 64 30 34 22 46 20 1 18 49 12
is_new_episode ( df $ date , episode_days = 60 ) # TRUE/FALSE
-#> [1] FALSE TRUE FALSE FALSE FALSE FALSE TRUE TRUE FALSE TRUE FALSE TRUE
-#> [13] FALSE FALSE TRUE TRUE TRUE TRUE FALSE FALSE FALSE FALSE TRUE FALSE
-#> [25] FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
-#> [37] FALSE TRUE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE TRUE FALSE
-#> [49] FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE FALSE FALSE
-#> [61] FALSE TRUE FALSE FALSE FALSE FALSE TRUE FALSE FALSE TRUE TRUE TRUE
-#> [73] FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE
-#> [85] TRUE FALSE FALSE FALSE TRUE TRUE FALSE FALSE TRUE FALSE TRUE FALSE
-#> [97] TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE FALSE FALSE FALSE
-#> [109] TRUE FALSE TRUE TRUE TRUE FALSE TRUE FALSE FALSE FALSE TRUE FALSE
-#> [121] FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE FALSE
-#> [133] TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
-#> [145] TRUE FALSE FALSE TRUE FALSE FALSE TRUE FALSE FALSE TRUE FALSE TRUE
-#> [157] TRUE FALSE FALSE TRUE TRUE TRUE FALSE FALSE TRUE TRUE TRUE FALSE
-#> [169] TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
-#> [181] TRUE TRUE TRUE TRUE TRUE FALSE FALSE TRUE FALSE FALSE TRUE FALSE
-#> [193] FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE
+#> [1] FALSE FALSE TRUE FALSE TRUE FALSE TRUE FALSE FALSE TRUE FALSE FALSE
+#> [13] FALSE TRUE TRUE FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE
+#> [25] FALSE FALSE TRUE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE TRUE
+#> [37] TRUE TRUE TRUE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
+#> [49] TRUE FALSE TRUE TRUE TRUE TRUE FALSE FALSE FALSE TRUE FALSE FALSE
+#> [61] TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE
+#> [73] FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE TRUE TRUE TRUE TRUE
+#> [85] TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE TRUE TRUE FALSE
+#> [97] FALSE FALSE FALSE TRUE FALSE TRUE TRUE FALSE TRUE FALSE FALSE FALSE
+#> [109] FALSE FALSE FALSE TRUE FALSE FALSE FALSE TRUE TRUE FALSE FALSE FALSE
+#> [121] FALSE FALSE TRUE FALSE FALSE TRUE TRUE FALSE FALSE FALSE FALSE TRUE
+#> [133] FALSE TRUE FALSE FALSE TRUE TRUE FALSE FALSE TRUE FALSE FALSE TRUE
+#> [145] TRUE FALSE FALSE FALSE FALSE TRUE FALSE TRUE FALSE FALSE FALSE TRUE
+#> [157] FALSE FALSE TRUE TRUE FALSE TRUE TRUE TRUE FALSE TRUE FALSE FALSE
+#> [169] FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE TRUE FALSE FALSE FALSE
+#> [181] FALSE TRUE FALSE FALSE TRUE FALSE TRUE FALSE TRUE TRUE FALSE FALSE
+#> [193] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
# filter on results from the third 60-day episode only, using base R
df [ which ( get_episode ( df $ date , 60 ) == 3 ) , ]
#> # A tibble: 2 × 46
-#> date patient age gender ward mo PEN OXA FLC AMX
-#> <date> <chr> <dbl> <chr> <chr> <mo> <rsi> <rsi> <rsi> <rsi>
-#> 1 2002-06-22 FD8039 75 F ICU B_ESCHR_COLI R NA NA NA
-#> 2 2002-06-18 012595 30 M ICU B_CRYNB I NA NA NA
+#> date patient age gender ward mo PEN OXA FLC AMX
+#> <date> <chr> <dbl> <chr> <chr> <mo> <rsi> <rsi> <rsi> <rsi>
+#> 1 2002-08-19 A49852 70 M Clinical B_ESCHR_COLI R NA NA NA
+#> 2 2002-07-30 218912 76 F ICU B_ESCHR_COLI R NA NA NA
#> # … with 36 more variables: AMC <rsi>, AMP <rsi>, TZP <rsi>, CZO <rsi>,
#> # FEP <rsi>, CXM <rsi>, FOX <rsi>, CTX <rsi>, CAZ <rsi>, CRO <rsi>,
#> # GEN <rsi>, TOB <rsi>, AMK <rsi>, KAN <rsi>, TMP <rsi>, SXT <rsi>,
@@ -251,16 +251,16 @@
#> # Groups: condition [3]
#> patient date condition new_episode
#> <chr> <date> <chr> <lgl>
-#> 1 F76601 2015-09-20 A FALSE
-#> 2 D20588 2017-08-17 A FALSE
-#> 3 48BB05 2010-03-15 B TRUE
-#> 4 871020 2017-07-20 B FALSE
-#> 5 554965 2005-08-29 B FALSE
-#> 6 451990 2008-03-22 B FALSE
-#> 7 E44854 2003-03-22 C FALSE
-#> 8 D91230 2010-12-06 A TRUE
-#> 9 743093 2012-09-14 C FALSE
-#> 10 BC9909 2011-07-08 A FALSE
+#> 1 245525 2013-11-02 A FALSE
+#> 2 765860 2004-04-07 A FALSE
+#> 3 702351 2013-01-26 B FALSE
+#> 4 188588 2014-08-19 B FALSE
+#> 5 28F906 2004-04-05 C FALSE
+#> 6 62B634 2014-01-16 B FALSE
+#> 7 B61087 2015-03-17 C FALSE
+#> 8 4F9406 2015-01-23 C FALSE
+#> 9 D39422 2017-05-17 C FALSE
+#> 10 5B78D5 2007-01-01 A TRUE
#> # … with 190 more rows
if ( require ( "dplyr" ) ) {
df %>%
@@ -275,16 +275,16 @@
#> # Groups: ward, patient [182]
#> ward date patient new_index new_logical
#> <chr> <date> <chr> <dbl> <lgl>
-#> 1 ICU 2015-09-20 F76601 1 TRUE
-#> 2 ICU 2017-08-17 D20588 1 TRUE
-#> 3 Clinical 2010-03-15 48BB05 1 TRUE
-#> 4 Clinical 2017-07-20 871020 1 TRUE
-#> 5 Clinical 2005-08-29 554965 1 TRUE
-#> 6 Clinical 2008-03-22 451990 1 TRUE
-#> 7 ICU 2003-03-22 E44854 1 TRUE
-#> 8 Clinical 2010-12-06 D91230 1 TRUE
-#> 9 Outpatient 2012-09-14 743093 1 TRUE
-#> 10 Clinical 2011-07-08 BC9909 1 TRUE
+#> 1 ICU 2013-11-02 245525 1 TRUE
+#> 2 Clinical 2004-04-07 765860 1 TRUE
+#> 3 ICU 2013-01-26 702351 1 TRUE
+#> 4 Clinical 2014-08-19 188588 1 TRUE
+#> 5 ICU 2004-04-05 28F906 1 TRUE
+#> 6 Clinical 2014-01-16 62B634 1 TRUE
+#> 7 ICU 2015-03-17 B61087 1 TRUE
+#> 8 Clinical 2015-01-23 4F9406 1 TRUE
+#> 9 Clinical 2017-05-17 D39422 1 TRUE
+#> 10 Outpatient 2007-01-01 5B78D5 1 TRUE
#> # … with 190 more rows
if ( require ( "dplyr" ) ) {
df %>%
@@ -299,9 +299,9 @@
#> # A tibble: 3 × 5
#> ward n_patients n_episodes_365 n_episodes_60 n_episodes_30
#> <chr> <int> <int> <int> <int>
-#> 1 Clinical 112 15 51 70
-#> 2 ICU 61 13 37 43
-#> 3 Outpatient 9 6 9 9
+#> 1 Clinical 116 14 54 75
+#> 2 ICU 57 12 39 46
+#> 3 Outpatient 9 6 7 7
if ( require ( "dplyr" ) ) {
# grouping on patients and microorganisms leads to the same
@@ -331,19 +331,19 @@
select ( group_vars ( . ) , flag_episode )
}
#> # A tibble: 200 × 4
-#> # Groups: patient, mo, ward [188]
-#> patient mo ward flag_episode
-#> <chr> <mo> <chr> <lgl>
-#> 1 F76601 B_ESCHR_COLI ICU TRUE
-#> 2 D20588 B_STPHY_HMNS ICU TRUE
-#> 3 48BB05 B_STPHY_CONS Clinical TRUE
-#> 4 871020 B_STPHY_EPDR Clinical TRUE
-#> 5 554965 B_STPHY_AURS Clinical TRUE
-#> 6 451990 B_ESCHR_COLI Clinical TRUE
-#> 7 E44854 B_STRPT_PNMN ICU TRUE
-#> 8 D91230 B_STPHY_EPDR Clinical TRUE
-#> 9 743093 B_ENTRBC_CLOC Outpatient TRUE
-#> 10 BC9909 B_ENTRBC_CLOC Clinical TRUE
+#> # Groups: patient, mo, ward [190]
+#> patient mo ward flag_episode
+#> <chr> <mo> <chr> <lgl>
+#> 1 245525 B_PROTS_MRBL ICU TRUE
+#> 2 765860 B_STRPT_GRPA Clinical TRUE
+#> 3 702351 B_ESCHR_COLI ICU TRUE
+#> 4 188588 B_CTRBC_KOSR Clinical TRUE
+#> 5 28F906 B_STPHY_CONS ICU TRUE
+#> 6 62B634 B_STRPT_PNMN Clinical TRUE
+#> 7 B61087 B_STPHY_EPDR ICU TRUE
+#> 8 4F9406 B_KLBSL_PNMN Clinical TRUE
+#> 9 D39422 B_KLBSL_PNMN Clinical TRUE
+#> 10 5B78D5 B_STPHY_AURS Outpatient TRUE
#> # … with 190 more rows
# }
diff --git a/reference/ggplot_pca-1.png b/reference/ggplot_pca-1.png
index d350d405..50186dc1 100644
Binary files a/reference/ggplot_pca-1.png and b/reference/ggplot_pca-1.png differ
diff --git a/reference/ggplot_pca-2.png b/reference/ggplot_pca-2.png
index 03cbd555..fe3104e8 100644
Binary files a/reference/ggplot_pca-2.png and b/reference/ggplot_pca-2.png differ
diff --git a/reference/ggplot_pca.html b/reference/ggplot_pca.html
index f1c58238..347f732f 100644
--- a/reference/ggplot_pca.html
+++ b/reference/ggplot_pca.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/ggplot_rsi-10.png b/reference/ggplot_rsi-10.png
index 413bd9c4..f88aeb08 100644
Binary files a/reference/ggplot_rsi-10.png and b/reference/ggplot_rsi-10.png differ
diff --git a/reference/ggplot_rsi.html b/reference/ggplot_rsi.html
index ced5e0b9..12734cbe 100644
--- a/reference/ggplot_rsi.html
+++ b/reference/ggplot_rsi.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/guess_ab_col.html b/reference/guess_ab_col.html
index 9aef1009..85e73762 100644
--- a/reference/guess_ab_col.html
+++ b/reference/guess_ab_col.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/index.html b/reference/index.html
index 41d72fb8..678cc152 100644
--- a/reference/index.html
+++ b/reference/index.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/intrinsic_resistant.html b/reference/intrinsic_resistant.html
index eca30d53..ace157c6 100644
--- a/reference/intrinsic_resistant.html
+++ b/reference/intrinsic_resistant.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/italicise_taxonomy.html b/reference/italicise_taxonomy.html
index 4b828f01..497afe62 100644
--- a/reference/italicise_taxonomy.html
+++ b/reference/italicise_taxonomy.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/join.html b/reference/join.html
index 56bae837..0dcf15fc 100644
--- a/reference/join.html
+++ b/reference/join.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/key_antimicrobials.html b/reference/key_antimicrobials.html
index c2832f9c..453651a5 100644
--- a/reference/key_antimicrobials.html
+++ b/reference/key_antimicrobials.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/kurtosis.html b/reference/kurtosis.html
index 43862e5a..aaf6d745 100644
--- a/reference/kurtosis.html
+++ b/reference/kurtosis.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
@@ -172,9 +172,9 @@
Examples
kurtosis ( rnorm ( 10000 ) )
-#> [1] 3.060168
+#> [1] 2.942494
kurtosis ( rnorm ( 10000 ) , excess = TRUE )
-#> [1] 0.01364338
+#> [1] -0.008191898
On this page
diff --git a/reference/like.html b/reference/like.html
index 1f2ace5d..269a5718 100644
--- a/reference/like.html
+++ b/reference/like.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/mdro.html b/reference/mdro.html
index 5ab99ccc..3ffe0a86 100644
--- a/reference/mdro.html
+++ b/reference/mdro.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/mean_amr_distance.html b/reference/mean_amr_distance.html
index dc5f2b1d..cc16787a 100644
--- a/reference/mean_amr_distance.html
+++ b/reference/mean_amr_distance.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
@@ -200,10 +200,10 @@
x <- random_mic ( 10 )
x
#> Class 'mic'
-#> [1] 0.5 32 1 4 256 64 4 0.002 0.025 0.5
+#> [1] 0.125 16 128 0.5 4 0.5 0.0625 0.01 0.025 32
mean_amr_distance ( x )
-#> [1] -0.3241709 0.8396588 -0.1301993 0.2577439 1.4215736 1.0336304
-#> [7] 0.2577439 -1.8693070 -1.1625023 -0.3241709
+#> [1] -0.5844196 0.9288246 1.5773579 -0.1520641 0.4964691 -0.1520641
+#> [7] -0.8005973 -1.3721402 -1.0863687 1.1450024
y <- data.frame (
id = LETTERS [ 1 : 10 ] ,
@@ -213,38 +213,38 @@
tobr = random_mic ( 10 , ab = "tobr" , mo = "Escherichia coli" )
)
y
-#> id amox cipr gent tobr
-#> 1 A 4 <=0.125 <=0.5 4
-#> 2 B 4 0.25 1 4
-#> 3 C 32 0.25 1 8
-#> 4 D 2 <=0.125 <=0.5 1
-#> 5 E 8 <=0.125 8 1
-#> 6 F 32 0.25 2 2
-#> 7 G 8 0.5 1 2
-#> 8 H 2 >=1 8 2
-#> 9 I 32 <=0.125 4 4
-#> 10 J 16 0.25 2 2
+#> id amox cipr gent tobr
+#> 1 A 16 >=4 1 >=8
+#> 2 B 8 1 1 >=8
+#> 3 C 8 2 4 <=0.5
+#> 4 D 8 0.25 16 4
+#> 5 E 4 <=0.0625 4 4
+#> 6 F 16 1 2 4
+#> 7 G 8 2 4 4
+#> 8 H 4 1 4 >=8
+#> 9 I 4 0.5 4 2
+#> 10 J 16 0.125 1 <=0.5
mean_amr_distance ( y )
#> ℹ Calculating mean AMR distance based on columns "amox", "cipr", "gent",
#> "id" and "tobr"
#> Warning: NAs introduced by coercion
-#> [1] -0.51912782 -0.09831951 0.63538430 -1.20290099 -0.21181627 0.27774576
-#> [7] 0.04628481 0.49245479 0.45927606 0.12101887
+#> [1] 0.58580073 0.01609138 -0.12243892 0.37435404 -0.58927461 0.35318445
+#> [7] 0.37571945 0.10382446 -0.36004270 -0.73721828
y $ amr_distance <- mean_amr_distance ( y , where ( is.mic ) )
#> ℹ Calculating mean AMR distance based on columns "amox", "cipr", "gent" and
#> "tobr"
y [ order ( y $ amr_distance ) , ]
-#> id amox cipr gent tobr amr_distance
-#> 4 D 2 <=0.125 <=0.5 1 -1.20290099
-#> 1 A 4 <=0.125 <=0.5 4 -0.51912782
-#> 5 E 8 <=0.125 8 1 -0.21181627
-#> 2 B 4 0.25 1 4 -0.09831951
-#> 7 G 8 0.5 1 2 0.04628481
-#> 10 J 16 0.25 2 2 0.12101887
-#> 6 F 32 0.25 2 2 0.27774576
-#> 9 I 32 <=0.125 4 4 0.45927606
-#> 8 H 2 >=1 8 2 0.49245479
-#> 3 C 32 0.25 1 8 0.63538430
+#> id amox cipr gent tobr amr_distance
+#> 10 J 16 0.125 1 <=0.5 -0.73721828
+#> 5 E 4 <=0.0625 4 4 -0.58927461
+#> 9 I 4 0.5 4 2 -0.36004270
+#> 3 C 8 2 4 <=0.5 -0.12243892
+#> 2 B 8 1 1 >=8 0.01609138
+#> 8 H 4 1 4 >=8 0.10382446
+#> 6 F 16 1 2 4 0.35318445
+#> 4 D 8 0.25 16 4 0.37435404
+#> 7 G 8 2 4 4 0.37571945
+#> 1 A 16 >=4 1 >=8 0.58580073
if ( require ( "dplyr" ) ) {
y %>%
@@ -256,17 +256,17 @@
}
#> ℹ Calculating mean AMR distance based on columns "amox", "cipr", "gent" and
#> "tobr"
-#> id amox cipr gent tobr amr_distance check_id_C
-#> 1 C 32 0.25 1 8 0.63538430 0.0000000
-#> 2 H 2 >=1 8 2 0.49245479 0.1429295
-#> 3 I 32 <=0.125 4 4 0.45927606 0.1761082
-#> 4 F 32 0.25 2 2 0.27774576 0.3576385
-#> 5 J 16 0.25 2 2 0.12101887 0.5143654
-#> 6 G 8 0.5 1 2 0.04628481 0.5890995
-#> 7 B 4 0.25 1 4 -0.09831951 0.7337038
-#> 8 E 8 <=0.125 8 1 -0.21181627 0.8472006
-#> 9 A 4 <=0.125 <=0.5 4 -0.51912782 1.1545121
-#> 10 D 2 <=0.125 <=0.5 1 -1.20290099 1.8382853
+#> id amox cipr gent tobr amr_distance check_id_C
+#> 1 C 8 2 4 <=0.5 -0.12243892 0.0000000
+#> 2 B 8 1 1 >=8 0.01609138 0.1385303
+#> 3 H 4 1 4 >=8 0.10382446 0.2262634
+#> 4 I 4 0.5 4 2 -0.36004270 0.2376038
+#> 5 E 4 <=0.0625 4 4 -0.58927461 0.4668357
+#> 6 F 16 1 2 4 0.35318445 0.4756234
+#> 7 D 8 0.25 16 4 0.37435404 0.4967930
+#> 8 G 8 2 4 4 0.37571945 0.4981584
+#> 9 J 16 0.125 1 <=0.5 -0.73721828 0.6147794
+#> 10 A 16 >=4 1 >=8 0.58580073 0.7082397
if ( require ( "dplyr" ) ) {
# support for groups
example_isolates %>%
diff --git a/reference/microorganisms.codes.html b/reference/microorganisms.codes.html
index c20cbd41..e093b0f7 100644
--- a/reference/microorganisms.codes.html
+++ b/reference/microorganisms.codes.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/microorganisms.html b/reference/microorganisms.html
index 06a1a0b2..78cff2fa 100644
--- a/reference/microorganisms.html
+++ b/reference/microorganisms.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/mo_matching_score.html b/reference/mo_matching_score.html
index 1da543cc..45247ad7 100644
--- a/reference/mo_matching_score.html
+++ b/reference/mo_matching_score.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/mo_property.html b/reference/mo_property.html
index 816021d3..c88d70e6 100644
--- a/reference/mo_property.html
+++ b/reference/mo_property.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
@@ -408,8 +408,8 @@
mo_ref("Shimwellia blattae", keep_synonyms = FALSE)
will return "Priest et al., 2010"
(without a message)
The short name - mo_shortname()
- almost always returns the first character of the genus and the full species, like "E. coli"
. Exceptions are abbreviations of staphylococci (such as "CoNS" , Coagulase-Negative Staphylococci) and beta-haemolytic streptococci (such as "GBS" , Group B Streptococci). Please bear in mind that e.g. E. coli could mean Escherichia coli (kingdom of Bacteria) as well as Entamoeba coli (kingdom of Protozoa). Returning to the full name will be done using as.mo()
internally, giving priority to bacteria and human pathogens, i.e. "E. coli"
will be considered Escherichia coli . In other words, mo_fullname(mo_shortname("Entamoeba coli"))
returns "Escherichia coli"
.
Since the top-level of the taxonomy is sometimes referred to as 'kingdom' and sometimes as 'domain', the functions mo_kingdom()
and mo_domain()
return the exact same results.
-The Gram stain - mo_gramstain()
- will be determined based on the taxonomic kingdom and phylum. According to Cavalier-Smith (2002, PMID 11837318 ), who defined subkingdoms Negibacteria and Posibacteria, only these phyla are Posibacteria: Actinobacteria, Chloroflexi, Firmicutes and Tenericutes. These bacteria are considered Gram-positive, except for members of the class Negativicutes which are Gram-negative. Members of other bacterial phyla are all considered Gram-negative. Species outside the kingdom of Bacteria will return a value NA
. Functions mo_is_gram_negative()
and mo_is_gram_positive()
always return TRUE
or FALSE
(except when the input is NA
or the MO code is UNKNOWN
), thus always return FALSE
for species outside the taxonomic kingdom of Bacteria.
-Determination of yeasts - mo_is_yeast()
- will be based on the taxonomic kingdom and class. Budding yeasts are fungi of the phylum Ascomycetes, class Saccharomycetes (also called Hemiascomycetes). True yeasts are aggregated into the underlying order Saccharomycetales. Thus, for all microorganisms that are fungi and member of the taxonomic class Saccharomycetes, the function will return TRUE
. It returns FALSE
otherwise (except when the input is NA
or the MO code is UNKNOWN
).
+The Gram stain - mo_gramstain()
- will be determined based on the taxonomic kingdom and phylum. Originally, Cavalier-Smith defined the so-called subkingdoms Negibacteria and Posibacteria (2002, PMID 11837318 ), and only considered these phyla as Posibacteria: Actinobacteria, Chloroflexi, Firmicutes, and Tenericutes. All of these phyla were renamed to Actinomycetota, Chloroflexota, Bacillota, and Mycoplasmatota (2021, PMID 34694987 ). Bacteria in these phyla are considered Gram-positive in this AMR
package, except for members of the class Negativicutes (within phylum Bacillota) which are Gram-negative. All other bacteria are considered Gram-negative. Species outside the kingdom of Bacteria will return a value NA
. Functions mo_is_gram_negative()
and mo_is_gram_positive()
always return TRUE
or FALSE
(or NA
when the input is NA
or the MO code is UNKNOWN
), thus always return FALSE
for species outside the taxonomic kingdom of Bacteria.
+Determination of yeasts - mo_is_yeast()
- will be based on the taxonomic kingdom and class. Budding yeasts are fungi of the phylum Ascomycota, class Saccharomycetes (also called Hemiascomycetes). True yeasts are aggregated into the underlying order Saccharomycetales. Thus, for all microorganisms that are member of the taxonomic class Saccharomycetes, the function will return TRUE
. It returns FALSE
otherwise (or NA
when the input is NA
or the MO code is UNKNOWN
).
Intrinsic resistance - mo_is_intrinsic_resistant()
- will be determined based on the intrinsic_resistant data set, which is based on 'EUCAST Expert Rules' and 'EUCAST Intrinsic Resistance and Unusual Phenotypes' v3.3 (2021). The mo_is_intrinsic_resistant()
functions can be vectorised over arguments x
(input for microorganisms) and over ab
(input for antibiotics).
All output will be translated where possible.
The function mo_url()
will return the direct URL to the online database entry, which also shows the scientific reference of the concerned species.
@@ -602,21 +602,27 @@
}
#> ℹ Using column 'mo' as input for mo_is_gram_positive()
#> ℹ Using column 'mo' as input for mo_genus()
-#> # A tibble: 12 × 2
-#> `mo_genus()` n
-#> <chr> <int>
-#> 1 Staphylococcus 840
-#> 2 Streptococcus 275
-#> 3 Enterococcus 83
-#> 4 Gemella 3
-#> 5 Aerococcus 2
-#> 6 Fusibacter 1
-#> 7 Globicatella 1
-#> 8 Granulicatella 1
-#> 9 Lactobacillus 1
-#> 10 Leuconostoc 1
-#> 11 Listeria 1
-#> 12 Paenibacillus 1
+#> # A tibble: 18 × 2
+#> `mo_genus()` n
+#> <chr> <int>
+#> 1 Staphylococcus 840
+#> 2 Streptococcus 275
+#> 3 Enterococcus 83
+#> 4 Corynebacterium 17
+#> 5 Micrococcus 6
+#> 6 Gemella 3
+#> 7 Aerococcus 2
+#> 8 Cutibacterium 1
+#> 9 Dermabacter 1
+#> 10 Fusibacter 1
+#> 11 Globicatella 1
+#> 12 Granulicatella 1
+#> 13 Lactobacillus 1
+#> 14 Leuconostoc 1
+#> 15 Listeria 1
+#> 16 Paenibacillus 1
+#> 17 Rothia 1
+#> 18 Schaalia 1
if ( require ( "dplyr" ) ) {
example_isolates %>%
filter ( mo_is_intrinsic_resistant ( ab = "vanco" ) ) %>%
diff --git a/reference/mo_source.html b/reference/mo_source.html
index 8b5a5715..29b1f048 100644
--- a/reference/mo_source.html
+++ b/reference/mo_source.html
@@ -12,7 +12,7 @@ This is the fastest way to have your organisation (or analysis) specific codes p
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/pca-1.png b/reference/pca-1.png
index d350d405..50186dc1 100644
Binary files a/reference/pca-1.png and b/reference/pca-1.png differ
diff --git a/reference/pca-2.png b/reference/pca-2.png
index 03cbd555..fe3104e8 100644
Binary files a/reference/pca-2.png and b/reference/pca-2.png differ
diff --git a/reference/pca.html b/reference/pca.html
index 0cc0e85e..45e3fa23 100644
--- a/reference/pca.html
+++ b/reference/pca.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/plot-1.png b/reference/plot-1.png
index 2375d709..a1910638 100644
Binary files a/reference/plot-1.png and b/reference/plot-1.png differ
diff --git a/reference/plot-2.png b/reference/plot-2.png
index b80ddcdf..c60ede33 100644
Binary files a/reference/plot-2.png and b/reference/plot-2.png differ
diff --git a/reference/plot-3.png b/reference/plot-3.png
index d1b07675..749d33b7 100644
Binary files a/reference/plot-3.png and b/reference/plot-3.png differ
diff --git a/reference/plot-4.png b/reference/plot-4.png
index 80fb251b..7d452964 100644
Binary files a/reference/plot-4.png and b/reference/plot-4.png differ
diff --git a/reference/plot-5.png b/reference/plot-5.png
index 35d91208..6f413a67 100644
Binary files a/reference/plot-5.png and b/reference/plot-5.png differ
diff --git a/reference/plot-6.png b/reference/plot-6.png
index f76677e0..18dc2b5f 100644
Binary files a/reference/plot-6.png and b/reference/plot-6.png differ
diff --git a/reference/plot-7.png b/reference/plot-7.png
index 2e21ef1c..cbbabc6b 100644
Binary files a/reference/plot-7.png and b/reference/plot-7.png differ
diff --git a/reference/plot-8.png b/reference/plot-8.png
index 1ace4062..7d5ae964 100644
Binary files a/reference/plot-8.png and b/reference/plot-8.png differ
diff --git a/reference/plot-9.png b/reference/plot-9.png
index f92e3657..a8333c53 100644
Binary files a/reference/plot-9.png and b/reference/plot-9.png differ
diff --git a/reference/plot.html b/reference/plot.html
index 67fc9461..5f57d34f 100644
--- a/reference/plot.html
+++ b/reference/plot.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/proportion.html b/reference/proportion.html
index 61a260a6..3a5ec02c 100644
--- a/reference/proportion.html
+++ b/reference/proportion.html
@@ -12,7 +12,7 @@ resistance() should be used to calculate resistance, susceptibility() should be
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/random.html b/reference/random.html
index b0d65b9a..45b6e7d4 100644
--- a/reference/random.html
+++ b/reference/random.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
@@ -183,42 +183,42 @@
Examples
random_mic ( 25 )
#> Class 'mic'
-#> [1] 32 4 0.001 8 2 0.025 4 128 128 0.5 0.025 8
-#> [13] 0.025 16 64 1 64 8 0.125 128 0.25 >=256 2 0.025
-#> [25] 16
+#> [1] 4 4 4 128 8 4 0.0625 0.25 0.5 2
+#> [11] 4 64 0.0625 32 0.25 0.001 0.001 0.025 0.001 >=256
+#> [21] 4 0.025 0.5 4 0.025
random_disk ( 25 )
#> Class 'disk'
-#> [1] 29 13 31 34 33 32 7 8 18 32 46 16 14 41 10 26 10 45 41 39 40 13 18 13 35
+#> [1] 32 46 50 35 15 7 42 27 21 15 8 36 30 46 47 43 42 50 32 34 21 43 21 28 43
random_rsi ( 25 )
#> Class 'rsi'
-#> [1] S I R S I R S R I R S R S I I I I I R R R R S I I
+#> [1] R I I S S R S I S R R S I S S I R I R I S S S S R
# \donttest{
# make the random generation more realistic by setting a bug and/or drug:
random_mic ( 25 , "Klebsiella pneumoniae" ) # range 0.0625-64
#> Class 'mic'
-#> [1] 32 128 0.025 0.125 1 64 0.5 16 0.025
-#> [10] 0.25 0.25 0.25 0.25 0.0625 <=0.001 0.005 0.25 0.0625
-#> [19] 0.0625 0.025 <=0.001 16 2 32 0.0625
+#> [1] 128 32 0.025 0.25 0.125 0.01 <=0.001 1 0.25
+#> [10] 1 0.005 0.025 0.0625 128 0.5 0.005 0.0625 0.005
+#> [19] <=0.001 128 4 0.5 0.002 0.25 0.01
random_mic ( 25 , "Klebsiella pneumoniae" , "meropenem" ) # range 0.0625-16
#> Class 'mic'
-#> [1] 0.5 1 8 2 2 16 8 8 16 0.5 4 8 4 8 0.5 2 16 0.5 8
-#> [20] 8 0.5 16 2 8 0.5
+#> [1] 0.5 8 8 0.5 0.5 2 4 >=16 0.5 4 8 >=16 0.5 >=16 2
+#> [16] >=16 1 8 1 4 4 >=16 >=16 >=16 0.5
random_mic ( 25 , "Streptococcus pneumoniae" , "meropenem" ) # range 0.0625-4
#> Class 'mic'
-#> [1] 0.125 0.0625 0.125 0.25 2 0.25 0.0625 2 0.125 0.125
-#> [11] 0.125 >=4 >=4 0.5 0.125 >=4 0.25 0.125 1 0.5
-#> [21] 0.0625 1 >=4 0.0625 >=4
+#> [1] 1 2 0.125 0.5 0.5 0.25 2 0.125 2 1
+#> [11] 0.125 0.125 4 8 0.25 0.125 4 0.5 2 0.0625
+#> [21] 4 0.5 1 >=16 1
random_disk ( 25 , "Klebsiella pneumoniae" ) # range 8-50
#> Class 'disk'
-#> [1] 17 36 40 30 8 48 50 21 28 8 12 20 34 17 20 47 46 49 25 20 47 42 36 25 47
+#> [1] 11 41 18 50 12 39 48 47 25 23 19 14 14 36 46 21 46 18 17 50 26 20 33 12 44
random_disk ( 25 , "Klebsiella pneumoniae" , "ampicillin" ) # range 11-17
#> Class 'disk'
-#> [1] 12 14 14 13 14 14 17 14 14 14 12 17 13 11 14 11 13 11 14 13 11 12 16 14 14
+#> [1] 11 16 14 13 11 17 16 12 14 12 13 13 17 13 15 15 16 13 11 15 11 16 11 16 11
random_disk ( 25 , "Streptococcus pneumoniae" , "ampicillin" ) # range 12-27
#> Class 'disk'
-#> [1] 23 23 16 26 18 20 22 15 18 19 27 15 16 21 21 21 25 23 22 18 17 17 25 18 16
+#> [1] 24 22 18 26 22 20 27 27 20 18 24 26 25 20 20 25 19 19 25 20 18 25 16 20 17
# }
diff --git a/reference/resistance_predict.html b/reference/resistance_predict.html
index 1e762e11..f7ffd936 100644
--- a/reference/resistance_predict.html
+++ b/reference/resistance_predict.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/rsi_translation.html b/reference/rsi_translation.html
index 35b3bbeb..91b82853 100644
--- a/reference/rsi_translation.html
+++ b/reference/rsi_translation.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/reference/skewness.html b/reference/skewness.html
index 4a3cabe5..7110db58 100644
--- a/reference/skewness.html
+++ b/reference/skewness.html
@@ -12,7 +12,7 @@ When negative ('left-skewed'): the left tail is longer; the mass of the distribu
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
@@ -171,7 +171,7 @@ When negative ('left-skewed'): the left tail is longer; the mass of the distribu
Examples
skewness ( runif ( 1000 ) )
-#> [1] 0.0009022991
+#> [1] -0.04732718
On this page
diff --git a/reference/translate.html b/reference/translate.html
index b489d064..5940b060 100644
--- a/reference/translate.html
+++ b/reference/translate.html
@@ -10,7 +10,7 @@
AMR (for R)
- 1.8.2.9054
+ 1.8.2.9057
diff --git a/search.json b/search.json
index f3b82891..54fa17a5 100644
--- a/search.json
+++ b/search.json
@@ -1 +1 @@
-[{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"introduction","dir":"Articles","previous_headings":"","what":"Introduction","title":"How to conduct AMR data analysis","text":"Conducting AMR data analysis unfortunately requires -depth knowledge different scientific fields, makes hard right. least, requires: Good questions (always start !) thorough understanding (clinical) epidemiology, understand clinical epidemiological relevance possible bias results thorough understanding (clinical) microbiology/infectious diseases, understand microorganisms causal infections implications pharmaceutical treatment, well understanding intrinsic acquired microbial resistance Experience data analysis microbiological tests results, understand determination limitations MIC values interpretations RSI values Availability biological taxonomy microorganisms probably normalisation factors pharmaceuticals, defined daily doses (DDD) Available (inter-)national guidelines, profound methods apply course, instantly provide knowledge experience. AMR package, aimed providing (1) tools simplify antimicrobial resistance data cleaning, transformation analysis, (2) methods easily incorporate international guidelines (3) scientifically reliable reference data, including requirements mentioned . AMR package enables standardised reproducible AMR data analysis, application evidence-based rules, determination first isolates, translation various codes microorganisms antimicrobial agents, determination (multi-drug) resistant microorganisms, calculation antimicrobial resistance, prevalence future trends.","code":""},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"preparation","dir":"Articles","previous_headings":"","what":"Preparation","title":"How to conduct AMR data analysis","text":"tutorial, create fake demonstration data work . can skip Cleaning data already data ready. start analysis, try make structure data generally look like :","code":""},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"needed-r-packages","dir":"Articles","previous_headings":"Preparation","what":"Needed R packages","title":"How to conduct AMR data analysis","text":"many uses R, need additional packages AMR data analysis. package works closely together tidyverse packages dplyr ggplot2 RStudio. tidyverse tremendously improves way conduct data science - allows natural way writing syntaxes creating beautiful plots R. also use cleaner package, can used cleaning data creating frequency tables.","code":"library(dplyr) library(ggplot2) library(AMR) library(cleaner) # (if not yet installed, install with:) # install.packages(c(\"dplyr\", \"ggplot2\", \"AMR\", \"cleaner\"))"},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"creation-of-data","dir":"Articles","previous_headings":"","what":"Creation of data","title":"How to conduct AMR data analysis","text":"create fake example data use analysis. AMR data analysis, need least: patient ID, name code microorganism, date antimicrobial results (antibiogram). also include specimen type (e.g. filter blood urine), ward type (e.g. filter ICUs). additional columns (like hospital name, patients gender even [well-defined] clinical properties) can comparative analysis, tutorial demonstrate .","code":""},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"patients","dir":"Articles","previous_headings":"Creation of data","what":"Patients","title":"How to conduct AMR data analysis","text":"start patients, need unique list patients. LETTERS object available R - ’s vector 26 characters: Z. patients object just created now vector length 260, values (patient IDs) varying A1 Z10. Now also set gender patients, putting ID gender table: first 135 patient IDs now male, 125 female.","code":"patients <- unlist(lapply(LETTERS, paste0, 1:10)) patients_table <- data.frame( patient_id = patients, gender = c( rep(\"M\", 135), rep(\"F\", 125) ) )"},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"dates","dir":"Articles","previous_headings":"Creation of data","what":"Dates","title":"How to conduct AMR data analysis","text":"Let’s pretend data consists blood cultures isolates 1 January 2010 1 January 2018. dates object now contains days date range.","code":"dates <- seq(as.Date(\"2010-01-01\"), as.Date(\"2018-01-01\"), by = \"day\")"},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"microorganisms","dir":"Articles","previous_headings":"Creation of data > Dates","what":"Microorganisms","title":"How to conduct AMR data analysis","text":"tutorial, uses four different microorganisms: Escherichia coli, Staphylococcus aureus, Streptococcus pneumoniae, Klebsiella pneumoniae:","code":"bacteria <- c( \"Escherichia coli\", \"Staphylococcus aureus\", \"Streptococcus pneumoniae\", \"Klebsiella pneumoniae\" )"},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"put-everything-together","dir":"Articles","previous_headings":"Creation of data","what":"Put everything together","title":"How to conduct AMR data analysis","text":"Using sample() function, can randomly select items objects defined earlier. let fake data reflect reality bit, also approximately define probabilities bacteria antibiotic results, using random_rsi() function. Using left_join() function dplyr package, can ‘map’ gender patient ID using patients_table object created earlier: resulting data set contains 20,000 blood culture isolates. head() function can preview first 6 rows data set: Now, let’s start cleaning analysis!","code":"sample_size <- 20000 data <- data.frame( date = sample(dates, size = sample_size, replace = TRUE), patient_id = sample(patients, size = sample_size, replace = TRUE), hospital = sample(c( \"Hospital A\", \"Hospital B\", \"Hospital C\", \"Hospital D\" ), size = sample_size, replace = TRUE, prob = c(0.30, 0.35, 0.15, 0.20) ), bacteria = sample(bacteria, size = sample_size, replace = TRUE, prob = c(0.50, 0.25, 0.15, 0.10) ), AMX = random_rsi(sample_size, prob_RSI = c(0.35, 0.60, 0.05)), AMC = random_rsi(sample_size, prob_RSI = c(0.15, 0.75, 0.10)), CIP = random_rsi(sample_size, prob_RSI = c(0.20, 0.80, 0.00)), GEN = random_rsi(sample_size, prob_RSI = c(0.08, 0.92, 0.00)) ) data <- data %>% left_join(patients_table) head(data)"},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"cleaning-the-data","dir":"Articles","previous_headings":"","what":"Cleaning the data","title":"How to conduct AMR data analysis","text":"also created package dedicated data cleaning checking, called cleaner package. freq() function can used create frequency tables. example, gender variable: Frequency table Class: character Length: 20,000 Available: 20,000 (100%, NA: 0 = 0%) Unique: 2 Shortest: 1 Longest: 1 , can draw least two conclusions immediately. data scientists perspective, data looks clean: values M F. researchers perspective: slightly men. Nothing didn’t already know. data already quite clean, still need transform variables. bacteria column now consists text, want add variables based microbial IDs later . , transform column valid IDs. mutate() function dplyr package makes really easy: also want transform antibiotics, real life data don’t know really clean. .rsi() function ensures reliability reproducibility kind variables. .rsi.eligible() can check columns probably columns R/SI test results. Using mutate() across(), can apply transformation formal class: Finally, apply EUCAST rules antimicrobial results. Europe, medical microbiological laboratories already apply rules. package features latest insights intrinsic resistance exceptional phenotypes. Moreover, eucast_rules() function can also apply additional rules, like forcing ampicillin = R amoxicillin/clavulanic acid = R. amoxicillin (column AMX) amoxicillin/clavulanic acid (column AMC) data generated randomly, rows undoubtedly contain AMX = S AMC = R, technically impossible. eucast_rules() fixes :","code":"data %>% freq(gender) data <- data %>% mutate(bacteria = as.mo(bacteria)) is.rsi.eligible(data) # [1] FALSE FALSE FALSE FALSE TRUE TRUE TRUE TRUE FALSE colnames(data)[is.rsi.eligible(data)] # [1] \"AMX\" \"AMC\" \"CIP\" \"GEN\" data <- data %>% mutate(across(where(is.rsi.eligible), as.rsi)) data <- eucast_rules(data, col_mo = \"bacteria\", rules = \"all\")"},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"adding-new-variables","dir":"Articles","previous_headings":"","what":"Adding new variables","title":"How to conduct AMR data analysis","text":"Now microbial ID, can add taxonomic properties:","code":"data <- data %>% mutate( gramstain = mo_gramstain(bacteria), genus = mo_genus(bacteria), species = mo_species(bacteria) )"},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"first-isolates","dir":"Articles","previous_headings":"Adding new variables","what":"First isolates","title":"How to conduct AMR data analysis","text":"also need know isolates can actually use analysis. conduct analysis antimicrobial resistance, must include first isolate every patient per episode (Hindler et al., Clin Infect Dis. 2007). , easily get overestimate underestimate resistance antibiotic. Imagine patient admitted MRSA found 5 different blood cultures following weeks (yes, countries like Netherlands blood drawing policies). resistance percentage oxacillin isolates overestimated, included MRSA . clearly selection bias. Clinical Laboratory Standards Institute (CLSI) appoints follows: (…) preparing cumulative antibiogram guide clinical decisions empirical antimicrobial therapy initial infections, first isolate given species per patient, per analysis period (eg, one year) included, irrespective body site, antimicrobial susceptibility profile, phenotypical characteristics (eg, biotype). first isolate easily identified, cumulative antimicrobial susceptibility test data prepared using first isolate generally comparable cumulative antimicrobial susceptibility test data calculated methods, providing duplicate isolates excluded. M39-A4 Analysis Presentation Cumulative Antimicrobial Susceptibility Test Data, 4th Edition. CLSI, 2014. Chapter 6.4 AMR package includes methodology first_isolate() function able apply four different methods defined Hindler et al. 2007: phenotype-based, episode-based, patient-based, isolate-based. right method depends goals analysis, default phenotype-based method case method properly correct duplicate isolates. method also takes account antimicrobial susceptibility test results using all_microbials(). Read methods first_isolate() page. outcome function can easily added data: 53.5% suitable resistance analysis! can now filter filter() function, also dplyr package: future use, two syntaxes can shortened: end 10,709 isolates analysis. Now data looks like: Time analysis!","code":"data <- 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 '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 # Including isolates from ICU. # => Found 10,709 'phenotype-based' first isolates (53.5% of total where a # microbial ID was available) data_1st <- data %>% filter(first == TRUE) data_1st <- data %>% filter_first_isolate() # Including isolates from ICU. head(data_1st)"},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"analysing-the-data","dir":"Articles","previous_headings":"","what":"Analysing the data","title":"How to conduct AMR data analysis","text":"might want start getting idea data distributed. ’s important start, also decides continue analysis. Although package contains convenient function make frequency tables, exploratory data analysis (EDA) primary scope package. Use package like DataExplorer , read free online book Exploratory Data Analysis R Roger D. Peng.","code":""},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"dispersion-of-species","dir":"Articles","previous_headings":"Analysing the data","what":"Dispersion of species","title":"How to conduct AMR data analysis","text":"just get idea species distributed, create frequency table freq() function. created genus species column earlier based microbial ID. paste(), can concatenate together. freq() function can used like base R language intended: can used like dplyr way, easier readable: Frequency table Class: character Length: 10,709 Available: 10,709 (100%, NA: 0 = 0%) Unique: 4 Shortest: 16 Longest: 24","code":"freq(paste(data_1st$genus, data_1st$species)) data_1st %>% freq(genus, species)"},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"overview-of-different-bugdrug-combinations","dir":"Articles","previous_headings":"Analysing the data","what":"Overview of different bug/drug combinations","title":"How to conduct AMR data analysis","text":"Using tidyverse selections, can also select filter columns based antibiotic class : want get quick glance number isolates different bug/drug combinations, can use bug_drug_combinations() function: give crude numbers data. calculate antimicrobial resistance sensible way, also correcting results, use resistance() susceptibility() functions.","code":"data_1st %>% filter(any(aminoglycosides() == \"R\")) # ℹ For aminoglycosides() using column 'GEN' (gentamicin) data_1st %>% bug_drug_combinations() %>% head() # show first 6 rows data_1st %>% select(bacteria, aminoglycosides()) %>% bug_drug_combinations() # ℹ For aminoglycosides() using column 'GEN' (gentamicin)"},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"resistance-percentages","dir":"Articles","previous_headings":"Analysing the data","what":"Resistance percentages","title":"How to conduct AMR data analysis","text":"functions resistance() susceptibility() can used calculate antimicrobial resistance susceptibility. specific analyses, functions proportion_S(), proportion_SI(), proportion_I(), proportion_IR() proportion_R() can used determine proportion specific antimicrobial outcome. functions contain minimum argument, denoting minimum required number test results returning value. functions otherwise return NA. default minimum = 30, following CLSI M39-A4 guideline applying microbial epidemiology. per EUCAST guideline 2019, calculate resistance proportion R (proportion_R(), equal resistance()) susceptibility proportion S (proportion_SI(), equal susceptibility()). functions can used : can used conjunction group_by() summarise(), dplyr package: course convenient know number isolates responsible percentages. purpose n_rsi() can used, works exactly like n_distinct() dplyr package. counts isolates available every group (.e. values S, R): functions can also used get proportion multiple antibiotics, calculate empiric susceptibility combination therapies easily: curious resistance within certain antibiotic classes, use antibiotic class selector penicillins(), automatically include columns AMX AMC data: make transition next part, let’s see differences previously calculated combination therapies plotted:","code":"data_1st %>% resistance(AMX) # [1] 0.5429078 data_1st %>% group_by(hospital) %>% summarise(amoxicillin = resistance(AMX)) data_1st %>% group_by(hospital) %>% summarise( amoxicillin = resistance(AMX), available = n_rsi(AMX) ) data_1st %>% group_by(genus) %>% summarise( amoxiclav = susceptibility(AMC), gentamicin = susceptibility(GEN), amoxiclav_genta = susceptibility(AMC, GEN) ) data_1st %>% # group by hospital group_by(hospital) %>% # / -> select all penicillins in the data for calculation # | / -> use resistance() for all peni's per hospital # | | / -> print as percentages summarise(across(penicillins(), resistance, as_percent = TRUE)) %>% # format the antibiotic column names, using so-called snake case, # so 'Amoxicillin/clavulanic acid' becomes 'amoxicillin_clavulanic_acid' rename_with(set_ab_names, penicillins()) data_1st %>% group_by(genus) %>% summarise( \"1. Amoxi/clav\" = susceptibility(AMC), \"2. Gentamicin\" = susceptibility(GEN), \"3. Amoxi/clav + genta\" = susceptibility(AMC, GEN) ) %>% # pivot_longer() from the tidyr package \"lengthens\" data: tidyr::pivot_longer(-genus, names_to = \"antibiotic\") %>% ggplot(aes( x = genus, y = value, fill = antibiotic )) + geom_col(position = \"dodge2\")"},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"plots","dir":"Articles","previous_headings":"Analysing the data","what":"Plots","title":"How to conduct AMR data analysis","text":"show results plots, R users nowadays use ggplot2 package. package lets create plots layers. can read website. quick example look like syntaxes: AMR package contains functions extend ggplot2 package, example geom_rsi(). automatically transforms data count_df() proportion_df() show results stacked bars. simplest shortest example: Omit translate_ab = FALSE antibiotic codes (AMX, AMC, CIP, GEN) translated official names (amoxicillin, amoxicillin/clavulanic acid, ciprofloxacin, gentamicin). group e.g. genus column add additional functions package, can create : simplify , also created ggplot_rsi() function, combines almost functions:","code":"ggplot( data = a_data_set, mapping = aes( x = year, y = value ) ) + geom_col() + labs( title = \"A title\", subtitle = \"A subtitle\", x = \"My X axis\", y = \"My Y axis\" ) # or as short as: ggplot(a_data_set) + geom_bar(aes(year)) ggplot(data_1st) + geom_rsi(translate_ab = FALSE) # group the data on `genus` ggplot(data_1st %>% group_by(genus)) + # create bars with genus on x axis # it looks for variables with class `rsi`, # of which we have 4 (earlier created with `as.rsi`) geom_rsi(x = \"genus\") + # split plots on antibiotic facet_rsi(facet = \"antibiotic\") + # set colours to the R/SI interpretations (colour-blind friendly) scale_rsi_colours() + # show percentages on y axis scale_y_percent(breaks = 0:4 * 25) + # turn 90 degrees, to make it bars instead of columns coord_flip() + # add labels labs( title = \"Resistance per genus and antibiotic\", subtitle = \"(this is fake data)\" ) + # and print genus in italic to follow our convention # (is now y axis because we turned the plot) theme(axis.text.y = element_text(face = \"italic\")) data_1st %>% group_by(genus) %>% ggplot_rsi( x = \"genus\", facet = \"antibiotic\", breaks = 0:4 * 25, datalabels = FALSE ) + coord_flip()"},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"plotting-mic-and-disk-diffusion-values","dir":"Articles","previous_headings":"Analysing the data > Plots","what":"Plotting MIC and disk diffusion values","title":"How to conduct AMR data analysis","text":"AMR package also extends plot() ggplot2::autoplot() functions plotting minimum inhibitory concentrations (MIC, created .mic()) disk diffusion diameters (created .disk()). random_mic() random_disk() functions, can generate sampled values new data types (S3 classes) : also specific, generating MICs likely found E. coli ciprofloxacin: plot() autoplot() function, can define microorganism antimicrobial agent way. add interpretation values according chosen guidelines (defaults latest EUCAST guideline). Default colours colour-blind friendly, maintaining convention e.g. ‘susceptible’ green ‘resistant’ red: disk diffusion values, much difference plotting: using ggplot2 package, now choosing latest implemented CLSI guideline (notice EUCAST-specific term “Susceptible, incr. exp.” changed “Intermediate”):","code":"mic_values <- random_mic(size = 100) mic_values # Class 'mic' # [1] 8 64 2 1 0.002 128 0.01 0.25 2 0.125 # [11] 16 0.01 256 4 64 2 0.002 256 0.01 8 # [21] 0.025 0.025 16 0.025 8 1 128 0.125 4 0.001 # [31] 4 256 4 1 0.01 0.025 1 0.001 0.002 2 # [41] 0.001 2 0.01 128 0.01 1 16 0.5 64 0.0625 # [51] 8 0.005 16 32 128 4 0.01 32 0.025 0.005 # [61] 32 0.01 0.125 256 32 16 8 0.025 4 1 # [71] 16 16 0.125 0.002 16 32 0.5 0.0625 256 2 # [81] 0.005 0.01 1 0.005 0.125 0.0625 0.001 0.025 4 0.01 # [91] 2 1 0.025 256 0.0625 0.001 0.125 0.005 0.0625 0.001 # base R: plot(mic_values) # ggplot2: autoplot(mic_values) mic_values <- random_mic(size = 100, mo = \"E. coli\", ab = \"cipro\") # base R: plot(mic_values, mo = \"E. coli\", ab = \"cipro\") # ggplot2: autoplot(mic_values, mo = \"E. coli\", ab = \"cipro\") disk_values <- random_disk(size = 100, mo = \"E. coli\", ab = \"cipro\") disk_values # Class 'disk' # [1] 31 26 18 31 23 20 17 17 28 29 27 20 23 19 19 24 23 29 20 17 24 26 31 21 20 # [26] 26 19 20 18 31 18 17 31 19 26 20 19 27 20 22 17 25 24 29 19 24 28 25 20 22 # [51] 30 23 18 28 29 22 18 23 30 18 18 22 24 29 26 23 31 31 21 20 31 21 26 23 25 # [76] 23 26 25 29 22 26 18 23 29 26 31 25 17 30 23 21 28 31 26 30 29 29 25 28 27 # base R: plot(disk_values, mo = \"E. coli\", ab = \"cipro\") autoplot( disk_values, mo = \"E. coli\", ab = \"cipro\", guideline = \"CLSI\" )"},{"path":"https://msberends.github.io/AMR/articles/AMR.html","id":"independence-test","dir":"Articles","previous_headings":"Analysing the data","what":"Independence test","title":"How to conduct AMR data analysis","text":"next example uses example_isolates data set. data set included package contains 2,000 microbial isolates full antibiograms. reflects reality can used practise AMR data analysis. compare resistance amoxicillin/clavulanic acid (column FOS) ICU clinical wards. input fisher.test() can retrieved transformation like : can apply test now : can seen, p value practically zero (0.0000002263247), means amoxicillin/clavulanic acid resistance found isolates patients ICUs clinical wards really different.","code":"# use package 'tidyr' to pivot data: library(tidyr) check_FOS <- example_isolates %>% filter(ward %in% c(\"ICU\", \"Clinical\")) %>% # filter on only these wards select(ward, AMC) %>% # select the wards and amoxi/clav group_by(ward) %>% # group on the wards count_df(combine_SI = TRUE) %>% # count all isolates per group (ward) pivot_wider( names_from = ward, # transform output so \"ICU\" and \"Clinical\" are columns values_from = value ) %>% select(ICU, Clinical) %>% # and only select these columns as.matrix() # transform to a good old matrix for fisher.test() check_FOS # ICU Clinical # [1,] 396 942 # [2,] 184 240 # do Fisher's Exact Test fisher.test(check_FOS) # # Fisher's Exact Test for Count Data # # data: check_FOS # p-value = 2.263e-07 # alternative hypothesis: true odds ratio is not equal to 1 # 95 percent confidence interval: # 0.435261 0.691614 # sample estimates: # odds ratio # 0.5485079"},{"path":"https://msberends.github.io/AMR/articles/EUCAST.html","id":"introduction","dir":"Articles","previous_headings":"","what":"Introduction","title":"How to apply EUCAST rules","text":"EUCAST rules? European Committee Antimicrobial Susceptibility Testing (EUCAST) states website: EUCAST expert rules tabulated collection expert knowledge intrinsic resistances, exceptional resistance phenotypes interpretive rules may applied antimicrobial susceptibility testing order reduce errors make appropriate recommendations reporting particular resistances. Europe, lot medical microbiological laboratories already apply rules (Brown et al., 2015). package features latest insights intrinsic resistance unusual phenotypes (v3.3, 2021). Moreover, eucast_rules() function use purpose can also apply additional rules, like forcing ampicillin = R isolates amoxicillin/clavulanic acid = R.","code":""},{"path":"https://msberends.github.io/AMR/articles/EUCAST.html","id":"examples","dir":"Articles","previous_headings":"","what":"Examples","title":"How to apply EUCAST rules","text":"rules can used discard impossible bug-drug combinations data. example, Klebsiella produces beta-lactamase prevents ampicillin (amoxicillin) working . words, practically every strain Klebsiella resistant ampicillin. Sometimes, laboratory data can still contain strains ampicillin susceptible ampicillin. antibiogram available identification available, antibiogram re-interpreted based identification (namely, Klebsiella). EUCAST expert rules solve , can applied using eucast_rules(): convenient function mo_is_intrinsic_resistant() uses guideline, allows check one specific microorganisms antibiotics: EUCAST rules can used correction, can also used filling known resistance susceptibility based results antimicrobials drugs. process called interpretive reading, basically form imputation, part eucast_rules() function well:","code":"oops <- data.frame( mo = c( \"Klebsiella\", \"Escherichia\" ), ampicillin = \"S\" ) oops # mo ampicillin # 1 Klebsiella S # 2 Escherichia S eucast_rules(oops, info = FALSE) # mo ampicillin # 1 Klebsiella R # 2 Escherichia S mo_is_intrinsic_resistant( c(\"Klebsiella\", \"Escherichia\"), \"ampicillin\" ) # [1] TRUE FALSE mo_is_intrinsic_resistant( \"Klebsiella\", c(\"ampicillin\", \"kanamycin\") ) # [1] TRUE FALSE data <- data.frame( mo = c( \"Staphylococcus aureus\", \"Enterococcus faecalis\", \"Escherichia coli\", \"Klebsiella pneumoniae\", \"Pseudomonas aeruginosa\" ), VAN = \"-\", # Vancomycin AMX = \"-\", # Amoxicillin COL = \"-\", # Colistin CAZ = \"-\", # Ceftazidime CXM = \"-\", # Cefuroxime PEN = \"S\", # Benzylenicillin FOX = \"S\", # Cefoxitin stringsAsFactors = FALSE ) data eucast_rules(data)"},{"path":"https://msberends.github.io/AMR/articles/MDR.html","id":"type-of-input","dir":"Articles","previous_headings":"","what":"Type of input","title":"How to determine multi-drug resistance (MDR)","text":"mdro() function takes data set input, regular data.frame. tries automatically determine right columns info isolates, name species columns results antimicrobial agents. See help page info set right settings data command ?mdro. WHONET data (data), settings automatically set correctly.","code":""},{"path":"https://msberends.github.io/AMR/articles/MDR.html","id":"guidelines","dir":"Articles","previous_headings":"","what":"Guidelines","title":"How to determine multi-drug resistance (MDR)","text":"mdro() function support multiple guidelines. can select guideline guideline parameter. Currently supported guidelines (case-insensitive): guideline = \"CMI2012\" (default) Magiorakos AP, Srinivasan et al. “Multidrug-resistant, extensively drug-resistant pandrug-resistant bacteria: international expert proposal interim standard definitions acquired resistance.” Clinical Microbiology Infection (2012) (link) guideline = \"EUCAST3.2\" (simply guideline = \"EUCAST\") European international guideline - EUCAST Expert Rules Version 3.2 “Intrinsic Resistance Unusual Phenotypes” (link) guideline = \"EUCAST3.1\" European international guideline - EUCAST Expert Rules Version 3.1 “Intrinsic Resistance Exceptional Phenotypes Tables” (link) guideline = \"TB\" international guideline multi-drug resistant tuberculosis - World Health Organization “Companion handbook guidelines programmatic management drug-resistant tuberculosis” (link) guideline = \"MRGN\" German national guideline - Mueller et al. (2015) Antimicrobial Resistance Infection Control 4:7. DOI: 10.1186/s13756-015-0047-6 guideline = \"BRMO\" Dutch national guideline - Rijksinstituut voor Volksgezondheid en Milieu “WIP-richtlijn BRMO (Bijzonder Resistente Micro-Organismen) (ZKH)” (link) Please suggest (country-specific) guidelines letting us know: https://github.com/msberends/AMR/issues/new.","code":""},{"path":"https://msberends.github.io/AMR/articles/MDR.html","id":"custom-guidelines","dir":"Articles","previous_headings":"Guidelines","what":"Custom Guidelines","title":"How to determine multi-drug resistance (MDR)","text":"can also use custom guideline. Custom guidelines can set custom_mdro_guideline() function. great importance custom rules determine MDROs hospital, e.g., rules dependent ward, state contact isolation variables data. familiar case_when() dplyr package, recognise input method set rules. Rules must set using R considers ‘formula notation’: row/isolate matches first rule, value first ~ (case ‘Elderly Type ’) set MDRO value. Otherwise, second rule tried . maximum number rules unlimited. can print rules set console overview. Colours help reading console supports colours. outcome function can used guideline argument mdro() function: rules set (custom object case) exported shared file location using saveRDS() collaborate multiple users. custom rules set imported using readRDS().","code":"custom <- custom_mdro_guideline( CIP == \"R\" & age > 60 ~ \"Elderly Type A\", ERY == \"R\" & age > 60 ~ \"Elderly Type B\" ) custom # A set of custom MDRO rules: # 1. If CIP is \"R\" and age is higher than 60 then: Elderly Type A # 2. If ERY is \"R\" and age is higher than 60 then: Elderly Type B # 3. Otherwise: Negative # # Unmatched rows will return NA. # Results will be of class 'factor', with ordered levels: Negative < Elderly Type A < Elderly Type B x <- mdro(example_isolates, guideline = custom) table(x) # x # Negative Elderly Type A Elderly Type B # 1070 198 732"},{"path":"https://msberends.github.io/AMR/articles/MDR.html","id":"examples","dir":"Articles","previous_headings":"","what":"Examples","title":"How to determine multi-drug resistance (MDR)","text":"mdro() function always returns ordered factor predefined guidelines. example, output default guideline Magiorakos et al. returns factor levels ‘Negative’, ‘MDR’, ‘XDR’ ‘PDR’ order. next example uses example_isolates data set. data set included package contains full antibiograms 2,000 microbial isolates. reflects reality can used practise AMR data analysis. test MDR/XDR/PDR guideline data set, get: (16 isolates test results) Frequency table Class: factor > ordered (numeric) Length: 2,000 Levels: 4: Negative < Multi-drug-resistant (MDR) < Extensively drug-resistant … Available: 1,729 (86.45%, NA: 271 = 13.55%) Unique: 2 another example, create data set determine multi-drug resistant TB: column names automatically verified valid drug names codes, worked exactly way: data set now looks like : can now add interpretation MDR-TB data set. can use: shortcut mdr_tb(): Create frequency table results: Frequency table Class: factor > ordered (numeric) Length: 5,000 Levels: 5: Negative < Mono-resistant < Poly-resistant < Multi-drug-resistant <… Available: 5,000 (100%, NA: 0 = 0%) Unique: 5","code":"library(dplyr) # to support pipes: %>% library(cleaner) # to create frequency tables example_isolates %>% mdro() %>% freq() # show frequency table of the result # Warning: in mdro(): NA introduced for isolates where the available percentage of # antimicrobial classes was below 50% (set with pct_required_classes) # random_rsi() is a helper function to generate # a random vector with values S, I and R my_TB_data <- data.frame( rifampicin = random_rsi(5000), isoniazid = random_rsi(5000), gatifloxacin = random_rsi(5000), ethambutol = random_rsi(5000), pyrazinamide = random_rsi(5000), moxifloxacin = random_rsi(5000), kanamycin = random_rsi(5000) ) my_TB_data <- data.frame( RIF = random_rsi(5000), INH = random_rsi(5000), GAT = random_rsi(5000), ETH = random_rsi(5000), PZA = random_rsi(5000), MFX = random_rsi(5000), KAN = random_rsi(5000) ) head(my_TB_data) # rifampicin isoniazid gatifloxacin ethambutol pyrazinamide moxifloxacin # 1 R R S I R I # 2 S I I R I I # 3 I R S R R I # 4 R R R R R S # 5 R I I I I R # 6 S S S I S S # kanamycin # 1 R # 2 R # 3 S # 4 S # 5 I # 6 I mdro(my_TB_data, guideline = \"TB\") my_TB_data$mdr <- mdr_tb(my_TB_data) # ℹ No column found as input for col_mo, assuming all rows contain # Mycobacterium tuberculosis. freq(my_TB_data$mdr)"},{"path":[]},{"path":"https://msberends.github.io/AMR/articles/PCA.html","id":"transforming","dir":"Articles","previous_headings":"","what":"Transforming","title":"How to conduct principal component analysis (PCA) for AMR","text":"PCA, need transform AMR data first. example_isolates data set package looks like: Now transform data set resistance percentages per taxonomic order genus:","code":"library(AMR) library(dplyr) glimpse(example_isolates) # Rows: 2,000 # Columns: 46 # $ date 2002-01-02, 2002-01-03, 2002-01-07, 2002-01-07, 2002-01-13, 2… # $ patient \"A77334\", \"A77334\", \"067927\", \"067927\", \"067927\", \"067927\", \"4… # $ age 65, 65, 45, 45, 45, 45, 78, 78, 45, 79, 67, 67, 71, 71, 75, 50… # $ gender \"F\", \"F\", \"F\", \"F\", \"F\", \"F\", \"M\", \"M\", \"F\", \"F\", \"M\", \"M\", \"M… # $ ward \"Clinical\", \"Clinical\", \"ICU\", \"ICU\", \"ICU\", \"ICU\", \"Clinical\"… # $ mo \"B_ESCHR_COLI\", \"B_ESCHR_COLI\", \"B_STPHY_EPDR\", \"B_STPHY_EPDR\",… # $ PEN R, R, R, R, R, R, R, R, R, R, R, R, R, R, R, R, R, R, R, R, S,… # $ OXA NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA… # $ FLC NA, NA, R, R, R, R, S, S, R, S, S, S, NA, NA, NA, NA, NA, R, R… # $ AMX NA, NA, NA, NA, NA, NA, R, R, NA, NA, NA, NA, NA, NA, R, NA, N… # $ AMC I, I, NA, NA, NA, NA, S, S, NA, NA, S, S, I, I, R, I, I, NA, N… # $ AMP NA, NA, NA, NA, NA, NA, R, R, NA, NA, NA, NA, NA, NA, R, NA, N… # $ TZP NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA… # $ CZO NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, R, NA,… # $ FEP NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA… # $ CXM I, I, R, R, R, R, S, S, R, S, S, S, S, S, NA, S, S, R, R, S, S… # $ FOX NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, R, NA,… # $ CTX NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, S, S, NA, S, S… # $ CAZ NA, NA, R, R, R, R, R, R, R, R, R, R, NA, NA, NA, S, S, R, R, … # $ CRO NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, S, S, NA, S, S… # $ GEN NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA… # $ TOB NA, NA, NA, NA, NA, NA, S, S, NA, NA, NA, NA, S, S, NA, NA, NA… # $ AMK NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA… # $ KAN NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA… # $ TMP R, R, S, S, R, R, R, R, S, S, NA, NA, S, S, S, S, S, R, R, R, … # $ SXT R, R, S, S, NA, NA, NA, NA, S, S, NA, NA, S, S, S, S, S, NA, N… # $ NIT NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, R,… # $ FOS NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA… # $ LNZ R, R, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, R, R, R, R, R, N… # $ CIP NA, NA, NA, NA, NA, NA, NA, NA, S, S, NA, NA, NA, NA, NA, S, S… # $ MFX NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA… # $ VAN R, R, S, S, S, S, S, S, S, S, NA, NA, R, R, R, R, R, S, S, S, … # $ TEC R, R, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, R, R, R, R, R, N… # $ TCY R, R, S, S, S, S, S, S, S, I, S, S, NA, NA, I, R, R, S, I, R, … # $ TGC NA, NA, S, S, S, S, S, S, S, NA, S, S, NA, NA, NA, R, R, S, NA… # $ DOX NA, NA, S, S, S, S, S, S, S, NA, S, S, NA, NA, NA, R, R, S, NA… # $ ERY R, R, R, R, R, R, S, S, R, S, S, S, R, R, R, R, R, R, R, R, S,… # $ CLI R, R, NA, NA, NA, R, NA, NA, NA, NA, NA, NA, R, R, R, R, R, NA… # $ AZM R, R, R, R, R, R, S, S, R, S, S, S, R, R, R, R, R, R, R, R, S,… # $ IPM NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, S, S, NA, S, S… # $ MEM NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA… # $ MTR NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA… # $ CHL NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA… # $ COL NA, NA, R, R, R, R, R, R, R, R, R, R, NA, NA, NA, R, R, R, R, … # $ MUP NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA… # $ RIF R, R, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, R, R, R, R, R, N… resistance_data <- example_isolates %>% group_by( order = mo_order(mo), # group on anything, like order genus = mo_genus(mo) ) %>% # and genus as we do here summarise_if(is.rsi, resistance) %>% # then get resistance of all drugs select( order, genus, AMC, CXM, CTX, CAZ, GEN, TOB, TMP, SXT ) # and select only relevant columns head(resistance_data) # # A tibble: 6 × 10 # # Groups: order [5] # order genus AMC CXM CTX CAZ GEN TOB TMP SXT # # 1 (unknown order) (unknown ge… NA NA NA NA NA NA NA NA # 2 Actinomycetales Schaalia NA NA NA NA NA NA NA NA # 3 Bacteroidales Bacteroides NA NA NA NA NA NA NA NA # 4 Campylobacterales Campylobact… NA NA NA NA NA NA NA NA # 5 Caryophanales Gemella NA NA NA NA NA NA NA NA # 6 Caryophanales Listeria NA NA NA NA NA NA NA NA"},{"path":"https://msberends.github.io/AMR/articles/PCA.html","id":"perform-principal-component-analysis","dir":"Articles","previous_headings":"","what":"Perform principal component analysis","title":"How to conduct principal component analysis (PCA) for AMR","text":"new pca() function automatically filter rows contain numeric values selected variables, now need : result can reviewed good old summary() function: Good news. first two components explain total 93.3% variance (see PC1 PC2 values Proportion Variance. can create -called biplot base R biplot() function, see antimicrobial resistance per drug explain difference per microorganism.","code":"pca_result <- pca(resistance_data) # ℹ Columns selected for PCA: \"AMC\", \"CAZ\", \"CTX\", \"CXM\", \"GEN\", \"SXT\", \"TMP\" # and \"TOB\". Total observations available: 7. summary(pca_result) # Groups (n=4, named as 'order'): # [1] \"Caryophanales\" \"Enterobacterales\" \"Lactobacillales\" \"Pseudomonadales\" # Importance of components: # PC1 PC2 PC3 PC4 PC5 PC6 PC7 # Standard deviation 2.1539 1.6807 0.6138 0.33879 0.20808 0.03140 5.121e-17 # Proportion of Variance 0.5799 0.3531 0.0471 0.01435 0.00541 0.00012 0.000e+00 # Cumulative Proportion 0.5799 0.9330 0.9801 0.99446 0.99988 1.00000 1.000e+00 # Groups (n=4, named as 'order'): # [1] \"Caryophanales\" \"Enterobacterales\" \"Lactobacillales\" \"Pseudomonadales\""},{"path":"https://msberends.github.io/AMR/articles/PCA.html","id":"plotting-the-results","dir":"Articles","previous_headings":"","what":"Plotting the results","title":"How to conduct principal component analysis (PCA) for AMR","text":"can’t see explanation points. Perhaps works better new ggplot_pca() function, automatically adds right labels even groups: can also print ellipse per group, edit appearance:","code":"biplot(pca_result) ggplot_pca(pca_result) ggplot_pca(pca_result, ellipse = TRUE) + ggplot2::labs(title = \"An AMR/PCA biplot!\")"},{"path":"https://msberends.github.io/AMR/articles/SPSS.html","id":"spss-sas-stata","dir":"Articles","previous_headings":"","what":"SPSS / SAS / Stata","title":"How to import data from SPSS / SAS / Stata","text":"SPSS (Statistical Package Social Sciences) probably well-known software package statistical analysis. SPSS easier learn R, SPSS click menu run parts analysis. user-friendliness, taught universities particularly useful students new statistics. experience, guess pretty much (bio)medical students know time graduate. SAS Stata comparable statistical packages popular big industries.","code":""},{"path":"https://msberends.github.io/AMR/articles/SPSS.html","id":"compared-to-r","dir":"Articles","previous_headings":"","what":"Compared to R","title":"How to import data from SPSS / SAS / Stata","text":"said, SPSS easier learn R. SPSS, SAS Stata come major downsides comparing R: R highly modular. official R network (CRAN) features 16,000 packages time writing, AMR package one . packages peer-reviewed publication. Aside official channel, also developers choose submit CRAN, rather keep public repository, like GitHub. may even lot 14,000 packages . Bottom line , can really extend ask somebody . Take example AMR package. Among things, adds reliable reference data R help data cleaning analysis. SPSS, SAS Stata never know valid MIC value Gram stain E. coli . species Klebiella resistant amoxicillin Floxapen® trade name flucloxacillin. facts properties often needed clean existing data, inconvenient software package without reliable reference data. See demonstration. R extremely flexible. write syntax , can anything want. flexibility transforming, arranging, grouping summarising data, drawing plots, endless - SPSS, SAS Stata bound algorithms format styles. may bit flexible, can probably never create specific publication-ready plot without using (paid) software. sometimes write syntaxes SPSS run complete analysis ‘automate’ work, lot less time R. notice writing syntaxes R lot nifty clever SPSS. Still, working statistical package, knowledge (statistically) willing accomplish. R can easily automated. last years, R Markdown really made interesting development. R Markdown, can easily produce reports, whether format Word, PowerPoint, website, PDF document just raw data Excel. even allows use reference file containing layout style (e.g. fonts colours) organisation. use lot generate weekly monthly reports automatically. Just write code enjoy automatically updated reports interval like. even professional environment, create Shiny apps: live manipulation data using custom made website. webdesign knowledge needed (JavaScript, CSS, HTML) almost zero. R huge community. Many R users just ask questions websites like StackOverflow.com, largest online community programmers. time writing, 472,394 R-related questions already asked platform (covers questions answers programming language). experience, questions answered within couple minutes. R understands data type, including SPSS/SAS/Stata. ’s vice versa ’m afraid. can import data source R. example SPSS, SAS Stata (link), Minitab, Epi Info EpiData (link), Excel (link), flat files like CSV, TXT TSV (link), directly databases datawarehouses anywhere world (link). can even scrape websites download tables live internet (link) get results API call transform data one command (link). best part - can export R data formats well. can import SPSS file, analysis neatly R export resulting tables Excel files sharing. R completely free open-source. strings attached. created maintained volunteers believe (data) science open publicly available everybody. SPSS, SAS Stata quite expensive. IBM SPSS Staticstics comes subscriptions nowadays, varying USD 1,300 USD 8,500 per user per year. SAS Analytics Pro costs around USD 10,000 per computer. Stata also business model subscription fees, varying USD 600 USD 2,800 per computer per year, lower prices come limitation number variables can work . still offer benefits R. working midsized small company, can save tens thousands dollars using R instead e.g. SPSS - gaining even functions flexibility. R enthousiasts can much PR want (like ), nobody officially associated affiliated R. really free. R (nowadays) preferred analysis software academic papers. present, R among world powerful statistical languages, generally popular science (Bollmann et al., 2017). reasons, number references R analysis method academic papers rising continuously even surpassed SPSS academic use (Muenchen, 2014). believe thing SPSS , always great user interface easy learn use. Back developed , little competition, let alone R. R didn’t even professional user interface last decade (called RStudio, see ). people used R nineties 2010 almost completely incomparable R used now. language restyled completely volunteers dedicated professionals field data science. SPSS great nothing else compete. now 2022, don’t see reason SPSS better use R. demonstrate first point:","code":"# not all values are valid MIC values: as.mic(0.125) # Class 'mic' # [1] 0.125 as.mic(\"testvalue\") # Class 'mic' # [1] # the Gram stain is available for all bacteria: mo_gramstain(\"E. coli\") # [1] \"Gram-negative\" # Klebsiella is intrinsic resistant to amoxicillin, according to EUCAST: klebsiella_test <- data.frame( mo = \"klebsiella\", amox = \"S\", stringsAsFactors = FALSE ) klebsiella_test # (our original data) # mo amox # 1 klebsiella S eucast_rules(klebsiella_test, info = FALSE) # (the edited data by EUCAST rules) # mo amox # 1 klebsiella R # hundreds of trade names can be translated to a name, trade name or an ATC code: ab_name(\"floxapen\") # [1] \"Flucloxacillin\" ab_tradenames(\"floxapen\") # [1] \"culpen\" \"floxacillin\" \"floxacillin sodium\" # [4] \"floxapen\" \"floxapen sodium salt\" \"fluclox\" # [7] \"flucloxacilina\" \"flucloxacillin\" \"flucloxacilline\" # [10] \"flucloxacillinum\" \"fluorochloroxacillin\" \"staphylex\" ab_atc(\"floxapen\") # [1] \"J01CF05\""},{"path":[]},{"path":"https://msberends.github.io/AMR/articles/SPSS.html","id":"rstudio","dir":"Articles","previous_headings":"Import data from SPSS/SAS/Stata","what":"RStudio","title":"How to import data from SPSS / SAS / Stata","text":"work R, probably best option use RStudio. open-source free desktop environment allows run R code, also supports project management, version management, package management convenient import menus work data sources. can also install RStudio Server private corporate server, brings nothing less complete RStudio software website (home work). import data file, just click Import Dataset Environment tab: additional packages needed, RStudio ask installed beforehand. window opens, can define options (parameters) used import ’re ready go: want named variables imported factors resembles SPSS , use as_factor(). difference :","code":"SPSS_data # # A tibble: 4,203 x 4 # v001 sex status statusage # # 1 10002 1 1 76.6 # 2 10004 0 1 59.1 # 3 10005 1 1 54.5 # 4 10006 1 1 54.1 # 5 10007 1 1 57.7 # 6 10008 1 1 62.8 # 7 10010 0 1 63.7 # 8 10011 1 1 73.1 # 9 10017 1 1 56.7 # 10 10018 0 1 66.6 # # ... with 4,193 more rows as_factor(SPSS_data) # # A tibble: 4,203 x 4 # v001 sex status statusage # # 1 10002 Male alive 76.6 # 2 10004 Female alive 59.1 # 3 10005 Male alive 54.5 # 4 10006 Male alive 54.1 # 5 10007 Male alive 57.7 # 6 10008 Male alive 62.8 # 7 10010 Female alive 63.7 # 8 10011 Male alive 73.1 # 9 10017 Male alive 56.7 # 10 10018 Female alive 66.6 # # ... with 4,193 more rows"},{"path":"https://msberends.github.io/AMR/articles/SPSS.html","id":"base-r","dir":"Articles","previous_headings":"Import data from SPSS/SAS/Stata","what":"Base R","title":"How to import data from SPSS / SAS / Stata","text":"import data SPSS, SAS Stata, can use great haven package : can now import files follows:","code":"# download and install the latest version: install.packages(\"haven\") # load the package you just installed: library(haven)"},{"path":"https://msberends.github.io/AMR/articles/SPSS.html","id":"spss","dir":"Articles","previous_headings":"Import data from SPSS/SAS/Stata > Base R","what":"SPSS","title":"How to import data from SPSS / SAS / Stata","text":"read files SPSS R: forget as_factor(), mentioned . export R objects SPSS file format:","code":"# read any SPSS file based on file extension (best way): read_spss(file = \"path/to/file\") # read .sav or .zsav file: read_sav(file = \"path/to/file\") # read .por file: read_por(file = \"path/to/file\") # save as .sav file: write_sav(data = yourdata, path = \"path/to/file\") # save as compressed .zsav file: write_sav(data = yourdata, path = \"path/to/file\", compress = TRUE)"},{"path":"https://msberends.github.io/AMR/articles/SPSS.html","id":"sas","dir":"Articles","previous_headings":"Import data from SPSS/SAS/Stata > Base R","what":"SAS","title":"How to import data from SPSS / SAS / Stata","text":"read files SAS R: export R objects SAS file format:","code":"# read .sas7bdat + .sas7bcat files: read_sas(data_file = \"path/to/file\", catalog_file = NULL) # read SAS transport files (version 5 and version 8): read_xpt(file = \"path/to/file\") # save as regular SAS file: write_sas(data = yourdata, path = \"path/to/file\") # the SAS transport format is an open format # (required for submission of the data to the FDA) write_xpt(data = yourdata, path = \"path/to/file\", version = 8)"},{"path":"https://msberends.github.io/AMR/articles/SPSS.html","id":"stata","dir":"Articles","previous_headings":"Import data from SPSS/SAS/Stata > Base R","what":"Stata","title":"How to import data from SPSS / SAS / Stata","text":"read files Stata R: export R objects Stata file format:","code":"# read .dta file: read_stata(file = \"/path/to/file\") # works exactly the same: read_dta(file = \"/path/to/file\") # save as .dta file, Stata version 14: # (supports Stata v8 until v15 at the time of writing) write_dta(data = yourdata, path = \"/path/to/file\", version = 14)"},{"path":"https://msberends.github.io/AMR/articles/WHONET.html","id":"import-of-data","dir":"Articles","previous_headings":"","what":"Import of data","title":"How to work with WHONET data","text":"tutorial assumes already imported WHONET data e.g. readxl package. RStudio, can done using menu button ‘Import Dataset’ tab ‘Environment’. Choose option ‘Excel’ select exported file. Make sure date fields imported correctly. example syntax look like : package comes example data set WHONET. use analysis.","code":"library(readxl) data <- read_excel(path = \"path/to/your/file.xlsx\")"},{"path":"https://msberends.github.io/AMR/articles/WHONET.html","id":"preparation","dir":"Articles","previous_headings":"","what":"Preparation","title":"How to work with WHONET data","text":"First, load relevant packages yet . use tidyverse analyses. . don’t know yet, suggest read website: https://www.tidyverse.org/. transform variables simplify automate analysis: Microorganisms transformed microorganism codes (called mo) using Catalogue Life reference data set, contains ~70,000 microorganisms taxonomic kingdoms Bacteria, Fungi Protozoa. tranformation .mo(). function also recognises almost WHONET abbreviations microorganisms. Antimicrobial results interpretations clean valid. words, contain values \"S\", \"\" \"R\". exactly .rsi() function . errors warnings, values transformed succesfully. also created package dedicated data cleaning checking, called cleaner package. freq() function can used create frequency tables. let’s check data, couple frequency tables: Frequency table Class: character Length: 500 Available: 500 (100%, NA: 0 = 0%) Unique: 38 Shortest: 11 Longest: 40 (omitted 28 entries, n = 57 [11.4%]) Frequency table Class: factor > ordered > rsi (numeric) Length: 500 Levels: 3: S < < R Available: 481 (96.2%, NA: 19 = 3.8%) Unique: 3 Drug: Amoxicillin/clavulanic acid (AMC, J01CR02) Drug group: Beta-lactams/penicillins %SI: 78.59%","code":"library(dplyr) # part of tidyverse library(ggplot2) # part of tidyverse library(AMR) # this package library(cleaner) # to create frequency tables # transform variables data <- WHONET %>% # get microbial ID based on given organism mutate(mo = as.mo(Organism)) %>% # transform everything from \"AMP_ND10\" to \"CIP_EE\" to the new `rsi` class mutate_at(vars(AMP_ND10:CIP_EE), as.rsi) # our newly created `mo` variable, put in the mo_name() function data %>% freq(mo_name(mo), nmax = 10) # our transformed antibiotic columns # amoxicillin/clavulanic acid (J01CR02) as an example data %>% freq(AMC_ND2)"},{"path":"https://msberends.github.io/AMR/articles/WHONET.html","id":"a-first-glimpse-at-results","dir":"Articles","previous_headings":"","what":"A first glimpse at results","title":"How to work with WHONET data","text":"easy ggplot already give lot information, using included ggplot_rsi() function:","code":"data %>% group_by(Country) %>% select(Country, AMP_ND2, AMC_ED20, CAZ_ED10, CIP_ED5) %>% ggplot_rsi(translate_ab = \"ab\", facet = \"Country\", datalabels = FALSE)"},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"microorganisms-full-microbial-taxonomy","dir":"Articles","previous_headings":"","what":"microorganisms: Full Microbial Taxonomy","title":"Data sets for download / own use","text":"data set 48,883 rows 22 columns, containing following column names:mo, fullname, status, kingdom, phylum, class, order, family, genus, species, subspecies, rank, ref, source, lpsn, lpsn_parent, lpsn_renamed_to, gbif, gbif_parent, gbif_renamed_to, prevalence snomed. data set R available microorganisms, load AMR package. last updated 29 October 2022 12:15:23 UTC. Find info structure data set . Direct download links: Download original R Data Structure (RDS) file (1.1 MB) Download tab-separated text file (10.6 MB) Download Microsoft Excel workbook (4.8 MB) Download Apache Feather file (5.1 MB) Download Apache Parquet file (2.5 MB) Download SAS data file (47.8 MB) Download IBM SPSS Statistics data file (15.8 MB) Download Stata DTA file (43.8 MB) NOTE: exported files SAS, SPSS Stata contain first 50 SNOMED codes per record, file size otherwise exceed 100 MB; file size limit GitHub. Advice? Use R instead. tab-separated text file Microsoft Excel workbook contain SNOMED codes comma separated values.","code":""},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"source","dir":"Articles","previous_headings":"microorganisms: Full Microbial Taxonomy","what":"Source","title":"Data sets for download / own use","text":"data set contains full microbial taxonomy five kingdoms List Prokaryotic names Standing Nomenclature (LPSN) Global Biodiversity Information Facility (GBIF): Parte, AC et al. (2020). List Prokaryotic names Standing Nomenclature (LPSN) moves DSMZ. International Journal Systematic Evolutionary Microbiology, 70, 5607-5612; . Accessed https://lpsn.dsmz.de 12 September, 2022. GBIF Secretariat (November 26, 2021). GBIF Backbone Taxonomy. Checklist dataset . Accessed https://www.gbif.org 12 September, 2022. Public Health Information Network Vocabulary Access Distribution System (PHIN VADS). US Edition SNOMED CT 1 September 2020. Value Set Name ‘Microoganism’, OID 2.16.840.1.114222.4.11.1009 (v12). URL: https://phinvads.cdc.gov","code":""},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"example-content","dir":"Articles","previous_headings":"microorganisms: Full Microbial Taxonomy","what":"Example content","title":"Data sets for download / own use","text":"Included (sub)species per taxonomic kingdom: Example rows filtering genus Escherichia:","code":""},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"antibiotics-antibiotic-antifungal-drugs","dir":"Articles","previous_headings":"","what":"antibiotics: Antibiotic (+Antifungal) Drugs","title":"Data sets for download / own use","text":"data set 483 rows 14 columns, containing following column names:ab, cid, name, group, atc, atc_group1, atc_group2, abbreviations, synonyms, oral_ddd, oral_units, iv_ddd, iv_units loinc. data set R available antibiotics, load AMR package. last updated 30 October 2022 20:05:46 UTC. Find info structure data set . Direct download links: Download original R Data Structure (RDS) file (39 kB) Download tab-separated text file (0.1 MB) Download Microsoft Excel workbook (66 kB) Download Apache Feather file (0.1 MB) Download Apache Parquet file (97 kB) Download SAS data file (1.9 MB) Download IBM SPSS Statistics data file (0.3 MB) Download Stata DTA file (0.4 MB) tab-separated text file Microsoft Excel workbook, SAS, SPSS Stata files contain ATC codes, common abbreviations, trade names LOINC codes comma separated values.","code":""},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"source-1","dir":"Articles","previous_headings":"antibiotics: Antibiotic (+Antifungal) Drugs","what":"Source","title":"Data sets for download / own use","text":"data set contains EARS-Net ATC codes gathered WHONET, compound IDs PubChem. also contains brand names (synonyms) found PubChem Defined Daily Doses (DDDs) oral parenteral administration. ATC/DDD index Collaborating Centre Drug Statistics Methodology (note: may used commercial purposes, freely available CC website personal use) PubChem US National Library Medicine WHONET software 2019 LOINC (Logical Observation Identifiers Names Codes)","code":""},{"path":[]},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"antivirals-antiviral-drugs","dir":"Articles","previous_headings":"","what":"antivirals: Antiviral Drugs","title":"Data sets for download / own use","text":"data set 120 rows 11 columns, containing following column names:av, name, atc, cid, atc_group, synonyms, oral_ddd, oral_units, iv_ddd, iv_units loinc. data set R available antivirals, load AMR package. last updated 13 November 2022 07:46:10 UTC. Find info structure data set . Direct download links: Download original R Data Structure (RDS) file (5 kB) Download tab-separated text file (16 kB) Download Microsoft Excel workbook (16 kB) Download Apache Feather file (15 kB) Download Apache Parquet file (13 kB) Download SAS data file (84 kB) Download IBM SPSS Statistics data file (30 kB) Download Stata DTA file (73 kB) tab-separated text file Microsoft Excel workbook, SAS, SPSS Stata files contain trade names LOINC codes comma separated values.","code":""},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"source-2","dir":"Articles","previous_headings":"antivirals: Antiviral Drugs","what":"Source","title":"Data sets for download / own use","text":"data set contains ATC codes gathered compound IDs PubChem. also contains brand names (synonyms) found PubChem Defined Daily Doses (DDDs) oral parenteral administration. ATC/DDD index Collaborating Centre Drug Statistics Methodology (note: may used commercial purposes, freely available CC website personal use) PubChem US National Library Medicine LOINC (Logical Observation Identifiers Names Codes)","code":""},{"path":[]},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"rsi_translation-interpretation-from-mic-values-disk-diameters-to-rsi","dir":"Articles","previous_headings":"","what":"rsi_translation: Interpretation from MIC values / disk diameters to R/SI","title":"Data sets for download / own use","text":"data set 18,308 rows 11 columns, containing following column names:guideline, method, site, mo, rank_index, ab, ref_tbl, disk_dose, breakpoint_S, breakpoint_R uti. data set R available rsi_translation, load AMR package. last updated 29 October 2022 17:01:23 UTC. Find info structure data set . Direct download links: Download original R Data Structure (RDS) file (42 kB) Download tab-separated text file (1.9 MB) Download Microsoft Excel workbook (0.8 MB) Download Apache Feather file (0.7 MB) Download Apache Parquet file (87 kB) Download SAS data file (3.6 MB) Download IBM SPSS Statistics data file (2.3 MB) Download Stata DTA file (3.4 MB)","code":""},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"source-3","dir":"Articles","previous_headings":"rsi_translation: Interpretation from MIC values / disk diameters to R/SI","what":"Source","title":"Data sets for download / own use","text":"data set contains interpretation rules MIC values disk diffusion diameters. Included guidelines CLSI (2013-2022) EUCAST (2013-2022).","code":""},{"path":[]},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"intrinsic_resistant-intrinsic-bacterial-resistance","dir":"Articles","previous_headings":"","what":"intrinsic_resistant: Intrinsic Bacterial Resistance","title":"Data sets for download / own use","text":"data set 134,659 rows 2 columns, containing following column names:mo ab. data set R available intrinsic_resistant, load AMR package. last updated 31 October 2022 10:19:06 UTC. Find info structure data set . Direct download links: Download original R Data Structure (RDS) file (78 kB) Download tab-separated text file (5.1 MB) Download Microsoft Excel workbook (1.3 MB) Download Apache Feather file (1.2 MB) Download Apache Parquet file (0.2 MB) Download SAS data file (9.8 MB) Download IBM SPSS Statistics data file (7.4 MB) Download Stata DTA file (9.5 MB)","code":""},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"source-4","dir":"Articles","previous_headings":"intrinsic_resistant: Intrinsic Bacterial Resistance","what":"Source","title":"Data sets for download / own use","text":"data set contains defined intrinsic resistance EUCAST bug-drug combinations, based ‘EUCAST Expert Rules’ ‘EUCAST Intrinsic Resistance Unusual Phenotypes’ v3.3 (2021).","code":""},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"example-content-4","dir":"Articles","previous_headings":"intrinsic_resistant: Intrinsic Bacterial Resistance","what":"Example content","title":"Data sets for download / own use","text":"Example rows filtering Enterobacter cloacae:","code":""},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"dosage-dosage-guidelines-from-eucast","dir":"Articles","previous_headings":"","what":"dosage: Dosage Guidelines from EUCAST","title":"Data sets for download / own use","text":"data set 336 rows 9 columns, containing following column names:ab, name, type, dose, dose_times, administration, notes, original_txt eucast_version. data set R available dosage, load AMR package. last updated 14 November 2022 14:20:39 UTC. Find info structure data set . Direct download links: Download original R Data Structure (RDS) file (3 kB) Download tab-separated text file (29 kB) Download Microsoft Excel workbook (19 kB) Download Apache Feather file (16 kB) Download Apache Parquet file (8 kB) Download SAS data file (92 kB) Download IBM SPSS Statistics data file (43 kB) Download Stata DTA file (82 kB)","code":""},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"source-5","dir":"Articles","previous_headings":"dosage: Dosage Guidelines from EUCAST","what":"Source","title":"Data sets for download / own use","text":"EUCAST breakpoints used package based dosages data set. Currently included dosages data set meant : ‘EUCAST Clinical Breakpoint Tables’ v11.0 (2021) ‘EUCAST Clinical Breakpoint Tables’ v12.0 (2022).","code":""},{"path":[]},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"example_isolates-example-data-for-practice","dir":"Articles","previous_headings":"","what":"example_isolates: Example Data for Practice","title":"Data sets for download / own use","text":"data set 2,000 rows 46 columns, containing following column names:date, patient, age, gender, ward, mo, PEN, OXA, FLC, AMX, AMC, AMP, TZP, CZO, FEP, CXM, FOX, CTX, CAZ, CRO, GEN, TOB, AMK, KAN, TMP, SXT, NIT, FOS, LNZ, CIP, MFX, VAN, TEC, TCY, TGC, DOX, ERY, CLI, AZM, IPM, MEM, MTR, CHL, COL, MUP RIF. data set R available example_isolates, load AMR package. last updated 27 August 2022 18:49:37 UTC. Find info structure data set .","code":""},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"source-6","dir":"Articles","previous_headings":"example_isolates: Example Data for Practice","what":"Source","title":"Data sets for download / own use","text":"data set contains randomised fictitious data, reflects reality can used practise AMR data analysis.","code":""},{"path":[]},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"example_isolates_unclean-example-data-for-practice","dir":"Articles","previous_headings":"","what":"example_isolates_unclean: Example Data for Practice","title":"Data sets for download / own use","text":"data set 3,000 rows 8 columns, containing following column names:patient_id, hospital, date, bacteria, AMX, AMC, CIP GEN. data set R available example_isolates_unclean, load AMR package. last updated 27 August 2022 18:49:37 UTC. Find info structure data set .","code":""},{"path":"https://msberends.github.io/AMR/articles/datasets.html","id":"source-7","dir":"Articles","previous_headings":"example_isolates_unclean: Example Data for Practice","what":"Source","title":"Data sets for download / own use","text":"data set contains randomised fictitious data, reflects reality can used practise AMR data analysis.","code":""},{"path":[]},{"path":"https://msberends.github.io/AMR/articles/resistance_predict.html","id":"needed-r-packages","dir":"Articles","previous_headings":"","what":"Needed R packages","title":"How to predict antimicrobial resistance","text":"many uses R, need additional packages AMR data analysis. package works closely together tidyverse packages dplyr ggplot2. tidyverse tremendously improves way conduct data science - allows natural way writing syntaxes creating beautiful plots R. AMR package depends packages even extends use functions.","code":"library(dplyr) library(ggplot2) library(AMR) # (if not yet installed, install with:) # install.packages(c(\"tidyverse\", \"AMR\"))"},{"path":"https://msberends.github.io/AMR/articles/resistance_predict.html","id":"prediction-analysis","dir":"Articles","previous_headings":"","what":"Prediction analysis","title":"How to predict antimicrobial resistance","text":"package contains function resistance_predict(), takes input functions AMR data analysis. Based date column, calculates cases per year uses regression model predict antimicrobial resistance. basically easy : function look date column col_date set. running commands, summary regression model printed unless using resistance_predict(..., info = FALSE). text printed summary - actual result (output) function data.frame containing year: number observations, actual observed resistance, estimated resistance standard error estimation: function plot available base R, can extended packages depend output based type input. extended function cope resistance predictions: fastest way plot result. automatically adds right axes, error bars, titles, number available observations type model. also support ggplot2 package custom function ggplot_rsi_predict() create appealing plots:","code":"# resistance prediction of piperacillin/tazobactam (TZP): resistance_predict(tbl = example_isolates, col_date = \"date\", col_ab = \"TZP\", model = \"binomial\") # or: example_isolates %>% resistance_predict( col_ab = \"TZP\", model = \"binomial\" ) # to bind it to object 'predict_TZP' for example: predict_TZP <- example_isolates %>% resistance_predict( col_ab = \"TZP\", model = \"binomial\" ) predict_TZP # # A tibble: 31 × 7 # year value se_min se_max observations observed estimated # * # 1 2002 0.2 NA NA 15 0.2 0.0562 # 2 2003 0.0625 NA NA 32 0.0625 0.0616 # 3 2004 0.0854 NA NA 82 0.0854 0.0676 # 4 2005 0.05 NA NA 60 0.05 0.0741 # 5 2006 0.0508 NA NA 59 0.0508 0.0812 # 6 2007 0.121 NA NA 66 0.121 0.0889 # 7 2008 0.0417 NA NA 72 0.0417 0.0972 # 8 2009 0.0164 NA NA 61 0.0164 0.106 # 9 2010 0.0566 NA NA 53 0.0566 0.116 # 10 2011 0.183 NA NA 93 0.183 0.127 # # … with 21 more rows plot(predict_TZP) ggplot_rsi_predict(predict_TZP) # choose for error bars instead of a ribbon ggplot_rsi_predict(predict_TZP, ribbon = FALSE)"},{"path":"https://msberends.github.io/AMR/articles/resistance_predict.html","id":"choosing-the-right-model","dir":"Articles","previous_headings":"Prediction analysis","what":"Choosing the right model","title":"How to predict antimicrobial resistance","text":"Resistance easily predicted; look vancomycin resistance Gram-positive bacteria, spread (.e. standard error) enormous: Vancomycin resistance 100% ten years, might remain low. can define model model parameter. model chosen generalised linear regression model using binomial distribution, assuming period zero resistance followed period increasing resistance leading slowly resistance. Valid values : vancomycin resistance Gram-positive bacteria, linear model might appropriate: model also available object, attribute:","code":"example_isolates %>% filter(mo_gramstain(mo, language = NULL) == \"Gram-positive\") %>% resistance_predict(col_ab = \"VAN\", year_min = 2010, info = FALSE, model = \"binomial\") %>% ggplot_rsi_predict() example_isolates %>% filter(mo_gramstain(mo, language = NULL) == \"Gram-positive\") %>% resistance_predict(col_ab = \"VAN\", year_min = 2010, info = FALSE, model = \"linear\") %>% ggplot_rsi_predict() model <- attributes(predict_TZP)$model summary(model)$family # # Family: binomial # Link function: logit summary(model)$coefficients # Estimate Std. Error z value Pr(>|z|) # (Intercept) -200.67944891 46.17315349 -4.346237 1.384932e-05 # year 0.09883005 0.02295317 4.305725 1.664395e-05"},{"path":"https://msberends.github.io/AMR/authors.html","id":null,"dir":"","previous_headings":"","what":"Authors","title":"Authors and Citation","text":"Matthijs S. Berends. Author, maintainer. Christian F. Luz. Author, contributor. Dennis Souverein. Author, contributor. Erwin E. . Hassing. Author, contributor. Casper J. Albers. Thesis advisor. Peter Dutey-Magni. Contributor. Judith M. Fonville. Contributor. Alex W. Friedrich. Thesis advisor. Corinna Glasner. Thesis advisor. Eric H. L. C. M. Hazenberg. Contributor. Gwen Knight. Contributor. Annick Lenglet. Contributor. Bart C. Meijer. Contributor. Dmytro Mykhailenko. Contributor. Anton Mymrikov. Contributor. Sofia Ny. Contributor. Jonas Salm. Contributor. Rogier P. Schade. Contributor. Bhanu N. M. Sinha. Thesis advisor. Anthony Underwood. Contributor.","code":""},{"path":"https://msberends.github.io/AMR/authors.html","id":"citation","dir":"","previous_headings":"","what":"Citation","title":"Authors and Citation","text":"Berends MS, Luz CF, Friedrich AW, Sinha BNM, Albers CJ, Glasner C (2022). “AMR: R Package Working Antimicrobial Resistance Data.” Journal Statistical Software, 104(3), 1–31. doi:10.18637/jss.v104.i03.","code":"@Article{, title = {{AMR}: An {R} Package for Working with Antimicrobial Resistance Data}, author = {Matthijs S. Berends and Christian F. Luz and Alexander W. Friedrich and Bhanu N. M. Sinha and Casper J. Albers and Corinna Glasner}, journal = {Journal of Statistical Software}, year = {2022}, volume = {104}, number = {3}, pages = {1--31}, doi = {10.18637/jss.v104.i03}, }"},{"path":"https://msberends.github.io/AMR/index.html","id":"the-amr-package-for-r-","dir":"","previous_headings":"","what":"Antimicrobial Resistance Data Analysis","title":"Antimicrobial Resistance Data Analysis","text":"Works Windows, macOS Linux versions R since R-3.0 Provides full microbiological taxonomy data antimicrobial drugs Applies recent CLSI EUCAST clinical breakpoints MICs disk zones Corrects duplicate isolates, calculates predicts AMR per antibiotic class Integrates WHONET, ATC, EARS-Net, PubChem, LOINC SNOMED CT Completely dependency-free, highly suitable places limited resources https://msberends.github.io/AMR https://doi.org/10.18637/jss.v104.i03","code":""},{"path":"https://msberends.github.io/AMR/index.html","id":"introduction","dir":"","previous_headings":"","what":"Introduction","title":"Antimicrobial Resistance Data Analysis","text":"AMR package free open-source R package zero dependencies simplify analysis prediction Antimicrobial Resistance (AMR) work microbial antimicrobial data properties, using evidence-based methods. aim provide standard clean reproducible AMR data analysis, can therefore empower epidemiological analyses continuously enable surveillance treatment evaluation setting. work published Journal Statistical Software (Volume 104(3); DOI 10.18637/jss.v104.i03) formed basis two PhD theses (DOI 10.33612/diss.177417131 DOI 10.33612/diss.192486375). installing package, R knows ~49,000 distinct microbial species ~600 antibiotic, antimycotic antiviral drugs name code (including ATC, EARS-Net, ASIARS-Net, PubChem, LOINC SNOMED CT), knows valid R/SI MIC values. integral breakpoint guidelines CLSI EUCAST included last 10 years. supports can read data format, including WHONET data. package works Windows, macOS Linux versions R since R-3.0 (April 2013). designed work setting, including limited resources. created routine data analysis academic research Faculty Medical Sciences University Groningen, collaboration non-profit organisations Certe Medical Diagnostics Advice Foundation University Medical Center Groningen, actively durably maintained two public healthcare organisations Netherlands.","code":""},{"path":"https://msberends.github.io/AMR/index.html","id":"used-in-175-countries-translated-to-16-languages","dir":"","previous_headings":"Introduction","what":"Used in 175 countries, translated to 16 languages","title":"Antimicrobial Resistance Data Analysis","text":"Since first public release early 2018, R package used almost countries world. Click map enlarge see country names. AMR package available English, Chinese, Danish, Dutch, French, German, Greek, Italian, Japanese, Polish, Portuguese, Russian, Spanish, Swedish, Turkish, Ukrainian. Antimicrobial drug (group) names colloquial microorganism names provided languages.","code":""},{"path":[]},{"path":"https://msberends.github.io/AMR/index.html","id":"filtering-and-selecting-data","dir":"","previous_headings":"Practical examples","what":"Filtering and selecting data","title":"Antimicrobial Resistance Data Analysis","text":"defined row filter Gram-negative bacteria intrinsic resistance cefotaxime (mo_is_gram_negative() mo_is_intrinsic_resistant()) column selection two antibiotic groups (aminoglycosides() carbapenems()), reference data microorganisms antibiotics AMR package make sure get meant: base R equivalent : base R snippet work version R since April 2013 (R-3.0).","code":"# AMR works great with dplyr, but it's not required or neccesary library(AMR) library(dplyr) example_isolates %>% mutate(bacteria = mo_fullname()) %>% filter(mo_is_gram_negative(), mo_is_intrinsic_resistant(ab = \"cefotax\")) %>% select(bacteria, aminoglycosides(), carbapenems()) example_isolates$bacteria <- mo_fullname(example_isolates$mo) example_isolates[which(mo_is_gram_negative() & mo_is_intrinsic_resistant(ab = \"cefotax\")), c(\"bacteria\", aminoglycosides(), carbapenems())]"},{"path":"https://msberends.github.io/AMR/index.html","id":"calculating-resistance-per-group","dir":"","previous_headings":"Practical examples","what":"Calculating resistance per group","title":"Antimicrobial Resistance Data Analysis","text":"","code":"library(AMR) library(dplyr) out <- example_isolates %>% # group by ward: group_by(ward) %>% # calculate AMR using resistance(), over all aminoglycosides # and polymyxins: summarise(across(c(aminoglycosides(), polymyxins()), resistance)) out # transform the antibiotic columns to names: out %>% set_ab_names() # transform the antibiotic column to ATC codes: out %>% set_ab_names(property = \"atc\")"},{"path":"https://msberends.github.io/AMR/index.html","id":"what-else-can-you-do-with-this-package","dir":"","previous_headings":"","what":"What else can you do with this package?","title":"Antimicrobial Resistance Data Analysis","text":"package intended comprehensive toolbox integrated AMR data analysis. package can used : Reference taxonomy microorganisms, since package contains microbial (sub)species List Prokaryotic names Standing Nomenclature (LPSN) Global Biodiversity Information Facility (GBIF) (manual) Interpreting raw MIC disk diffusion values, based CLSI EUCAST guideline last 10 years (manual) Retrieving antimicrobial drug names, doses forms administration clinical health care records (manual) Determining first isolates used AMR data analysis (manual) Calculating antimicrobial resistance (tutorial) Determining multi-drug resistance (MDR) / multi-drug resistant organisms (MDRO) (tutorial) Calculating (empirical) susceptibility mono therapy combination therapies (tutorial) Predicting future antimicrobial resistance using regression models (tutorial) Getting properties microorganism (like Gram stain, species, genus family) (manual) Getting properties antibiotic (like name, code EARS-Net/ATC/LOINC/PubChem, defined daily dose trade name) (manual) Plotting antimicrobial resistance (tutorial) Applying EUCAST expert rules (manual) Getting SNOMED codes microorganism, getting properties microorganism based SNOMED code (manual) Getting LOINC codes antibiotic, getting properties antibiotic based LOINC code (manual) Machine reading EUCAST CLSI guidelines 2011-2021 translate MIC values disk diffusion diameters R/SI (link) Principal component analysis AMR (tutorial)","code":""},{"path":[]},{"path":"https://msberends.github.io/AMR/index.html","id":"latest-official-version","dir":"","previous_headings":"Get this package","what":"Latest official version","title":"Antimicrobial Resistance Data Analysis","text":"package available official R network (CRAN). Install package R CRAN using command: downloaded installed automatically. RStudio, click menu Tools > Install Packages… type “AMR” press Install. Note: functions website may available latest release. use functions data sets mentioned website, install latest development version.","code":"install.packages(\"AMR\")"},{"path":"https://msberends.github.io/AMR/index.html","id":"latest-development-version","dir":"","previous_headings":"Get this package","what":"Latest development version","title":"Antimicrobial Resistance Data Analysis","text":"Please read Developer Guideline . latest unpublished development version can installed GitHub two ways: Manually, using: Automatically, using rOpenSci R-universe platform, adding R-universe address list repositories (‘repos’): , can install update AMR package like official release (e.g., using install.packages(\"AMR\") RStudio via Tools > Check Package Updates…).","code":"install.packages(\"remotes\") # if you haven't already remotes::install_github(\"msberends/AMR\") options(repos = c(getOption(\"repos\"), msberends = \"https://msberends.r-universe.dev\"))"},{"path":"https://msberends.github.io/AMR/index.html","id":"get-started","dir":"","previous_headings":"","what":"Get started","title":"Antimicrobial Resistance Data Analysis","text":"find conduct AMR data analysis, please continue reading get started click link ‘’ menu.","code":""},{"path":"https://msberends.github.io/AMR/index.html","id":"partners","dir":"","previous_headings":"","what":"Partners","title":"Antimicrobial Resistance Data Analysis","text":"development package part , related , made possible :","code":""},{"path":"https://msberends.github.io/AMR/index.html","id":"copyright","dir":"","previous_headings":"","what":"Copyright","title":"Antimicrobial Resistance Data Analysis","text":"R package free, open-source software licensed GNU General Public License v2.0 (GPL-2). nutshell, means package: May used commercial purposes May used private purposes May used patent purposes May modified, although: Modifications must released license distributing package Changes made code must documented May distributed, although: Source code must made available package distributed copy license copyright notice must included package. Comes LIMITATION liability Comes warranty","code":""},{"path":"https://msberends.github.io/AMR/reference/AMR-deprecated.html","id":null,"dir":"Reference","previous_headings":"","what":"Deprecated Functions — AMR-deprecated","title":"Deprecated Functions — AMR-deprecated","text":"functions -called 'Deprecated'. removed future release. Using functions give warning name function replaced (one).","code":""},{"path":"https://msberends.github.io/AMR/reference/AMR.html","id":null,"dir":"Reference","previous_headings":"","what":"The AMR Package — AMR","title":"The AMR Package — AMR","text":"Welcome AMR package. AMR free, open-source independent R package simplify analysis prediction Antimicrobial Resistance (AMR) work microbial antimicrobial data properties, using evidence-based methods. aim provide standard clean reproducible antimicrobial resistance data analysis, can therefore empower epidemiological analyses continuously enable surveillance treatment evaluation setting. work published Journal Statistical Software (Volume 104(3); doi:10.18637/jss.v104.i03 ) formed basis two PhD theses (doi:10.33612/diss.177417131 doi:10.33612/diss.192486375 ). installing package, R knows ~49,000 distinct microbial species ~600 antibiotic, antimycotic antiviral drugs name code (including ATC, EARS-NET, LOINC SNOMED CT), knows valid R/SI MIC values. supports data format, including WHONET/EARS-Net data. package fully independent R package works Windows, macOS Linux versions R since R-3.0.0 (April 2013). designed work setting, including limited resources. created routine data analysis academic research Faculty Medical Sciences University Groningen, collaboration non-profit organisations Certe Medical Diagnostics Advice University Medical Center Groningen. R package actively maintained free software; can freely use distribute personal commercial (patent) purposes terms GNU General Public License version 2.0 (GPL-2), published Free Software Foundation. package can used : Reference taxonomy microorganisms, since package contains microbial (sub)species List Prokaryotic names Standing Nomenclature (LPSN) Global Biodiversity Information Facility (GBIF) Interpreting raw MIC disk diffusion values, based CLSI EUCAST guideline last 10 years Retrieving antimicrobial drug names, doses forms administration clinical health care records Determining first isolates used AMR data analysis Calculating antimicrobial resistance Determining multi-drug resistance (MDR) / multi-drug resistant organisms (MDRO) Calculating (empirical) susceptibility mono therapy combination therapies Predicting future antimicrobial resistance using regression models Getting properties microorganism (Gram stain, species, genus family) Getting properties antibiotic (name, code EARS-Net/ATC/LOINC/PubChem, defined daily dose trade name) Plotting antimicrobial resistance Applying EUCAST expert rules Getting SNOMED codes microorganism, getting properties microorganism based SNOMED code Getting LOINC codes antibiotic, getting properties antibiotic based LOINC code Machine reading EUCAST CLSI guidelines 2011-2020 translate MIC values disk diffusion diameters R/SI Principal component analysis AMR","code":""},{"path":"https://msberends.github.io/AMR/reference/AMR.html","id":"source","dir":"Reference","previous_headings":"","what":"Source","title":"The AMR Package — AMR","text":"cite AMR publications use: Berends MS, Luz CF, Friedrich AW, Sinha BNM, Albers CJ, Glasner C (2022). \"AMR: R Package Working Antimicrobial Resistance Data.\" Journal Statistical Software, 104(3), 1-31. doi:10.18637/jss.v104.i03 . BibTeX entry LaTeX users :","code":"@Article{, title = {{AMR}: An {R} Package for Working with Antimicrobial Resistance Data}, author = {Matthijs S. Berends and Christian F. Luz and Alexander W. Friedrich and Bhanu N. M. Sinha and Casper J. Albers and Corinna Glasner}, journal = {Journal of Statistical Software}, year = {2022}, volume = {104}, number = {3}, pages = {1--31}, doi = {10.18637/jss.v104.i03}, }"},{"path":"https://msberends.github.io/AMR/reference/AMR.html","id":"reference-data-publicly-available","dir":"Reference","previous_headings":"","what":"Reference Data Publicly Available","title":"The AMR Package — AMR","text":"data sets AMR package (microorganisms, antibiotics, R/SI interpretation, EUCAST rules, etc.) publicly freely available download following formats: R, MS Excel, Apache Feather, Apache Parquet, SPSS, SAS, Stata. also provide tab-separated plain text files machine-readable suitable input software program, laboratory information systems. Please visit website download links. actual files course available GitHub repository.","code":""},{"path":[]},{"path":"https://msberends.github.io/AMR/reference/AMR.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"The AMR Package — AMR","text":"Maintainer: Matthijs S. Berends m.berends@certe.nl (ORCID) Authors: Christian F. Luz (ORCID) [contributor] Dennis Souverein (ORCID) [contributor] Erwin E. . Hassing [contributor] contributors: Casper J. Albers (ORCID) [thesis advisor] Peter Dutey-Magni (ORCID) [contributor] Judith M. Fonville [contributor] Alex W. Friedrich (ORCID) [thesis advisor] Corinna Glasner (ORCID) [thesis advisor] Eric H. L. C. M. Hazenberg [contributor] Gwen Knight (ORCID) [contributor] Annick Lenglet (ORCID) [contributor] Bart C. Meijer [contributor] Dmytro Mykhailenko [contributor] Anton Mymrikov [contributor] Sofia Ny (ORCID) [contributor] Jonas Salm [contributor] Rogier P. Schade [contributor] Bhanu N. M. Sinha (ORCID) [thesis advisor] Anthony Underwood (ORCID) [contributor]","code":""},{"path":"https://msberends.github.io/AMR/reference/WHOCC.html","id":null,"dir":"Reference","previous_headings":"","what":"WHOCC: WHO Collaborating Centre for Drug Statistics Methodology — WHOCC","title":"WHOCC: WHO Collaborating Centre for Drug Statistics Methodology — WHOCC","text":"antimicrobial drugs official names, ATC codes, ATC groups defined daily dose (DDD) included package, using Collaborating Centre Drug Statistics Methodology.","code":""},{"path":"https://msberends.github.io/AMR/reference/WHOCC.html","id":"whocc","dir":"Reference","previous_headings":"","what":"WHOCC","title":"WHOCC: WHO Collaborating Centre for Drug Statistics Methodology — WHOCC","text":"package contains ~550 antibiotic, antimycotic antiviral drugs Anatomical Therapeutic Chemical (ATC) codes, ATC groups Defined Daily Dose (DDD) World Health Organization Collaborating Centre Drug Statistics Methodology (WHOCC, https://www.whocc.) Pharmaceuticals Community Register European Commission (https://ec.europa.eu/health/documents/community-register/html/reg_hum_atc.htm). become gold standard international drug utilisation monitoring research. WHOCC located Oslo Norwegian Institute Public Health funded Norwegian government. European Commission executive European Union promotes general interest. NOTE: WHOCC copyright allow use commercial purposes, unlike info package. See https://www.whocc./copyright_disclaimer/.","code":""},{"path":"https://msberends.github.io/AMR/reference/WHOCC.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"WHOCC: WHO Collaborating Centre for Drug Statistics Methodology — WHOCC","text":"","code":"as.ab(\"meropenem\") #> Class 'ab' #> [1] MEM ab_name(\"J01DH02\") #> [1] \"Meropenem\" ab_tradenames(\"flucloxacillin\") #> [1] \"culpen\" \"floxacillin\" \"floxacillin sodium\" #> [4] \"floxapen\" \"floxapen sodium salt\" \"fluclox\" #> [7] \"flucloxacilina\" \"flucloxacillin\" \"flucloxacilline\" #> [10] \"flucloxacillinum\" \"fluorochloroxacillin\" \"staphylex\""},{"path":"https://msberends.github.io/AMR/reference/WHONET.html","id":null,"dir":"Reference","previous_headings":"","what":"Data Set with 500 Isolates - WHONET Example — WHONET","title":"Data Set with 500 Isolates - WHONET Example — WHONET","text":"example data set exact structure export file WHONET. files can used package, example data set shows. antibiotic results example_isolates data set. patient names created using online surname generators place practice purposes.","code":""},{"path":"https://msberends.github.io/AMR/reference/WHONET.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Data Set with 500 Isolates - WHONET Example — WHONET","text":"","code":"WHONET"},{"path":"https://msberends.github.io/AMR/reference/WHONET.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Data Set with 500 Isolates - WHONET Example — WHONET","text":"tibble 500 observations 53 variables: Identification number ID sample Specimen number ID specimen Organism Name microorganism. analysis, transform valid microbial class, using .mo(). Country Country origin Laboratory Name laboratory Last name Fictitious last name patient First name Fictitious initial patient Sex Fictitious gender patient Age Fictitious age patient Age category Age group, can also looked using age_groups() Date admissionDate hospital admission Specimen dateDate specimen received laboratory Specimen type Specimen type group Specimen type (Numeric) Translation \"Specimen type\" Reason Reason request Differential Diagnosis Isolate number ID isolate Organism type Type microorganism, can also looked using mo_type() Serotype Serotype microorganism Beta-lactamase Microorganism produces beta-lactamase? ESBL Microorganism produces extended spectrum beta-lactamase? Carbapenemase Microorganism produces carbapenemase? MRSA screening test Microorganism possible MRSA? Inducible clindamycin resistance Clindamycin can induced? Comment comments Date data entryDate data entered WHONET AMP_ND10:CIP_EE 28 different antibiotics. can lookup abbreviations antibiotics data set, use e.g. ab_name(\"AMP\") get official name immediately. analysis, transform valid antibiotic class, using .rsi().","code":""},{"path":"https://msberends.github.io/AMR/reference/WHONET.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Data Set with 500 Isolates - WHONET Example — WHONET","text":"Like data sets package, data set publicly available download following formats: R, MS Excel, Apache Feather, Apache Parquet, SPSS, SAS, Stata. Please visit website download links. actual files course available GitHub repository.","code":""},{"path":"https://msberends.github.io/AMR/reference/WHONET.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Data Set with 500 Isolates - WHONET Example — WHONET","text":"","code":"WHONET #> # A tibble: 500 × 53 #> Identif…¹ Speci…² Organ…³ Country Labor…⁴ Last …⁵ First…⁶ Sex Age Age c…⁷ #> #> 1 fe41d7ba… 1748 SPN Belgium Nation… Abel B. F 68 55-74 #> 2 91f175ec… 1767 eco The Ne… Nation… Delacr… F. M 89 75+ #> 3 cc401505… 1343 eco The Ne… Nation… Steens… F. M 85 75+ #> 4 e864b692… 1894 MAP Denmark Nation… Beyers… L. M 62 55-74 #> 5 3d051fe3… 1739 PVU Belgium Nation… Hummel W. M 86 75+ #> 6 c80762a0… 1846 103 The Ne… Nation… Eikenb… J. F 53 25-54 #> 7 8022d372… 1628 103 Denmark Nation… Leclerc S. F 77 75+ #> 8 f3dc5f55… 1493 eco The Ne… Nation… Delacr… W. M 53 25-54 #> 9 15add38f… 1847 eco France Nation… Van La… S. F 63 55-74 #> 10 fd41248d… 1458 eco Germany Nation… Moulin O. F 75 75+ #> # … with 490 more rows, 43 more variables: `Date of admission` , #> # `Specimen date` , `Specimen type` , #> # `Specimen type (Numeric)` , Reason , `Isolate number` , #> # `Organism type` , Serotype , `Beta-lactamase` , ESBL , #> # Carbapenemase , `MRSA screening test` , #> # `Inducible clindamycin resistance` , Comment , #> # `Date of data entry` , AMP_ND10 , AMC_ED20 , …"},{"path":"https://msberends.github.io/AMR/reference/ab_from_text.html","id":null,"dir":"Reference","previous_headings":"","what":"Retrieve Antimicrobial Drug Names and Doses from Clinical Text — ab_from_text","title":"Retrieve Antimicrobial Drug Names and Doses from Clinical Text — ab_from_text","text":"Use function e.g. clinical texts health care records. returns list antimicrobial drugs, doses forms administration found texts.","code":""},{"path":"https://msberends.github.io/AMR/reference/ab_from_text.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Retrieve Antimicrobial Drug Names and Doses from Clinical Text — ab_from_text","text":"","code":"ab_from_text( text, type = c(\"drug\", \"dose\", \"administration\"), collapse = NULL, translate_ab = FALSE, thorough_search = NULL, info = interactive(), ... )"},{"path":"https://msberends.github.io/AMR/reference/ab_from_text.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Retrieve Antimicrobial Drug Names and Doses from Clinical Text — ab_from_text","text":"text text analyse type type property search , either \"drug\", \"dose\" \"administration\", see Examples collapse character pass paste(, collapse = ...) return one character per element text, see Examples translate_ab type = \"drug\": column name antibiotics data set translate antibiotic abbreviations , using ab_property(). Defaults FALSE. Using TRUE equal using \"name\". thorough_search logical indicate whether input must extensively searched misspelling faulty input values. Setting TRUE take considerably time using FALSE. default, turn TRUE input elements contain maximum three words. info logical indicate whether progress bar printed, defaults TRUE interactive mode ... arguments passed .ab()","code":""},{"path":"https://msberends.github.io/AMR/reference/ab_from_text.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Retrieve Antimicrobial Drug Names and Doses from Clinical Text — ab_from_text","text":"list, character collapse NULL","code":""},{"path":"https://msberends.github.io/AMR/reference/ab_from_text.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Retrieve Antimicrobial Drug Names and Doses from Clinical Text — ab_from_text","text":"function also internally used .ab(), although searches first drug name throw note drug names returned. Note: .ab() function may use long regular expression match brand names antimicrobial drugs. may fail systems.","code":""},{"path":"https://msberends.github.io/AMR/reference/ab_from_text.html","id":"argument-type","dir":"Reference","previous_headings":"","what":"Argument type","title":"Retrieve Antimicrobial Drug Names and Doses from Clinical Text — ab_from_text","text":"default, function search antimicrobial drug names. text elements searched official names, ATC codes brand names. uses .ab() internally, correct misspelling. type = \"dose\" (similar, like \"dosing\", \"doses\"), text elements searched numeric values higher 100 resemble years. output numeric. supports unit (g, mg, IE, etc.) multiple values one clinical text, see Examples. type = \"administration\" (abbreviations, like \"admin\", \"adm\"), text elements searched form drug administration. supports following forms (including common abbreviations): buccal, implant, inhalation, instillation, intravenous, nasal, oral, parenteral, rectal, sublingual, transdermal vaginal. Abbreviations oral ('po', 'per os') become \"oral\", values intravenous ('iv', 'intraven') become \"iv\". supports multiple values one clinical text, see Examples.","code":""},{"path":"https://msberends.github.io/AMR/reference/ab_from_text.html","id":"argument-collapse","dir":"Reference","previous_headings":"","what":"Argument collapse","title":"Retrieve Antimicrobial Drug Names and Doses from Clinical Text — ab_from_text","text":"Without using collapse, function return list. can convenient use e.g. inside mutate()):df %>% mutate(abx = ab_from_text(clinical_text)) returned AB codes can transformed official names, groups, etc. ab_* functions ab_name() ab_group(), using translate_ab argument. using collapse, function return character:df %>% mutate(abx = ab_from_text(clinical_text, collapse = \"|\"))","code":""},{"path":"https://msberends.github.io/AMR/reference/ab_from_text.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Retrieve Antimicrobial Drug Names and Doses from Clinical Text — ab_from_text","text":"","code":"# mind the bad spelling of amoxicillin in this line, # straight from a true health care record: ab_from_text(\"28/03/2020 regular amoxicilliin 500mg po tid\") #> [[1]] #> Class 'ab' #> [1] AMX #> ab_from_text(\"500 mg amoxi po and 400mg cipro iv\") #> [[1]] #> Class 'ab' #> [1] AMX CIP #> ab_from_text(\"500 mg amoxi po and 400mg cipro iv\", type = \"dose\") #> [[1]] #> [1] 500 400 #> ab_from_text(\"500 mg amoxi po and 400mg cipro iv\", type = \"admin\") #> [[1]] #> [1] \"oral\" \"iv\" #> ab_from_text(\"500 mg amoxi po and 400mg cipro iv\", collapse = \", \") #> [1] \"AMX, CIP\" # \\donttest{ # if you want to know which antibiotic groups were administered, do e.g.: abx <- ab_from_text(\"500 mg amoxi po and 400mg cipro iv\") ab_group(abx[[1]]) #> [1] \"Beta-lactams/penicillins\" \"Quinolones\" if (require(\"dplyr\")) { tibble(clinical_text = c( \"given 400mg cipro and 500 mg amox\", \"started on doxy iv today\" )) %>% mutate( abx_codes = ab_from_text(clinical_text), abx_doses = ab_from_text(clinical_text, type = \"doses\"), abx_admin = ab_from_text(clinical_text, type = \"admin\"), abx_coll = ab_from_text(clinical_text, collapse = \"|\"), abx_coll_names = ab_from_text(clinical_text, collapse = \"|\", translate_ab = \"name\" ), abx_coll_doses = ab_from_text(clinical_text, type = \"doses\", collapse = \"|\" ), abx_coll_admin = ab_from_text(clinical_text, type = \"admin\", collapse = \"|\" ) ) } #> Loading required package: dplyr #> #> Attaching package: ‘dplyr’ #> The following objects are masked from ‘package:stats’: #> #> filter, lag #> The following objects are masked from ‘package:base’: #> #> intersect, setdiff, setequal, union #> # A tibble: 2 × 8 #> clinical_text abx_c…¹ abx_d…² abx_a…³ abx_c…⁴ abx_c…⁵ abx_c…⁶ abx_c…⁷ #> #> 1 given 400mg cipro and… CIP|AMX Ciprof… 400|500 NA #> 2 started on doxy iv to… DOX Doxycy… NA iv #> # … with abbreviated variable names ¹abx_codes, ²abx_doses, ³abx_admin, #> # ⁴abx_coll, ⁵abx_coll_names, ⁶abx_coll_doses, ⁷abx_coll_admin # }"},{"path":"https://msberends.github.io/AMR/reference/ab_property.html","id":null,"dir":"Reference","previous_headings":"","what":"Get Properties of an Antibiotic — ab_property","title":"Get Properties of an Antibiotic — ab_property","text":"Use functions return specific property antibiotic antibiotics data set. input values evaluated internally .ab().","code":""},{"path":"https://msberends.github.io/AMR/reference/ab_property.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Get Properties of an Antibiotic — ab_property","text":"","code":"ab_name(x, language = get_AMR_locale(), tolower = FALSE, ...) ab_cid(x, ...) ab_synonyms(x, ...) ab_tradenames(x, ...) ab_group(x, language = get_AMR_locale(), ...) ab_atc(x, only_first = FALSE, ...) ab_atc_group1(x, language = get_AMR_locale(), ...) ab_atc_group2(x, language = get_AMR_locale(), ...) ab_loinc(x, ...) ab_ddd(x, administration = \"oral\", ...) ab_ddd_units(x, administration = \"oral\", ...) ab_info(x, language = get_AMR_locale(), ...) ab_url(x, open = FALSE, ...) ab_property(x, property = \"name\", language = get_AMR_locale(), ...) set_ab_names( data, ..., property = \"name\", language = get_AMR_locale(), snake_case = NULL )"},{"path":"https://msberends.github.io/AMR/reference/ab_property.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Get Properties of an Antibiotic — ab_property","text":"x (vector ) text can coerced valid antibiotic drug code .ab() language language returned text, defaults system language (see get_AMR_locale()) can also set getOption(\"AMR_locale\"). Use language = NULL language = \"\" prevent translation. tolower logical indicate whether first character every output transformed lower case character. lead e.g. \"polymyxin B\" \"polymyxin b\". ... case set_ab_names() data data.frame: variables select (supports tidy selection column1:column4), otherwise arguments passed .ab() only_first logical indicate whether first ATC code must returned, giving preference J0-codes (.e., antimicrobial drug group) administration way administration, either \"oral\" \"iv\" open browse URL using utils::browseURL() property one column names one antibiotics data set: vector_or(colnames(antibiotics), sort = FALSE). data data.frame columns need renamed, character vector column names snake_case logical indicate whether names -called snake case: lower case spaces/slashes replaced underscore (_)","code":""},{"path":"https://msberends.github.io/AMR/reference/ab_property.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Get Properties of an Antibiotic — ab_property","text":"integer case ab_cid() named list case ab_info() multiple ab_atc()/ab_synonyms()/ab_tradenames() double case ab_ddd() data.frame case set_ab_names() character cases","code":""},{"path":"https://msberends.github.io/AMR/reference/ab_property.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Get Properties of an Antibiotic — ab_property","text":"output translated possible. function ab_url() return direct URL official website. warning returned required ATC code available. function set_ab_names() special column renaming function data.frames. renames columns names resemble antimicrobial drugs. always makes sure new column names unique. property = \"atc\" set, preference given ATC codes J-group.","code":""},{"path":"https://msberends.github.io/AMR/reference/ab_property.html","id":"source","dir":"Reference","previous_headings":"","what":"Source","title":"Get Properties of an Antibiotic — ab_property","text":"World Health Organization () Collaborating Centre Drug Statistics Methodology: https://www.whocc./atc_ddd_index/ European Commission Public Health PHARMACEUTICALS - COMMUNITY REGISTER: https://ec.europa.eu/health/documents/community-register/html/reg_hum_atc.htm","code":""},{"path":"https://msberends.github.io/AMR/reference/ab_property.html","id":"reference-data-publicly-available","dir":"Reference","previous_headings":"","what":"Reference Data Publicly Available","title":"Get Properties of an Antibiotic — ab_property","text":"data sets AMR package (microorganisms, antibiotics, R/SI interpretation, EUCAST rules, etc.) publicly freely available download following formats: R, MS Excel, Apache Feather, Apache Parquet, SPSS, SAS, Stata. also provide tab-separated plain text files machine-readable suitable input software program, laboratory information systems. Please visit website download links. actual files course available GitHub repository.","code":""},{"path":[]},{"path":"https://msberends.github.io/AMR/reference/ab_property.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Get Properties of an Antibiotic — ab_property","text":"","code":"# all properties: ab_name(\"AMX\") #> [1] \"Amoxicillin\" ab_atc(\"AMX\") #> [1] \"J01CA04\" ab_cid(\"AMX\") #> [1] 33613 ab_synonyms(\"AMX\") #> [1] \"actimoxi\" \"amoclen\" \"amolin\" #> [4] \"amopen\" \"amopenixin\" \"amoxibiotic\" #> [7] \"amoxicaps\" \"amoxicilina\" \"amoxicillin\" #> [10] \"amoxicillin hydrate\" \"amoxicilline\" \"amoxicillinum\" #> [13] \"amoxiden\" \"amoxil\" \"amoxivet\" #> [16] \"amoxy\" \"amoxycillin\" \"amoxyke\" #> [19] \"anemolin\" \"aspenil\" \"atoksilin\" #> [22] \"biomox\" \"bristamox\" \"cemoxin\" #> [25] \"clamoxyl\" \"damoxy\" \"delacillin\" #> [28] \"demoksil\" \"dispermox\" \"efpenix\" #> [31] \"flemoxin\" \"hiconcil\" \"histocillin\" #> [34] \"hydroxyampicillin\" \"ibiamox\" \"imacillin\" #> [37] \"lamoxy\" \"largopen\" \"metafarma capsules\" #> [40] \"metifarma capsules\" \"moksilin\" \"moxacin\" #> [43] \"moxatag\" \"ospamox\" \"pamoxicillin\" #> [46] \"piramox\" \"promoxil\" \"remoxil\" #> [49] \"robamox\" \"sawamox pm\" \"tolodina\" #> [52] \"topramoxin\" \"unicillin\" \"utimox\" #> [55] \"vetramox\" ab_tradenames(\"AMX\") #> [1] \"actimoxi\" \"amoclen\" \"amolin\" #> [4] \"amopen\" \"amopenixin\" \"amoxibiotic\" #> [7] \"amoxicaps\" \"amoxicilina\" \"amoxicillin\" #> [10] \"amoxicillin hydrate\" \"amoxicilline\" \"amoxicillinum\" #> [13] \"amoxiden\" \"amoxil\" \"amoxivet\" #> [16] \"amoxy\" \"amoxycillin\" \"amoxyke\" #> [19] \"anemolin\" \"aspenil\" \"atoksilin\" #> [22] \"biomox\" \"bristamox\" \"cemoxin\" #> [25] \"clamoxyl\" \"damoxy\" \"delacillin\" #> [28] \"demoksil\" \"dispermox\" \"efpenix\" #> [31] \"flemoxin\" \"hiconcil\" \"histocillin\" #> [34] \"hydroxyampicillin\" \"ibiamox\" \"imacillin\" #> [37] \"lamoxy\" \"largopen\" \"metafarma capsules\" #> [40] \"metifarma capsules\" \"moksilin\" \"moxacin\" #> [43] \"moxatag\" \"ospamox\" \"pamoxicillin\" #> [46] \"piramox\" \"promoxil\" \"remoxil\" #> [49] \"robamox\" \"sawamox pm\" \"tolodina\" #> [52] \"topramoxin\" \"unicillin\" \"utimox\" #> [55] \"vetramox\" ab_group(\"AMX\") #> [1] \"Beta-lactams/penicillins\" ab_atc_group1(\"AMX\") #> [1] \"Beta-lactam antibacterials, penicillins\" ab_atc_group2(\"AMX\") #> [1] \"Penicillins with extended spectrum\" ab_url(\"AMX\") #> Amoxicillin #> \"https://www.whocc.no/atc_ddd_index/?code=J01CA04&showdescription=no\" # smart lowercase tranformation ab_name(x = c(\"AMC\", \"PLB\")) #> [1] \"Amoxicillin/clavulanic acid\" \"Polymyxin B\" ab_name(x = c(\"AMC\", \"PLB\"), tolower = TRUE) #> [1] \"amoxicillin/clavulanic acid\" \"polymyxin B\" # defined daily doses (DDD) ab_ddd(\"AMX\", \"oral\") #> [1] 1.5 ab_ddd_units(\"AMX\", \"oral\") #> [1] \"g\" ab_ddd(\"AMX\", \"iv\") #> [1] 3 ab_ddd_units(\"AMX\", \"iv\") #> [1] \"g\" ab_info(\"AMX\") # all properties as a list #> $ab #> [1] \"AMX\" #> #> $cid #> [1] 33613 #> #> $name #> [1] \"Amoxicillin\" #> #> $group #> [1] \"Beta-lactams/penicillins\" #> #> $atc #> [1] \"J01CA04\" #> #> $atc_group1 #> [1] \"Beta-lactam antibacterials, penicillins\" #> #> $atc_group2 #> [1] \"Penicillins with extended spectrum\" #> #> $tradenames #> [1] \"actimoxi\" \"amoclen\" \"amolin\" #> [4] \"amopen\" \"amopenixin\" \"amoxibiotic\" #> [7] \"amoxicaps\" \"amoxicilina\" \"amoxicillin\" #> [10] \"amoxicillin hydrate\" \"amoxicilline\" \"amoxicillinum\" #> [13] \"amoxiden\" \"amoxil\" \"amoxivet\" #> [16] \"amoxy\" \"amoxycillin\" \"amoxyke\" #> [19] \"anemolin\" \"aspenil\" \"atoksilin\" #> [22] \"biomox\" \"bristamox\" \"cemoxin\" #> [25] \"clamoxyl\" \"damoxy\" \"delacillin\" #> [28] \"demoksil\" \"dispermox\" \"efpenix\" #> [31] \"flemoxin\" \"hiconcil\" \"histocillin\" #> [34] \"hydroxyampicillin\" \"ibiamox\" \"imacillin\" #> [37] \"lamoxy\" \"largopen\" \"metafarma capsules\" #> [40] \"metifarma capsules\" \"moksilin\" \"moxacin\" #> [43] \"moxatag\" \"ospamox\" \"pamoxicillin\" #> [46] \"piramox\" \"promoxil\" \"remoxil\" #> [49] \"robamox\" \"sawamox pm\" \"tolodina\" #> [52] \"topramoxin\" \"unicillin\" \"utimox\" #> [55] \"vetramox\" #> #> $loinc #> [1] \"16365-9\" \"25274-2\" \"3344-9\" \"80133-2\" #> #> $ddd #> $ddd$oral #> $ddd$oral$amount #> [1] 1.5 #> #> $ddd$oral$units #> [1] \"g\" #> #> #> $ddd$iv #> $ddd$iv$amount #> [1] 3 #> #> $ddd$iv$units #> [1] \"g\" #> #> #> # all ab_* functions use as.ab() internally, so you can go from 'any' to 'any': ab_atc(\"AMP\") #> [1] \"J01CA01\" \"S01AA19\" ab_group(\"J01CA01\") #> [1] \"Beta-lactams/penicillins\" ab_loinc(\"ampicillin\") #> [1] \"21066-6\" \"3355-5\" \"33562-0\" \"33919-2\" \"43883-8\" \"43884-6\" \"87604-5\" ab_name(\"21066-6\") #> [1] \"Ampicillin\" ab_name(6249) #> [1] \"Ampicillin\" ab_name(\"J01CA01\") #> [1] \"Ampicillin\" # spelling from different languages and dyslexia are no problem ab_atc(\"ceftriaxon\") #> [1] \"J01DD04\" ab_atc(\"cephtriaxone\") #> [1] \"J01DD04\" ab_atc(\"cephthriaxone\") #> [1] \"J01DD04\" ab_atc(\"seephthriaaksone\") #> [1] \"J01DD04\" # use set_ab_names() for renaming columns colnames(example_isolates) #> [1] \"date\" \"patient\" \"age\" \"gender\" \"ward\" \"mo\" \"PEN\" #> [8] \"OXA\" \"FLC\" \"AMX\" \"AMC\" \"AMP\" \"TZP\" \"CZO\" #> [15] \"FEP\" \"CXM\" \"FOX\" \"CTX\" \"CAZ\" \"CRO\" \"GEN\" #> [22] \"TOB\" \"AMK\" \"KAN\" \"TMP\" \"SXT\" \"NIT\" \"FOS\" #> [29] \"LNZ\" \"CIP\" \"MFX\" \"VAN\" \"TEC\" \"TCY\" \"TGC\" #> [36] \"DOX\" \"ERY\" \"CLI\" \"AZM\" \"IPM\" \"MEM\" \"MTR\" #> [43] \"CHL\" \"COL\" \"MUP\" \"RIF\" colnames(set_ab_names(example_isolates)) #> [1] \"date\" \"patient\" #> [3] \"age\" \"gender\" #> [5] \"ward\" \"mo\" #> [7] \"benzylpenicillin\" \"oxacillin\" #> [9] \"flucloxacillin\" \"amoxicillin\" #> [11] \"amoxicillin_clavulanic_acid\" \"ampicillin\" #> [13] \"piperacillin_tazobactam\" \"cefazolin\" #> [15] \"cefepime\" \"cefuroxime\" #> [17] \"cefoxitin\" \"cefotaxime\" #> [19] \"ceftazidime\" \"ceftriaxone\" #> [21] \"gentamicin\" \"tobramycin\" #> [23] \"amikacin\" \"kanamycin\" #> [25] \"trimethoprim\" \"trimethoprim_sulfamethoxazole\" #> [27] \"nitrofurantoin\" \"fosfomycin\" #> [29] \"linezolid\" \"ciprofloxacin\" #> [31] \"moxifloxacin\" \"vancomycin\" #> [33] \"teicoplanin\" \"tetracycline\" #> [35] \"tigecycline\" \"doxycycline\" #> [37] \"erythromycin\" \"clindamycin\" #> [39] \"azithromycin\" \"imipenem\" #> [41] \"meropenem\" \"metronidazole\" #> [43] \"chloramphenicol\" \"colistin\" #> [45] \"mupirocin\" \"rifampicin\" colnames(set_ab_names(example_isolates, NIT:VAN)) #> [1] \"date\" \"patient\" \"age\" \"gender\" #> [5] \"ward\" \"mo\" \"PEN\" \"OXA\" #> [9] \"FLC\" \"AMX\" \"AMC\" \"AMP\" #> [13] \"TZP\" \"CZO\" \"FEP\" \"CXM\" #> [17] \"FOX\" \"CTX\" \"CAZ\" \"CRO\" #> [21] \"GEN\" \"TOB\" \"AMK\" \"KAN\" #> [25] \"TMP\" \"SXT\" \"nitrofurantoin\" \"fosfomycin\" #> [29] \"linezolid\" \"ciprofloxacin\" \"moxifloxacin\" \"vancomycin\" #> [33] \"TEC\" \"TCY\" \"TGC\" \"DOX\" #> [37] \"ERY\" \"CLI\" \"AZM\" \"IPM\" #> [41] \"MEM\" \"MTR\" \"CHL\" \"COL\" #> [45] \"MUP\" \"RIF\" # \\donttest{ if (require(\"dplyr\")) { example_isolates %>% set_ab_names() %>% head() # this does the same: example_isolates %>% rename_with(set_ab_names) %>% head() # set_ab_names() works with any AB property: example_isolates %>% set_ab_names(property = \"atc\") %>% head() example_isolates %>% set_ab_names(where(is.rsi)) %>% colnames() example_isolates %>% set_ab_names(NIT:VAN) %>% colnames() } #> [1] \"date\" \"patient\" \"age\" \"gender\" #> [5] \"ward\" \"mo\" \"PEN\" \"OXA\" #> [9] \"FLC\" \"AMX\" \"AMC\" \"AMP\" #> [13] \"TZP\" \"CZO\" \"FEP\" \"CXM\" #> [17] \"FOX\" \"CTX\" \"CAZ\" \"CRO\" #> [21] \"GEN\" \"TOB\" \"AMK\" \"KAN\" #> [25] \"TMP\" \"SXT\" \"nitrofurantoin\" \"fosfomycin\" #> [29] \"linezolid\" \"ciprofloxacin\" \"moxifloxacin\" \"vancomycin\" #> [33] \"TEC\" \"TCY\" \"TGC\" \"DOX\" #> [37] \"ERY\" \"CLI\" \"AZM\" \"IPM\" #> [41] \"MEM\" \"MTR\" \"CHL\" \"COL\" #> [45] \"MUP\" \"RIF\" # }"},{"path":"https://msberends.github.io/AMR/reference/add_custom_antimicrobials.html","id":null,"dir":"Reference","previous_headings":"","what":"Add Custom Antimicrobials to This Package — add_custom_antimicrobials","title":"Add Custom Antimicrobials to This Package — add_custom_antimicrobials","text":"add_custom_antimicrobials() can add custom antimicrobial drug codes AMR package.","code":""},{"path":"https://msberends.github.io/AMR/reference/add_custom_antimicrobials.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Add Custom Antimicrobials to This Package — add_custom_antimicrobials","text":"","code":"add_custom_antimicrobials(x) clear_custom_antimicrobials()"},{"path":"https://msberends.github.io/AMR/reference/add_custom_antimicrobials.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Add Custom Antimicrobials to This Package — add_custom_antimicrobials","text":"x data.frame resembling antibiotics data set, least containing columns \"ab\" \"name\"","code":""},{"path":"https://msberends.github.io/AMR/reference/add_custom_antimicrobials.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Add Custom Antimicrobials to This Package — add_custom_antimicrobials","text":"Due R works, add_custom_antimicrobials() function run every R session - added antimicrobials stored sessions thus lost R exited. possible save antimicrobial additions .Rprofile file circumvent , although requires load AMR package every start-: Use clear_custom_antimicrobials() clear previously added antimicrobials.","code":"# Open .Rprofile file utils::file.edit(\"~/.Rprofile\") # Add custom antibiotic drug codes: library(AMR) add_custom_antimicrobials( data.frame(ab = \"TESTAB\", name = \"Test Antibiotic\", group = \"Test Group\") )"},{"path":"https://msberends.github.io/AMR/reference/add_custom_antimicrobials.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Add Custom Antimicrobials to This Package — add_custom_antimicrobials","text":"","code":"# \\donttest{ # returns NA and throws a warning (which is now suppressed): suppressWarnings( as.ab(\"testab\") ) #> Class 'ab' #> [1] # now add a custom entry - it will be considered by as.ab() and # all ab_*() functions add_custom_antimicrobials( data.frame( ab = \"TESTAB\", name = \"Test Antibiotic\", # you can add any property present in the # 'antibiotics' data set, such as 'group': group = \"Test Group\" ) ) #> ℹ Added one record to the internal antibiotics data set. # \"testab\" is now a new antibiotic: as.ab(\"testab\") #> Class 'ab' #> [1] TESTAB ab_name(\"testab\") #> [1] \"Test Antibiotic\" ab_group(\"testab\") #> [1] \"Test Group\" ab_info(\"testab\") #> $ab #> [1] \"TESTAB\" #> #> $cid #> [1] NA #> #> $name #> [1] \"Test Antibiotic\" #> #> $group #> [1] \"Test Group\" #> #> $atc #> [1] NA #> #> $atc_group1 #> [1] NA #> #> $atc_group2 #> [1] NA #> #> $tradenames #> [1] NA #> #> $loinc #> [1] NA #> #> $ddd #> $ddd$oral #> $ddd$oral$amount #> [1] NA #> #> $ddd$oral$units #> [1] NA #> #> #> $ddd$iv #> $ddd$iv$amount #> [1] NA #> #> $ddd$iv$units #> [1] NA #> #> #> # Add Co-fluampicil, which is one of the many J01CR50 codes, see # https://www.whocc.no/ddd/list_of_ddds_combined_products/ add_custom_antimicrobials( data.frame( ab = \"COFLU\", name = \"Co-fluampicil\", atc = \"J01CR50\", group = \"Beta-lactams/penicillines\" ) ) #> ℹ Added one record to the internal antibiotics data set. ab_atc(\"Co-fluampicil\") #> [1] \"J01CR50\" ab_name(\"J01CR50\") #> [1] \"Co-fluampicil\" # even antibiotic selectors work x <- data.frame( random_column = \"some value\", coflu = as.rsi(\"S\"), ampicillin = as.rsi(\"R\") ) x #> random_column coflu ampicillin #> 1 some value S R x[, betalactams()] #> ℹ For betalactams() using columns 'coflu' (co-fluampicil) and #> 'ampicillin' #> coflu ampicillin #> 1 S R # }"},{"path":"https://msberends.github.io/AMR/reference/age.html","id":null,"dir":"Reference","previous_headings":"","what":"Age in Years of Individuals — age","title":"Age in Years of Individuals — age","text":"Calculates age years based reference date, system date default.","code":""},{"path":"https://msberends.github.io/AMR/reference/age.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Age in Years of Individuals — age","text":"","code":"age(x, reference = Sys.Date(), exact = FALSE, na.rm = FALSE, ...)"},{"path":"https://msberends.github.io/AMR/reference/age.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Age in Years of Individuals — age","text":"x date(s), character (vectors) coerced .POSIXlt() reference reference date(s) (defaults today), character (vectors) coerced .POSIXlt() exact logical indicate whether age calculation exact, .e. decimals. divides number days year--date (YTD) x number days year reference (either 365 366). na.rm logical indicate whether missing values removed ... arguments passed .POSIXlt(), origin","code":""},{"path":"https://msberends.github.io/AMR/reference/age.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Age in Years of Individuals — age","text":"integer (decimals) exact = FALSE, double (decimals) otherwise","code":""},{"path":"https://msberends.github.io/AMR/reference/age.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Age in Years of Individuals — age","text":"Ages 0 returned NA warning. Ages 120 give warning. function vectorises x reference, meaning either can length 1 argument larger length.","code":""},{"path":[]},{"path":"https://msberends.github.io/AMR/reference/age.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Age in Years of Individuals — age","text":"","code":"# 10 random pre-Y2K birth dates df <- data.frame(birth_date = as.Date(\"2000-01-01\") - runif(10) * 25000) # add ages df$age <- age(df$birth_date) # add exact ages df$age_exact <- age(df$birth_date, exact = TRUE) # add age at millenium switch df$age_at_y2k <- age(df$birth_date, \"2000-01-01\") df #> birth_date age age_exact age_at_y2k #> 1 1944-12-30 77 77.91507 55 #> 2 1946-04-06 76 76.64932 53 #> 3 1933-09-07 89 89.22740 66 #> 4 1992-05-18 30 30.53425 7 #> 5 1970-02-25 52 52.75890 29 #> 6 1944-11-05 78 78.06575 55 #> 7 1950-02-10 72 72.80000 49 #> 8 1995-05-07 27 27.56438 4 #> 9 1998-09-17 24 24.20000 1 #> 10 1969-01-26 53 53.84110 30"},{"path":"https://msberends.github.io/AMR/reference/age_groups.html","id":null,"dir":"Reference","previous_headings":"","what":"Split Ages into Age Groups — age_groups","title":"Split Ages into Age Groups — age_groups","text":"Split ages age groups defined split argument. allows easier demographic (antimicrobial resistance) analysis.","code":""},{"path":"https://msberends.github.io/AMR/reference/age_groups.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Split Ages into Age Groups — age_groups","text":"","code":"age_groups(x, split_at = c(12, 25, 55, 75), na.rm = FALSE)"},{"path":"https://msberends.github.io/AMR/reference/age_groups.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Split Ages into Age Groups — age_groups","text":"x age, e.g. calculated age() split_at values split x , defaults age groups 0-11, 12-24, 25-54, 55-74 75+. See Details. na.rm logical indicate whether missing values removed","code":""},{"path":"https://msberends.github.io/AMR/reference/age_groups.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Split Ages into Age Groups — age_groups","text":"Ordered factor","code":""},{"path":"https://msberends.github.io/AMR/reference/age_groups.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Split Ages into Age Groups — age_groups","text":"split ages, input split_at argument can : numeric vector. value e.g. c(10, 20) split x 0-9, 10-19 20+. value 50 split x 0-49 50+. default split young children (0-11), youth (12-24), young adults (25-54), middle-aged adults (55-74) elderly (75+). character: \"children\" \"kids\", equivalent : c(0, 1, 2, 4, 6, 13, 18). split 0, 1, 2-3, 4-5, 6-12, 13-17 18+. \"elderly\" \"seniors\", equivalent : c(65, 75, 85). split 0-64, 65-74, 75-84, 85+. \"fives\", equivalent : 1:20 * 5. split 0-4, 5-9, ..., 95-99, 100+. \"tens\", equivalent : 1:10 * 10. split 0-9, 10-19, ..., 90-99, 100+.","code":""},{"path":[]},{"path":"https://msberends.github.io/AMR/reference/age_groups.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Split Ages into Age Groups — age_groups","text":"","code":"ages <- c(3, 8, 16, 54, 31, 76, 101, 43, 21) # split into 0-49 and 50+ age_groups(ages, 50) #> [1] 0-49 0-49 0-49 50+ 0-49 50+ 50+ 0-49 0-49 #> Levels: 0-49 < 50+ # split into 0-19, 20-49 and 50+ age_groups(ages, c(20, 50)) #> [1] 0-19 0-19 0-19 50+ 20-49 50+ 50+ 20-49 20-49 #> Levels: 0-19 < 20-49 < 50+ # split into groups of ten years age_groups(ages, 1:10 * 10) #> [1] 0-9 0-9 10-19 50-59 30-39 70-79 100+ 40-49 20-29 #> 11 Levels: 0-9 < 10-19 < 20-29 < 30-39 < 40-49 < 50-59 < 60-69 < ... < 100+ age_groups(ages, split_at = \"tens\") #> [1] 0-9 0-9 10-19 50-59 30-39 70-79 100+ 40-49 20-29 #> 11 Levels: 0-9 < 10-19 < 20-29 < 30-39 < 40-49 < 50-59 < 60-69 < ... < 100+ # split into groups of five years age_groups(ages, 1:20 * 5) #> [1] 0-4 5-9 15-19 50-54 30-34 75-79 100+ 40-44 20-24 #> 21 Levels: 0-4 < 5-9 < 10-14 < 15-19 < 20-24 < 25-29 < 30-34 < ... < 100+ age_groups(ages, split_at = \"fives\") #> [1] 0-4 5-9 15-19 50-54 30-34 75-79 100+ 40-44 20-24 #> 21 Levels: 0-4 < 5-9 < 10-14 < 15-19 < 20-24 < 25-29 < 30-34 < ... < 100+ # split specifically for children age_groups(ages, c(1, 2, 4, 6, 13, 18)) #> [1] 2-3 6-12 13-17 18+ 18+ 18+ 18+ 18+ 18+ #> Levels: 0 < 1 < 2-3 < 4-5 < 6-12 < 13-17 < 18+ age_groups(ages, \"children\") #> [1] 2-3 6-12 13-17 18+ 18+ 18+ 18+ 18+ 18+ #> Levels: 0 < 1 < 2-3 < 4-5 < 6-12 < 13-17 < 18+ # \\donttest{ # resistance of ciprofloxacin per age group if (require(\"dplyr\") && require(\"ggplot2\")) { example_isolates %>% filter_first_isolate() %>% filter(mo == as.mo(\"Escherichia coli\")) %>% group_by(age_group = age_groups(age)) %>% select(age_group, CIP) %>% ggplot_rsi( x = \"age_group\", minimum = 0, x.title = \"Age Group\", title = \"Ciprofloxacin resistance per age group\" ) } #> Loading required package: ggplot2 #> Including isolates from ICU. # }"},{"path":"https://msberends.github.io/AMR/reference/antibiotic_class_selectors.html","id":null,"dir":"Reference","previous_headings":"","what":"Antibiotic Selectors — antibiotic_class_selectors","title":"Antibiotic Selectors — antibiotic_class_selectors","text":"functions allow filtering rows selecting columns based antibiotic test results specific antibiotic class group, without need define columns antibiotic abbreviations. short, column name resembles antimicrobial drug, picked functions matches pharmaceutical class: \"cefazolin\", \"CZO\" \"J01DB04\" picked cephalosporins().","code":""},{"path":"https://msberends.github.io/AMR/reference/antibiotic_class_selectors.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Antibiotic Selectors — antibiotic_class_selectors","text":"","code":"ab_class(ab_class, only_rsi_columns = FALSE, only_treatable = TRUE, ...) ab_selector(filter, only_rsi_columns = FALSE, only_treatable = TRUE, ...) aminoglycosides(only_rsi_columns = FALSE, only_treatable = TRUE, ...) aminopenicillins(only_rsi_columns = FALSE, ...) antifungals(only_rsi_columns = FALSE, ...) antimycobacterials(only_rsi_columns = FALSE, ...) betalactams(only_rsi_columns = FALSE, only_treatable = TRUE, ...) carbapenems(only_rsi_columns = FALSE, only_treatable = TRUE, ...) cephalosporins(only_rsi_columns = FALSE, ...) cephalosporins_1st(only_rsi_columns = FALSE, ...) cephalosporins_2nd(only_rsi_columns = FALSE, ...) cephalosporins_3rd(only_rsi_columns = FALSE, ...) cephalosporins_4th(only_rsi_columns = FALSE, ...) cephalosporins_5th(only_rsi_columns = FALSE, ...) fluoroquinolones(only_rsi_columns = FALSE, ...) glycopeptides(only_rsi_columns = FALSE, ...) lincosamides(only_rsi_columns = FALSE, ...) lipoglycopeptides(only_rsi_columns = FALSE, ...) macrolides(only_rsi_columns = FALSE, ...) oxazolidinones(only_rsi_columns = FALSE, ...) penicillins(only_rsi_columns = FALSE, ...) polymyxins(only_rsi_columns = FALSE, only_treatable = TRUE, ...) streptogramins(only_rsi_columns = FALSE, ...) quinolones(only_rsi_columns = FALSE, ...) tetracyclines(only_rsi_columns = FALSE, ...) trimethoprims(only_rsi_columns = FALSE, ...) ureidopenicillins(only_rsi_columns = FALSE, ...) administrable_per_os(only_rsi_columns = FALSE, ...) administrable_iv(only_rsi_columns = FALSE, ...) not_intrinsic_resistant( only_rsi_columns = FALSE, col_mo = NULL, version_expertrules = 3.3, ... )"},{"path":"https://msberends.github.io/AMR/reference/antibiotic_class_selectors.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Antibiotic Selectors — antibiotic_class_selectors","text":"ab_class antimicrobial class part , \"carba\" \"carbapenems\". columns group, atc_group1 atc_group2 antibiotics data set searched (case-insensitive) value. only_rsi_columns logical indicate whether columns class rsi must selected (defaults FALSE), see .rsi() only_treatable logical indicate whether antimicrobial drugs excluded laboratory tests (defaults TRUE), gentamicin-high (GEH) imipenem/EDTA (IPE) ... ignored, place allow future extensions filter expression evaluated antibiotics data set, name %like% \"trim\" col_mo column name IDs microorganisms (see .mo()), defaults first column class mo. Values coerced using .mo(). version_expertrules version number use EUCAST Expert Rules Intrinsic Resistance guideline. Can either \"3.3\", \"3.2\" \"3.1\".","code":""},{"path":"https://msberends.github.io/AMR/reference/antibiotic_class_selectors.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Antibiotic Selectors — antibiotic_class_selectors","text":"(internally) character vector column names, additional class \"ab_selector\"","code":""},{"path":"https://msberends.github.io/AMR/reference/antibiotic_class_selectors.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Antibiotic Selectors — antibiotic_class_selectors","text":"functions can used data set calls selecting columns filtering rows. heavily inspired Tidyverse selection helpers everything(), also work base R dplyr verbs. Nonetheless, convenient use dplyr functions select(), filter() summarise(), see Examples. columns data functions called searched known antibiotic names, abbreviations, brand names, codes (ATC, EARS-Net, , etc.) according antibiotics data set. means selector aminoglycosides() pick column names like 'gen', 'genta', 'J01GB03', 'tobra', 'Tobracin', etc. ab_class() function can used filter/select manually defined antibiotic class. searches results antibiotics data set within columns group, atc_group1 atc_group2. ab_selector() function can used internally filter antibiotics data set results, see Examples. allows filtering (part ) certain name, /group name even minimum DDDs oral treatment. function yields highest flexibility, also least user-friendly, since requires hard-coded filter set. administrable_per_os() administrable_iv() functions also rely antibiotics data set - antibiotic columns matched DDD (defined daily dose) resp. oral IV treatment available antibiotics data set. not_intrinsic_resistant() function can used select antibiotic columns pose intrinsic resistance microorganisms data set. example, data set contains microorganism codes names E. coli K. pneumoniae contains column \"vancomycin\", column removed (rather, unselected) using function. currently applies 'EUCAST Expert Rules' 'EUCAST Intrinsic Resistance Unusual Phenotypes' v3.3 (2021) determine intrinsic resistance, using eucast_rules() function internally. determination, function quite slow terms performance.","code":""},{"path":"https://msberends.github.io/AMR/reference/antibiotic_class_selectors.html","id":"full-list-of-supported-antibiotic-classes","dir":"Reference","previous_headings":"","what":"Full list of supported (antibiotic) classes","title":"Antibiotic Selectors — antibiotic_class_selectors","text":"aminoglycosides() can select: amikacin (AMK), amikacin/fosfomycin (AKF), amphotericin B-high (AMH), apramycin (APR), arbekacin (ARB), astromicin (AST), bekanamycin (BEK), dibekacin (DKB), framycetin (FRM), gentamicin (GEN), gentamicin-high (GEH), habekacin (HAB), hygromycin (HYG), isepamicin (ISE), kanamycin (KAN), kanamycin-high (KAH), kanamycin/cephalexin (KAC), micronomicin (MCR), neomycin (NEO), netilmicin (NET), pentisomicin (PIM), plazomicin (PLZ), propikacin (PKA), ribostamycin (RST), sisomicin (SIS), streptoduocin (STR), streptomycin (STR1), streptomycin-high (STH), tobramycin (TOB) tobramycin-high (TOH) aminopenicillins() can select: amoxicillin (AMX) ampicillin (AMP) antifungals() can select: amphotericin B (AMB), anidulafungin (ANI), butoconazole (), caspofungin (CAS), ciclopirox (CIX), clotrimazole (CTR), econazole (ECO), fluconazole (FLU), flucytosine (FCT), fosfluconazole (FFL), griseofulvin (GRI), hachimycin (HCH), ibrexafungerp (IBX), isavuconazole (ISV), isoconazole (ISO), itraconazole (ITR), ketoconazole (KET), manogepix (MGX), micafungin (MIF), miconazole (MCZ), nystatin (NYS), oteseconazole (OTE), pimaricin (PMR), posaconazole (POS), rezafungin (RZF), ribociclib (RBC), sulconazole (SUC), terbinafine (TRB), terconazole (TRC) voriconazole (VOR) antimycobacterials() can select: 4-aminosalicylic acid (AMA), calcium aminosalicylate (CLA), capreomycin (CAP), clofazimine (CLF), delamanid (DLM), enviomycin (ENV), ethambutol (ETH), ethambutol/isoniazid (ETI), ethionamide (ETI1), isoniazid (INH), isoniazid/sulfamethoxazole/trimethoprim/pyridoxine (IST), morinamide (MRN), p-aminosalicylic acid (PAS), pretomanid (PMD), protionamide (PTH), pyrazinamide (PZA), rifabutin (RIB), rifampicin (RIF), rifampicin/ethambutol/isoniazid (REI), rifampicin/isoniazid (RFI), rifampicin/pyrazinamide/ethambutol/isoniazid (RPEI), rifampicin/pyrazinamide/isoniazid (RPI), rifamycin (RFM), rifapentine (RFP), simvastatin/fenofibrate (SMF), sodium aminosalicylate (SDA), streptomycin/isoniazid (STI), terizidone (TRZ), thioacetazone (TAT), thioacetazone/isoniazid (THI1), tiocarlide (TCR) viomycin (VIO) betalactams() can select: amoxicillin (AMX), amoxicillin/clavulanic acid (AMC), amoxicillin/sulbactam (AXS), ampicillin (AMP), ampicillin/sulbactam (SAM), apalcillin (APL), aspoxicillin (APX), avibactam (AVB), azidocillin (AZD), azlocillin (AZL), aztreonam (ATM), aztreonam/avibactam (AZA), aztreonam/nacubactam (ANC), bacampicillin (BAM), benzathine benzylpenicillin (BNB), benzathine phenoxymethylpenicillin (BNP), benzylpenicillin (PEN), biapenem (BIA), carbenicillin (CRB), carindacillin (CRN), cefacetrile (CAC), cefaclor (CEC), cefadroxil (CFR), cefalexin (LEX), cefaloridine (RID), cefalotin (CEP), cefamandole (MAN), cefapirin (HAP), cefatrizine (CTZ), cefazedone (CZD), cefazolin (CZO), cefcapene (CCP), cefcapene pivoxil (CCX), cefdinir (CDR), cefditoren (DIT), cefditoren pivoxil (DIX), cefepime (FEP), cefepime/clavulanic acid (CPC), cefepime/nacubactam (FNC), cefepime/tazobactam (FPT), cefetamet (CAT), cefetamet pivoxil (CPI), cefetecol (CCL), cefetrizole (CZL), cefixime (CFM), cefmenoxime (CMX), cefmetazole (CMZ), cefodizime (DIZ), cefonicid (CID), cefoperazone (CFP), cefoperazone/sulbactam (CSL), ceforanide (CND), cefoselis (CSE), cefotaxime (CTX), cefotaxime/clavulanic acid (CTC), cefotaxime/sulbactam (CTS), cefotetan (CTT), cefotiam (CTF), cefotiam hexetil (CHE), cefovecin (FOV), cefoxitin (FOX), cefoxitin screening (FOX1), cefozopran (ZOP), cefpimizole (CFZ), cefpiramide (CPM), cefpirome (CPO), cefpodoxime (CPD), cefpodoxime proxetil (CPX), cefpodoxime/clavulanic acid (CDC), cefprozil (CPR), cefquinome (CEQ), cefroxadine (CRD), cefsulodin (CFS), cefsumide (CSU), ceftaroline (CPT), ceftaroline/avibactam (CPA), ceftazidime (CAZ), ceftazidime/avibactam (CZA), ceftazidime/clavulanic acid (CCV), cefteram (CEM), cefteram pivoxil (CPL), ceftezole (CTL), ceftibuten (CTB), ceftiofur (TIO), ceftizoxime (CZX), ceftizoxime alapivoxil (CZP), ceftobiprole (BPR), ceftobiprole medocaril (CFM1), ceftolozane/tazobactam (CZT), ceftriaxone (CRO), ceftriaxone/beta-lactamase inhibitor (CEB), cefuroxime (CXM), cefuroxime axetil (CXA), cephradine (CED), ciclacillin (CIC), clometocillin (CLM), cloxacillin (CLO), dicloxacillin (DIC), doripenem (DOR), epicillin (EPC), ertapenem (ETP), flucloxacillin (FLC), hetacillin (HET), imipenem (IPM), imipenem/EDTA (IPE), imipenem/relebactam (IMR), latamoxef (LTM), lenampicillin (LEN), loracarbef (LOR), mecillinam (MEC), meropenem (MEM), meropenem/nacubactam (MNC), meropenem/vaborbactam (MEV), metampicillin (MTM), meticillin (MET), mezlocillin (MEZ), mezlocillin/sulbactam (MSU), nacubactam (NAC), nafcillin (NAF), oxacillin (OXA), panipenem (PAN), penamecillin (PNM), penicillin/novobiocin (PNO), penicillin/sulbactam (PSU), pheneticillin (PHE), phenoxymethylpenicillin (PHN), piperacillin (PIP), piperacillin/sulbactam (PIS), piperacillin/tazobactam (TZP), piridicillin (PRC), pivampicillin (PVM), pivmecillinam (PME), procaine benzylpenicillin (PRB), propicillin (PRP), razupenem (RZM), ritipenem (RIT), ritipenem acoxil (RIA), sarmoxicillin (SRX), sulbactam (SUL), sulbenicillin (SBC), sultamicillin (SLT6), talampicillin (TAL), tazobactam (TAZ), tebipenem (TBP), temocillin (TEM), ticarcillin (TIC) ticarcillin/clavulanic acid (TCC) carbapenems() can select: biapenem (BIA), doripenem (DOR), ertapenem (ETP), imipenem (IPM), imipenem/EDTA (IPE), imipenem/relebactam (IMR), meropenem (MEM), meropenem/nacubactam (MNC), meropenem/vaborbactam (MEV), panipenem (PAN), razupenem (RZM), ritipenem (RIT), ritipenem acoxil (RIA) tebipenem (TBP) cephalosporins() can select: cefacetrile (CAC), cefaclor (CEC), cefadroxil (CFR), cefalexin (LEX), cefaloridine (RID), cefalotin (CEP), cefamandole (MAN), cefapirin (HAP), cefatrizine (CTZ), cefazedone (CZD), cefazolin (CZO), cefcapene (CCP), cefcapene pivoxil (CCX), cefdinir (CDR), cefditoren (DIT), cefditoren pivoxil (DIX), cefepime (FEP), cefepime/clavulanic acid (CPC), cefepime/tazobactam (FPT), cefetamet (CAT), cefetamet pivoxil (CPI), cefetecol (CCL), cefetrizole (CZL), cefixime (CFM), cefmenoxime (CMX), cefmetazole (CMZ), cefodizime (DIZ), cefonicid (CID), cefoperazone (CFP), cefoperazone/sulbactam (CSL), ceforanide (CND), cefoselis (CSE), cefotaxime (CTX), cefotaxime/clavulanic acid (CTC), cefotaxime/sulbactam (CTS), cefotetan (CTT), cefotiam (CTF), cefotiam hexetil (CHE), cefovecin (FOV), cefoxitin (FOX), cefoxitin screening (FOX1), cefozopran (ZOP), cefpimizole (CFZ), cefpiramide (CPM), cefpirome (CPO), cefpodoxime (CPD), cefpodoxime proxetil (CPX), cefpodoxime/clavulanic acid (CDC), cefprozil (CPR), cefquinome (CEQ), cefroxadine (CRD), cefsulodin (CFS), cefsumide (CSU), ceftaroline (CPT), ceftaroline/avibactam (CPA), ceftazidime (CAZ), ceftazidime/avibactam (CZA), ceftazidime/clavulanic acid (CCV), cefteram (CEM), cefteram pivoxil (CPL), ceftezole (CTL), ceftibuten (CTB), ceftiofur (TIO), ceftizoxime (CZX), ceftizoxime alapivoxil (CZP), ceftobiprole (BPR), ceftobiprole medocaril (CFM1), ceftolozane/tazobactam (CZT), ceftriaxone (CRO), ceftriaxone/beta-lactamase inhibitor (CEB), cefuroxime (CXM), cefuroxime axetil (CXA), cephradine (CED), latamoxef (LTM) loracarbef (LOR) cephalosporins_1st() can select: cefacetrile (CAC), cefadroxil (CFR), cefalexin (LEX), cefaloridine (RID), cefalotin (CEP), cefapirin (HAP), cefatrizine (CTZ), cefazedone (CZD), cefazolin (CZO), cefroxadine (CRD), ceftezole (CTL) cephradine (CED) cephalosporins_2nd() can select: cefaclor (CEC), cefamandole (MAN), cefmetazole (CMZ), cefonicid (CID), ceforanide (CND), cefotetan (CTT), cefotiam (CTF), cefoxitin (FOX), cefoxitin screening (FOX1), cefprozil (CPR), cefuroxime (CXM), cefuroxime axetil (CXA) loracarbef (LOR) cephalosporins_3rd() can select: cefcapene (CCP), cefcapene pivoxil (CCX), cefdinir (CDR), cefditoren (DIT), cefditoren pivoxil (DIX), cefetamet (CAT), cefetamet pivoxil (CPI), cefixime (CFM), cefmenoxime (CMX), cefodizime (DIZ), cefoperazone (CFP), cefoperazone/sulbactam (CSL), cefotaxime (CTX), cefotaxime/clavulanic acid (CTC), cefotaxime/sulbactam (CTS), cefotiam hexetil (CHE), cefovecin (FOV), cefpimizole (CFZ), cefpiramide (CPM), cefpodoxime (CPD), cefpodoxime proxetil (CPX), cefpodoxime/clavulanic acid (CDC), cefsulodin (CFS), ceftazidime (CAZ), ceftazidime/avibactam (CZA), ceftazidime/clavulanic acid (CCV), cefteram (CEM), cefteram pivoxil (CPL), ceftibuten (CTB), ceftiofur (TIO), ceftizoxime (CZX), ceftizoxime alapivoxil (CZP), ceftriaxone (CRO), ceftriaxone/beta-lactamase inhibitor (CEB) latamoxef (LTM) cephalosporins_4th() can select: cefepime (FEP), cefepime/clavulanic acid (CPC), cefepime/tazobactam (FPT), cefetecol (CCL), cefoselis (CSE), cefozopran (ZOP), cefpirome (CPO) cefquinome (CEQ) cephalosporins_5th() can select: ceftaroline (CPT), ceftaroline/avibactam (CPA), ceftobiprole (BPR), ceftobiprole medocaril (CFM1) ceftolozane/tazobactam (CZT) fluoroquinolones() can select: besifloxacin (BES), ciprofloxacin (CIP), clinafloxacin (CLX), danofloxacin (DAN), delafloxacin (DFX), difloxacin (DIF), enoxacin (ENX), enrofloxacin (ENR), finafloxacin (FIN), fleroxacin (FLE), garenoxacin (GRN), gatifloxacin (GAT), gemifloxacin (GEM), grepafloxacin (GRX), lascufloxacin (LSC), levofloxacin (LVX), levonadifloxacin (LND), lomefloxacin (LOM), marbofloxacin (MAR), metioxate (MXT), miloxacin (MIL), moxifloxacin (MFX), nadifloxacin (NAD), nifuroquine (NIF), norfloxacin (), ofloxacin (OFX), orbifloxacin (ORB), pazufloxacin (PAZ), pefloxacin (PEF), pradofloxacin (PRA), premafloxacin (PRX), prulifloxacin (PRU), rufloxacin (RFL), sarafloxacin (SAR), sitafloxacin (SIT), sparfloxacin (SPX), temafloxacin (TMX), tilbroquinol (TBQ), tioxacin (TXC), tosufloxacin (TFX) trovafloxacin (TVA) glycopeptides() can select: avoparcin (AVO), dalbavancin (DAL), norvancomycin (NVA), oritavancin (ORI), ramoplanin (RAM), teicoplanin (TEC), teicoplanin-macromethod (TCM), telavancin (TLV), vancomycin (VAN) vancomycin-macromethod (VAM) lincosamides() can select: acetylmidecamycin (ACM), acetylspiramycin (ASP), clindamycin (CLI), gamithromycin (GAM), kitasamycin (KIT), lincomycin (LIN), meleumycin (MEL), nafithromycin (ZWK), pirlimycin (PRL), primycin (PRM), solithromycin (SOL), tildipirosin (TIP), tilmicosin (TIL), tulathromycin (TUL), tylosin (TYL) tylvalosin (TYL1) lipoglycopeptides() can select: dalbavancin (DAL), oritavancin (ORI) telavancin (TLV) macrolides() can select: acetylmidecamycin (ACM), acetylspiramycin (ASP), azithromycin (AZM), clarithromycin (CLR), dirithromycin (DIR), erythromycin (ERY), flurithromycin (FLR1), gamithromycin (GAM), josamycin (JOS), kitasamycin (KIT), meleumycin (MEL), midecamycin (MID), miocamycin (MCM), nafithromycin (ZWK), oleandomycin (OLE), pirlimycin (PRL), primycin (PRM), rokitamycin (ROK), roxithromycin (RXT), solithromycin (SOL), spiramycin (SPI), telithromycin (TLT), tildipirosin (TIP), tilmicosin (TIL), troleandomycin (TRL), tulathromycin (TUL), tylosin (TYL) tylvalosin (TYL1) oxazolidinones() can select: cadazolid (CDZ), cycloserine (CYC), linezolid (LNZ), tedizolid (TZD) thiacetazone (THA) penicillins() can select: amoxicillin (AMX), amoxicillin/clavulanic acid (AMC), amoxicillin/sulbactam (AXS), ampicillin (AMP), ampicillin/sulbactam (SAM), apalcillin (APL), aspoxicillin (APX), avibactam (AVB), azidocillin (AZD), azlocillin (AZL), aztreonam (ATM), aztreonam/avibactam (AZA), aztreonam/nacubactam (ANC), bacampicillin (BAM), benzathine benzylpenicillin (BNB), benzathine phenoxymethylpenicillin (BNP), benzylpenicillin (PEN), carbenicillin (CRB), carindacillin (CRN), cefepime/nacubactam (FNC), ciclacillin (CIC), clometocillin (CLM), cloxacillin (CLO), dicloxacillin (DIC), epicillin (EPC), flucloxacillin (FLC), hetacillin (HET), lenampicillin (LEN), mecillinam (MEC), metampicillin (MTM), meticillin (MET), mezlocillin (MEZ), mezlocillin/sulbactam (MSU), nacubactam (NAC), nafcillin (NAF), oxacillin (OXA), penamecillin (PNM), penicillin/novobiocin (PNO), penicillin/sulbactam (PSU), pheneticillin (PHE), phenoxymethylpenicillin (PHN), piperacillin (PIP), piperacillin/sulbactam (PIS), piperacillin/tazobactam (TZP), piridicillin (PRC), pivampicillin (PVM), pivmecillinam (PME), procaine benzylpenicillin (PRB), propicillin (PRP), sarmoxicillin (SRX), sulbactam (SUL), sulbenicillin (SBC), sultamicillin (SLT6), talampicillin (TAL), tazobactam (TAZ), temocillin (TEM), ticarcillin (TIC) ticarcillin/clavulanic acid (TCC) polymyxins() can select: colistin (COL), polymyxin B (PLB) polymyxin B/polysorbate 80 (POP) quinolones() can select: besifloxacin (BES), cinoxacin (CIN), ciprofloxacin (CIP), clinafloxacin (CLX), danofloxacin (DAN), delafloxacin (DFX), difloxacin (DIF), enoxacin (ENX), enrofloxacin (ENR), finafloxacin (FIN), fleroxacin (FLE), flumequine (FLM), garenoxacin (GRN), gatifloxacin (GAT), gemifloxacin (GEM), grepafloxacin (GRX), lascufloxacin (LSC), levofloxacin (LVX), levonadifloxacin (LND), lomefloxacin (LOM), marbofloxacin (MAR), metioxate (MXT), miloxacin (MIL), moxifloxacin (MFX), nadifloxacin (NAD), nalidixic acid (NAL), nemonoxacin (NEM), nifuroquine (NIF), nitroxoline (NTR), norfloxacin (), ofloxacin (OFX), orbifloxacin (ORB), oxolinic acid (OXO), pazufloxacin (PAZ), pefloxacin (PEF), pipemidic acid (PPA), piromidic acid (PIR), pradofloxacin (PRA), premafloxacin (PRX), prulifloxacin (PRU), rosoxacin (ROS), rufloxacin (RFL), sarafloxacin (SAR), sitafloxacin (SIT), sparfloxacin (SPX), temafloxacin (TMX), tilbroquinol (TBQ), tioxacin (TXC), tosufloxacin (TFX) trovafloxacin (TVA) streptogramins() can select: pristinamycin (PRI) quinupristin/dalfopristin (QDA) tetracyclines() can select: cetocycline (CTO), chlortetracycline (CTE), clomocycline (CLM1), demeclocycline (DEM), doxycycline (DOX), eravacycline (ERV), lymecycline (LYM), metacycline (MTC), minocycline (MNO), omadacycline (OMC), oxytetracycline (OXY), penimepicycline (PNM1), rolitetracycline (RLT), sarecycline (SRC), tetracycline (TCY) tigecycline (TGC) trimethoprims() can select: brodimoprim (BDP), sulfadiazine (SDI), sulfadiazine/tetroxoprim (SLT), sulfadiazine/trimethoprim (SLT1), sulfadimethoxine (SUD), sulfadimidine (SDM), sulfadimidine/trimethoprim (SLT2), sulfafurazole (SLF), sulfaisodimidine (SLF1), sulfalene (SLF2), sulfamazone (SZO), sulfamerazine (SLF3), sulfamerazine/trimethoprim (SLT3), sulfamethizole (SLF4), sulfamethoxazole (SMX), sulfamethoxypyridazine (SLF5), sulfametomidine (SLF6), sulfametoxydiazine (SLF7), sulfametrole/trimethoprim (SLT4), sulfamoxole (SLF8), sulfamoxole/trimethoprim (SLT5), sulfanilamide (SLF9), sulfaperin (SLF10), sulfaphenazole (SLF11), sulfapyridine (SLF12), sulfathiazole (SUT), sulfathiourea (SLF13), trimethoprim (TMP) trimethoprim/sulfamethoxazole (SXT) ureidopenicillins() can select: azlocillin (AZL), mezlocillin (MEZ), piperacillin (PIP) piperacillin/tazobactam (TZP)","code":""},{"path":"https://msberends.github.io/AMR/reference/antibiotic_class_selectors.html","id":"reference-data-publicly-available","dir":"Reference","previous_headings":"","what":"Reference Data Publicly Available","title":"Antibiotic Selectors — antibiotic_class_selectors","text":"data sets AMR package (microorganisms, antibiotics, R/SI interpretation, EUCAST rules, etc.) publicly freely available download following formats: R, MS Excel, Apache Feather, Apache Parquet, SPSS, SAS, Stata. also provide tab-separated plain text files machine-readable suitable input software program, laboratory information systems. Please visit website download links. actual files course available GitHub repository.","code":""},{"path":"https://msberends.github.io/AMR/reference/antibiotic_class_selectors.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Antibiotic Selectors — antibiotic_class_selectors","text":"","code":"# `example_isolates` is a data set available in the AMR package. # See ?example_isolates. example_isolates #> # A tibble: 2,000 × 46 #> date patient age gender ward mo PEN OXA FLC AMX #> #> 1 2002-01-02 A77334 65 F Clinical B_ESCHR_COLI R NA NA NA #> 2 2002-01-03 A77334 65 F Clinical B_ESCHR_COLI R NA NA NA #> 3 2002-01-07 067927 45 F ICU B_STPHY_EPDR R NA R NA #> 4 2002-01-07 067927 45 F ICU B_STPHY_EPDR R NA R NA #> 5 2002-01-13 067927 45 F ICU B_STPHY_EPDR R NA R NA #> 6 2002-01-13 067927 45 F ICU B_STPHY_EPDR R NA R NA #> 7 2002-01-14 462729 78 M Clinical B_STPHY_AURS R NA S R #> 8 2002-01-14 462729 78 M Clinical B_STPHY_AURS R NA S R #> 9 2002-01-16 067927 45 F ICU B_STPHY_EPDR R NA R NA #> 10 2002-01-17 858515 79 F ICU B_STPHY_EPDR R NA S NA #> # … with 1,990 more rows, and 36 more variables: AMC , AMP , #> # TZP , CZO , FEP , CXM , FOX , CTX , #> # CAZ , CRO , GEN , TOB , AMK , KAN , #> # TMP , SXT , NIT , FOS , LNZ , CIP , #> # MFX , VAN , TEC , TCY , TGC , DOX , #> # ERY , CLI , AZM , IPM , MEM , MTR , #> # CHL , COL , MUP , RIF # base R ------------------------------------------------------------------ # select columns 'IPM' (imipenem) and 'MEM' (meropenem) example_isolates[, carbapenems()] #> ℹ For carbapenems() using columns 'IPM' (imipenem) and 'MEM' (meropenem) #> # A tibble: 2,000 × 2 #> IPM MEM #> #> 1 NA NA #> 2 NA NA #> 3 NA NA #> 4 NA NA #> 5 NA NA #> 6 NA NA #> 7 NA NA #> 8 NA NA #> 9 NA NA #> 10 NA NA #> # … with 1,990 more rows # select columns 'mo', 'AMK', 'GEN', 'KAN' and 'TOB' example_isolates[, c(\"mo\", aminoglycosides())] #> ℹ For aminoglycosides() using columns 'GEN' (gentamicin), 'TOB' #> (tobramycin), 'AMK' (amikacin) and 'KAN' (kanamycin) #> # A tibble: 2,000 × 5 #> mo GEN TOB AMK KAN #> #> 1 B_ESCHR_COLI NA NA NA NA #> 2 B_ESCHR_COLI NA NA NA NA #> 3 B_STPHY_EPDR NA NA NA NA #> 4 B_STPHY_EPDR NA NA NA NA #> 5 B_STPHY_EPDR NA NA NA NA #> 6 B_STPHY_EPDR NA NA NA NA #> 7 B_STPHY_AURS NA S NA NA #> 8 B_STPHY_AURS NA S NA NA #> 9 B_STPHY_EPDR NA NA NA NA #> 10 B_STPHY_EPDR NA NA NA NA #> # … with 1,990 more rows # select only antibiotic columns with DDDs for oral treatment example_isolates[, administrable_per_os()] #> ℹ For administrable_per_os() using columns 'OXA' (oxacillin), 'FLC' #> (flucloxacillin), 'AMX' (amoxicillin), 'AMC' (amoxicillin/clavulanic acid), #> 'AMP' (ampicillin), 'CXM' (cefuroxime), 'KAN' (kanamycin), 'TMP' #> (trimethoprim), 'NIT' (nitrofurantoin), 'FOS' (fosfomycin), 'LNZ' #> (linezolid), 'CIP' (ciprofloxacin), 'MFX' (moxifloxacin), 'VAN' #> (vancomycin), 'TCY' (tetracycline), 'DOX' (doxycycline), 'ERY' #> (erythromycin), 'CLI' (clindamycin), 'AZM' (azithromycin), 'MTR' #> (metronidazole), 'CHL' (chloramphenicol), 'COL' (colistin) and 'RIF' #> (rifampicin) #> # A tibble: 2,000 × 23 #> OXA FLC AMX AMC AMP CXM KAN TMP NIT FOS LNZ CIP MFX #> #> 1 NA NA NA I NA I NA R NA NA R NA NA #> 2 NA NA NA I NA I NA R NA NA R NA NA #> 3 NA R NA NA NA R NA S NA NA NA NA NA #> 4 NA R NA NA NA R NA S NA NA NA NA NA #> 5 NA R NA NA NA R NA R NA NA NA NA NA #> 6 NA R NA NA NA R NA R NA NA NA NA NA #> 7 NA S R S R S NA R NA NA NA NA NA #> 8 NA S R S R S NA R NA NA NA NA NA #> 9 NA R NA NA NA R NA S NA NA NA S NA #> 10 NA S NA NA NA S NA S NA NA NA S NA #> # … with 1,990 more rows, and 10 more variables: VAN , TCY , #> # DOX , ERY , CLI , AZM , MTR , CHL , #> # COL , RIF # filter using any() or all() example_isolates[any(carbapenems() == \"R\"), ] #> ℹ For carbapenems() using columns 'IPM' (imipenem) and 'MEM' (meropenem) #> # A tibble: 55 × 46 #> date patient age gender ward mo PEN OXA FLC AMX #> #> 1 2004-06-09 529296 69 M ICU B_ENTRC_FACM NA NA NA NA #> 2 2004-06-09 529296 69 M ICU B_ENTRC_FACM NA NA NA NA #> 3 2004-11-03 D65308 80 F ICU B_STNTR_MLTP R NA NA R #> 4 2005-04-21 452212 82 F ICU B_ENTRC NA NA NA NA #> 5 2005-04-22 452212 82 F ICU B_ENTRC NA NA NA NA #> 6 2005-04-22 452212 82 F ICU B_ENTRC_FACM NA NA NA NA #> 7 2007-02-21 8BBC46 61 F Clinical B_ENTRC_FACM NA NA NA NA #> 8 2007-12-15 401043 72 M Clinical B_ENTRC_FACM NA NA NA NA #> 9 2008-01-22 1710B8 82 M Clinical B_PROTS_MRBL R NA NA NA #> 10 2008-01-22 1710B8 82 M Clinical B_PROTS_MRBL R NA NA NA #> # … with 45 more rows, and 36 more variables: AMC , AMP , TZP , #> # CZO , FEP , CXM , FOX , CTX , CAZ , #> # CRO , GEN , TOB , AMK , KAN , TMP , #> # SXT , NIT , FOS , LNZ , CIP , MFX , #> # VAN , TEC , TCY , TGC , DOX , ERY , #> # CLI , AZM , IPM , MEM