AMR/data-raw/reproduction_of_intrinsic_r...

67 lines
3.2 KiB
R
Raw Normal View History

# ==================================================================== #
# TITLE #
2022-10-05 09:12:22 +02:00
# AMR: An R Package for Working with Antimicrobial Resistance Data #
# #
# SOURCE #
# https://github.com/msberends/AMR #
# #
2022-10-05 09:12:22 +02:00
# CITE AS #
# Berends MS, Luz CF, Friedrich AW, Sinha BNM, Albers CJ, Glasner C #
# (2022). AMR: An R Package for Working with Antimicrobial Resistance #
# Data. Journal of Statistical Software, 104(3), 1-31. #
# doi:10.18637/jss.v104.i03 #
# #
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. #
# #
# 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 #
# how to conduct AMR data analysis: https://msberends.github.io/AMR/ #
# ==================================================================== #
library(AMR)
library(dplyr)
2021-12-14 21:47:14 +01:00
int_resis <- data.frame(mo = microorganisms$mo, stringsAsFactors = FALSE)
for (i in seq_len(nrow(antibiotics))) {
int_resis$new <- as.rsi("S")
2021-12-14 21:47:14 +01:00
colnames(int_resis)[ncol(int_resis)] <- antibiotics$ab[i]
}
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
)
2022-08-28 10:31:50 +02:00
int_resis2 <- int_resis[, sapply(int_resis, function(x) any(!is.rsi(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)
# 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
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")
rm(intrinsic_resistant)
# 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