2020-08-14 13:36:10 +02:00
|
|
|
# ==================================================================== #
|
2023-06-26 13:52:02 +02:00
|
|
|
# TITLE: #
|
2022-10-05 09:12:22 +02:00
|
|
|
# AMR: An R Package for Working with Antimicrobial Resistance Data #
|
2020-08-14 13:36:10 +02:00
|
|
|
# #
|
2023-06-26 13:52:02 +02:00
|
|
|
# SOURCE CODE: #
|
2020-08-14 13:36:10 +02:00
|
|
|
# https://github.com/msberends/AMR #
|
|
|
|
# #
|
2023-06-26 13:52:02 +02:00
|
|
|
# PLEASE CITE THIS SOFTWARE AS: #
|
2024-07-16 14:51:57 +02:00
|
|
|
# Berends MS, Luz CF, Friedrich AW, et al. (2022). #
|
|
|
|
# AMR: An R Package for Working with Antimicrobial Resistance Data. #
|
|
|
|
# Journal of Statistical Software, 104(3), 1-31. #
|
2023-05-27 10:39:22 +02:00
|
|
|
# https://doi.org/10.18637/jss.v104.i03 #
|
2022-10-05 09:12:22 +02:00
|
|
|
# #
|
2022-12-27 15:16:15 +01:00
|
|
|
# Developed at the University of Groningen and the University Medical #
|
|
|
|
# Center Groningen in The Netherlands, in collaboration with many #
|
|
|
|
# colleagues from around the world, see our website. #
|
2020-08-14 13:36:10 +02:00
|
|
|
# #
|
|
|
|
# This R package is free software; you can freely use and distribute #
|
|
|
|
# it for both personal and commercial purposes under the terms of the #
|
|
|
|
# GNU General Public License version 2.0 (GNU GPL-2), as published by #
|
|
|
|
# the Free Software Foundation. #
|
|
|
|
# We created this package for both routine data analysis and academic #
|
|
|
|
# research and it was publicly released in the hope that it will be #
|
|
|
|
# useful, but it comes WITHOUT ANY WARRANTY OR LIABILITY. #
|
2020-10-08 11:16:03 +02:00
|
|
|
# #
|
|
|
|
# Visit our website for the full manual and a complete tutorial about #
|
2021-02-02 23:57:35 +01:00
|
|
|
# how to conduct AMR data analysis: https://msberends.github.io/AMR/ #
|
2020-08-14 13:36:10 +02:00
|
|
|
# ==================================================================== #
|
|
|
|
|
|
|
|
library(AMR)
|
2021-01-03 23:40:05 +01:00
|
|
|
library(dplyr)
|
2021-12-14 21:47:14 +01:00
|
|
|
int_resis <- data.frame(mo = microorganisms$mo, stringsAsFactors = FALSE)
|
2020-08-14 13:36:10 +02:00
|
|
|
for (i in seq_len(nrow(antibiotics))) {
|
2023-01-21 23:47:20 +01:00
|
|
|
int_resis$new <- as.sir("S")
|
2021-12-14 21:47:14 +01:00
|
|
|
colnames(int_resis)[ncol(int_resis)] <- antibiotics$ab[i]
|
2020-08-14 13:36:10 +02:00
|
|
|
}
|
|
|
|
|
2021-12-14 21:47:14 +01:00
|
|
|
int_resis <- eucast_rules(int_resis,
|
2022-08-28 10:31:50 +02:00
|
|
|
eucast_rules_df = subset(
|
|
|
|
AMR:::EUCAST_RULES_DF,
|
|
|
|
is.na(have_these_values) & reference.version == 3.3
|
|
|
|
),
|
|
|
|
info = FALSE
|
|
|
|
)
|
2020-08-14 13:36:10 +02:00
|
|
|
|
2023-01-21 23:47:20 +01:00
|
|
|
int_resis2 <- int_resis[, sapply(int_resis, function(x) any(!is.sir(x) | x == "R")), drop = FALSE] %>%
|
2021-12-14 21:47:14 +01:00
|
|
|
tidyr::pivot_longer(-mo) %>%
|
2022-08-28 10:31:50 +02:00
|
|
|
filter(value == "R") %>%
|
2021-12-14 21:47:14 +01:00
|
|
|
select(mo, ab = name)
|
2020-08-14 13:36:10 +02:00
|
|
|
|
2021-12-11 13:41:31 +01:00
|
|
|
# remove lab drugs
|
2021-12-14 21:47:14 +01:00
|
|
|
untreatable <- antibiotics[which(antibiotics$name %like% "-high|EDTA|polysorbate|macromethod|screening|/nacubactam"), "ab", drop = TRUE]
|
2022-12-12 00:14:56 +01:00
|
|
|
# takes ages with filter()..., weird
|
|
|
|
int_resis3 <- int_resis2[which(!int_resis2$ab %in% untreatable), ]
|
|
|
|
class(int_resis3$ab) <- c("ab", "character")
|
|
|
|
int_resis3
|
2020-08-14 13:36:10 +02:00
|
|
|
|
2022-12-12 00:14:56 +01:00
|
|
|
all(int_resis3$mo %in% microorganisms$mo)
|
|
|
|
all(int_resis3$ab %in% antibiotics$ab)
|
|
|
|
|
|
|
|
intrinsic_resistant <- df_remove_nonASCII(int_resis3)
|
2020-09-24 00:30:11 +02:00
|
|
|
usethis::use_data(intrinsic_resistant, internal = FALSE, overwrite = TRUE, version = 2, compress = "xz")
|
2020-08-14 13:36:10 +02:00
|
|
|
rm(intrinsic_resistant)
|
2021-01-03 23:40:05 +01:00
|
|
|
|
|
|
|
# AFTER THIS:
|
2022-12-12 00:14:56 +01:00
|
|
|
# DO NOT FORGET TO UPDATE THE VERSION NUMBER IN mo_is_intrinsic_resistant() AND R/data.R
|