From 1d423cca8962b2b924e2d8214f37beb00d77f837 Mon Sep 17 00:00:00 2001 From: "Matthijs S. Berends" Date: Sun, 11 Aug 2019 19:07:26 +0200 Subject: [PATCH] (v0.7.1.9035) cephalosporins and unit tests --- DESCRIPTION | 4 +- NEWS.md | 12 +- R/ab.R | 2 +- R/deprecated.R | 3 +- R/eucast_rules.R | 2 +- R/get_locale.R | 18 +- R/like.R | 2 +- R/misc.R | 42 --- R/mo.R | 5 +- R/mo_property.R | 6 +- R/rsi.R | 8 +- R/sysdata.rda | Bin 7412 -> 7464 bytes data-raw/reproduction_of_antibiotics.R | 40 ++ data-raw/translations.tsv | 2 + data/antibiotics.rda | Bin 34911 -> 34924 bytes docs/LICENSE-text.html | 2 +- docs/articles/benchmarks.html | 112 +++--- .../figure-html/unnamed-chunk-5-1.png | Bin 84669 -> 84171 bytes docs/articles/index.html | 2 +- docs/authors.html | 2 +- docs/index.html | 4 +- docs/news/index.html | 348 +++++++++--------- docs/reference/as.rsi.html | 8 +- docs/reference/catalogue_of_life.html | 2 +- docs/reference/ggplot_rsi.html | 2 +- docs/reference/index.html | 2 +- docs/reference/like.html | 4 +- docs/reference/microorganisms.codes.html | 2 +- docs/reference/microorganisms.html | 2 +- docs/reference/microorganisms.old.html | 2 +- docs/reference/translate.html | 21 +- index.md | 2 +- man/as.rsi.Rd | 6 +- man/like.Rd | 2 +- man/translate.Rd | 18 +- tests/testthat/test-misc.R | 4 - tests/testthat/test-mo.R | 14 +- vignettes/benchmarks.Rmd | 36 +- 38 files changed, 382 insertions(+), 361 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 2c786620..5cf924b4 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: AMR -Version: 0.7.1.9034 -Date: 2019-08-09 +Version: 0.7.1.9035 +Date: 2019-08-11 Title: Antimicrobial Resistance Analysis Authors@R: c( person(role = c("aut", "cre"), diff --git a/NEWS.md b/NEWS.md index 53104f81..59a8373a 100755 --- a/NEWS.md +++ b/NEWS.md @@ -1,8 +1,12 @@ -# AMR 0.7.1.9034 +# AMR 0.7.1.9035 ### Breaking * Function `freq()` has moved to a new package, [`clean`](https://github.com/msberends/clean) ([CRAN link](https://cran.r-project.org/package=clean)). Creating frequency tables is actually not the scope of this package (never was) and this function has matured a lot over the last two years. Therefore, a new package was created for data cleaning and checking and it perfectly fits the `freq()` function. The [`clean`](https://github.com/msberends/clean) package is available on CRAN and will be installed automatically when updating the `AMR` package, that now imports it. In a later stage, the `skewness()` and `kurtosis()` functions will be moved to the `clean` package too. -* Determination of first isolates now **excludes** all 'unknown' microorganisms at default, i.e. microbial code `"UNKNOWN"`. They can be included with the new parameter `include_unknown`: `first_isolates(..., include_unknown = TRUE)`. For WHONET users, this means that all records with organism code `"con"` (*contamination*) will be excluded at default, since `as.mo("con") = "UNKNOWN"`. +* Determination of first isolates now **excludes** all 'unknown' microorganisms at default, i.e. microbial code `"UNKNOWN"`. They can be included with the new parameter `include_unknown`: + ```r + first_isolate(..., include_unknown = TRUE) + ``` + For WHONET users, this means that all records with organism code `"con"` (*contamination*) will be excluded at default, since `as.mo("con") = "UNKNOWN"`. The function always shows a note with the number of 'unknown' microorganisms that were included or excluded. ### New * Additional way to calculate co-resistance, i.e. when using multiple antibiotics as input for `portion_*` functions or `count_*` functions. This can be used to determine the empiric susceptibily of a combination therapy. A new parameter `only_all_tested` (**which defaults to `FALSE`**) replaces the old `also_single_tested` and can be used to select one of the two methods to count isolates and calculate portions. The difference can be seen in this example table (which is also on the `portion` and `count` help pages), where the %SI is being determined: @@ -44,7 +48,7 @@ * Using factors as input now adds missing factors levels when the function changes antibiotic results * Added tibble printing support for classes `rsi`, `mic`, `ab` and `mo`. When using tibbles containing antibiotic columns, values `S` will print in green, values `I` will print in yellow and values `R` will print in red: ```r - (run this on your own console, as this page does not support colour printing) + # (run this on your own console, as this page does not support colour printing) tibble(mo = sample(AMR::microorganisms$fullname, 10), drug1 = as.rsi(sample(c("S", "I", "R"), 10, replace = TRUE, prob = c(0.6, 0.1, 0.3))), @@ -65,7 +69,7 @@ * Fix for using `mo_*` functions where the coercion uncertainties and failures would not be available through `mo_uncertainties()` and `mo_failures()` anymore * Deprecated the `country` parameter of `mdro()` in favour of the already existing `guideline` parameter to support multiple guidelines within one country * The `name` of `RIF` is now Rifampicin instead of Rifampin -* The `antibiotics` data set is now sorted by name +* The `antibiotics` data set is now sorted by name and all cephalosporines now have their generation between brackets * Speed improvement for `guess_ab_col()` which is now 30 times faster for antibiotic abbreviations #### Other diff --git a/R/ab.R b/R/ab.R index 19936a30..3fbc5929 100755 --- a/R/ab.R +++ b/R/ab.R @@ -233,7 +233,7 @@ as.ab <- function(x) { } if (length(x_unknown) > 0) { - warning("These values could not be coerced to a valid antibiotic ID: ", + warning("These values could not be coerced to a valid antimicrobial ID: ", paste('"', sort(unique(x_unknown)), '"', sep = "", collapse = ', '), ".", call. = FALSE) diff --git a/R/deprecated.R b/R/deprecated.R index 1096aede..7f75e9e5 100755 --- a/R/deprecated.R +++ b/R/deprecated.R @@ -29,6 +29,5 @@ #' @rdname AMR-deprecated as.atc <- function(x) { .Deprecated("ab_atc", package = "AMR") - ab_atc(x) + AMR::ab_atc(x) } - diff --git a/R/eucast_rules.R b/R/eucast_rules.R index ac553d3d..13b3283d 100755 --- a/R/eucast_rules.R +++ b/R/eucast_rules.R @@ -669,7 +669,7 @@ eucast_rules <- function(x, suppressWarnings( all_staph <- AMR::microorganisms %>% filter(genus == "Staphylococcus") %>% - mutate(CNS_CPS = mo_fullname(mo, Becker = "all")) + mutate(CNS_CPS = mo_name(mo, Becker = "all")) ) if (eucast_rules_df[i, 3] %like% "coagulase-") { eucast_rules_df[i, 3] <- paste0("^(", diff --git a/R/get_locale.R b/R/get_locale.R index b5316b24..a7248214 100755 --- a/R/get_locale.R +++ b/R/get_locale.R @@ -21,14 +21,16 @@ #' Translate strings from AMR package #' -#' For language-dependent output of AMR functions, like \code{\link{mo_fullname}} and \code{\link{mo_type}}. +#' For language-dependent output of AMR functions, like \code{\link{mo_name}}, \code{\link{mo_type}} and \code{\link{ab_name}}. #' @details Strings will be translated to foreign languages if they are defined in a local translation file. Additions to this file can be suggested at our repository. The file can be found here: \url{https://gitlab.com/msberends/AMR/blob/master/data-raw/translations.tsv}. #' +#' Currently supported languages can be found if running: \code{unique(AMR:::translations_file$lang)}. +#' #' Please suggest your own translations \href{https://gitlab.com/msberends/AMR/issues/new?issue[title]=Translation\%20suggestion}{by creating a new issue on our repository}. #' #' This file will be read by all functions where a translated output can be desired, like all \code{\link{mo_property}} functions (\code{\link{mo_fullname}}, \code{\link{mo_type}}, etc.). #' -#' The system language will be used at default, if supported, using \code{\link{get_locale}}. The system language can be overwritten with \code{\link{getOption}("AMR_locale")}. +#' The system language will be used at default, if that language is supported. The system language can be overwritten with \code{\link{getOption}("AMR_locale")}. #' @inheritSection AMR Read more on our website! #' @rdname translate #' @name translate @@ -39,27 +41,27 @@ #' # with get_locale() #' #' # English -#' mo_fullname("CoNS", language = "en") +#' mo_name("CoNS", language = "en") #' #> "Coagulase-negative Staphylococcus (CoNS)" #' #' # German -#' mo_fullname("CoNS", language = "de") +#' mo_name("CoNS", language = "de") #' #> "Koagulase-negative Staphylococcus (KNS)" #' #' # Dutch -#' mo_fullname("CoNS", language = "nl") +#' mo_name("CoNS", language = "nl") #' #> "Coagulase-negatieve Staphylococcus (CNS)" #' #' # Spanish -#' mo_fullname("CoNS", language = "es") +#' mo_name("CoNS", language = "es") #' #> "Staphylococcus coagulasa negativo (SCN)" #' #' # Italian -#' mo_fullname("CoNS", language = "it") +#' mo_name("CoNS", language = "it") #' #> "Staphylococcus negativo coagulasi (CoNS)" #' #' # Portuguese -#' mo_fullname("CoNS", language = "pt") +#' mo_name("CoNS", language = "pt") #' #> "Staphylococcus coagulase negativo (CoNS)" get_locale <- function() { if (getOption("AMR_locale", "en") != "en") { diff --git a/R/like.R b/R/like.R index b7d6c158..2ab07bdc 100755 --- a/R/like.R +++ b/R/like.R @@ -28,7 +28,7 @@ #' @rdname like #' @export #' @details Using RStudio? This function can also be inserted from the Addins menu and can have its own Keyboard Shortcut like Ctrl+Shift+L or Cmd+Shift+L (see Tools > Modify Keyboard Shortcuts...). -#' @source Idea from the \href{https://github.com/Rdatatable/data.table/blob/master/R/like.R}{\code{like} function from the \code{data.table} package}, but made it case insensitive at default and let it support multiple patterns. +#' @source Idea from the \href{https://github.com/Rdatatable/data.table/blob/master/R/like.R}{\code{like} function from the \code{data.table} package}, but made it case insensitive at default and let it support multiple patterns. Also, if the regex fails the first time, it tries again with \code{perl = TRUE}. #' @seealso \code{\link[base]{grep}} #' @inheritSection AMR Read more on our website! #' @examples diff --git a/R/misc.R b/R/misc.R index 7040eb00..d9fca3bc 100755 --- a/R/misc.R +++ b/R/misc.R @@ -29,48 +29,6 @@ addin_insert_like <- function() { rstudioapi::insertText(" %like% ") } -# No export, no Rd -# works exactly like round(), but rounds `round(44.55, 1)` as 44.6 instead of 44.5 -# and adds decimal zeroes until `digits` is reached when force_zero = TRUE -round2 <- function(x, digits = 0, force_zero = TRUE) { - # https://stackoverflow.com/a/12688836/4575331 - val <- (trunc((abs(x) * 10 ^ digits) + 0.5) / 10 ^ digits) * sign(x) - if (digits > 0 & force_zero == TRUE) { - val[val != as.integer(val)] <- paste0(val[val != as.integer(val)], - strrep("0", max(0, digits - nchar(gsub(".*[.](.*)$", "\\1", val[val != as.integer(val)]))))) - } - val -} - -# Coefficient of variation (CV) -cv <- function(x, na.rm = TRUE) { - stats::sd(x, na.rm = na.rm) / base::abs(base::mean(x, na.rm = na.rm)) -} - -# Coefficient of dispersion, or coefficient of quartile variation (CQV). -# (Bonett et al., 2006: Confidence interval for a coefficient of quartile variation). -cqv <- function(x, na.rm = TRUE) { - fives <- stats::fivenum(x, na.rm = na.rm) - (fives[4] - fives[2]) / (fives[4] + fives[2]) -} - -# show bytes as kB/MB/GB -# size_humanreadable(123456) # 121 kB -# size_humanreadable(12345678) # 11.8 MB -size_humanreadable <- function(bytes, decimals = 1) { - bytes <- bytes %>% as.double() - # Adapted from: - # http://jeffreysambells.com/2012/10/25/human-readable-filesize-php - size <- c('B','kB','MB','GB','TB','PB','EB','ZB','YB') - factor <- floor((nchar(bytes) - 1) / 3) - # added slight improvement; no decimals for B and kB: - decimals <- rep(decimals, length(bytes)) - decimals[size[factor + 1] %in% c('B', 'kB')] <- 0 - - out <- paste(sprintf(paste0("%.", decimals, "f"), bytes / (1024 ^ factor)), size[factor + 1]) - out -} - percent_clean <- clean:::percent # No export, no Rd percent <- function(x, round = 1, force_zero = FALSE, decimal.mark = getOption("OutDec"), big.mark = ",", ...) { diff --git a/R/mo.R b/R/mo.R index 2f9f7405..ed3307f0 100755 --- a/R/mo.R +++ b/R/mo.R @@ -477,7 +477,8 @@ exec_as.mo <- function(x, # translate to English for supported languages of mo_property x <- gsub("(gruppe|groep|grupo|gruppo|groupe)", "group", x, ignore.case = TRUE) x <- gsub("(hefe|gist|gisten|levadura|lievito|fermento|levure)[a-z]*", "yeast", x, ignore.case = TRUE) - x <- gsub("(schimmels?|mofo|molde|stampo|moisissure)[a-z]*", "fungus", x, ignore.case = TRUE) + x <- gsub("(schimmels?|mofo|molde|stampo|moisissure|fungi)[a-z]*", "fungus", x, ignore.case = TRUE) + x <- gsub("Fungus[ph|f]rya", "Fungiphrya", x, ignore.case = TRUE) # remove non-text in case of "E. coli" except dots and spaces x <- gsub("[^.a-zA-Z0-9/ \\-]+", "", x) # replace minus by a space @@ -1216,7 +1217,7 @@ exec_as.mo <- function(x, } return(found[1L]) } - if (b.x_trimmed %like% "fungus") { + if (b.x_trimmed %like% "(fungus|fungi)" & !b.x_trimmed %like% "Fungiphrya") { found <- "F_FUNGUS" found_result <- found found <- microorganismsDT[mo == found, ..property][[1]] diff --git a/R/mo_property.R b/R/mo_property.R index 0ef59ed4..bd3e1d27 100755 --- a/R/mo_property.R +++ b/R/mo_property.R @@ -318,7 +318,7 @@ mo_synonyms <- function(x, ...) { } }) if (length(syns) > 1) { - names(syns) <- mo_fullname(x) + names(syns) <- mo_name(x) result <- syns } else { result <- unlist(syns) @@ -340,7 +340,7 @@ mo_info <- function(x, language = get_locale(), ...) { url = unname(mo_url(y, open = FALSE)), ref = mo_ref(y)))) if (length(info) > 1) { - names(info) <- mo_fullname(x) + names(info) <- mo_name(x) result <- info } else { result <- info[[1L]] @@ -368,7 +368,7 @@ mo_url <- function(x, open = FALSE, ...) { NA_character_)) u <- df$url - names(u) <- AMR::mo_fullname(mo) + names(u) <- AMR::mo_name(mo) if (open == TRUE) { if (length(u) > 1) { warning("only the first URL will be opened, as `browseURL()` only suports one string.") diff --git a/R/rsi.R b/R/rsi.R index b772db61..0274ee29 100755 --- a/R/rsi.R +++ b/R/rsi.R @@ -25,14 +25,14 @@ #' @rdname as.rsi #' @param x vector of values (for class \code{mic}: an MIC value in mg/L, for class \code{disk}: a disk diffusion radius in millimeters) #' @param mo a microorganism code, generated with \code{\link{as.mo}} -#' @param ab an antibiotic code, generated with \code{\link{as.ab}} +#' @param ab an antimicrobial code, generated with \code{\link{as.ab}} #' @inheritParams first_isolate #' @param guideline defaults to the latest included EUCAST guideline, run \code{unique(AMR::rsi_translation$guideline)} for all options -#' @param threshold maximum fraction of \code{x} that is allowed to fail transformation, see Examples +#' @param threshold maximum fraction of invalid antimicrobial interpretations of \code{x}, see Examples #' @param ... parameters passed on to methods #' @details Run \code{unique(AMR::rsi_translation$guideline)} for a list of all supported guidelines. #' -#' After using \code{as.rsi}, you can use \code{\link{eucast_rules}} to (1) apply inferred susceptibility and resistance based on results of other antibiotics and (2) apply intrinsic resistance based on taxonomic properties of a microorganism. +#' After using \code{as.rsi}, you can use \code{\link{eucast_rules}} to (1) apply inferred susceptibility and resistance based on results of other antimicrobials and (2) apply intrinsic resistance based on taxonomic properties of a microorganism. #' #' The function \code{is.rsi.eligible} returns \code{TRUE} when a columns contains at most 5\% invalid antimicrobial interpretations (not S and/or I and/or R), and \code{FALSE} otherwise. The threshold of 5\% can be set with the \code{threshold} parameter. #' @section Interpretation of S, I and R: @@ -265,7 +265,7 @@ as.rsi.data.frame <- function(x, col_mo = NULL, guideline = "EUCAST", ...) { ab_cols <- colnames(x)[sapply(x, function(y) is.mic(y) | is.disk(y))] if (length(ab_cols) == 0) { - stop("No columns with MIC values or disk zones found in this data set. Use as.mic or as.disk to transform antibiotic columns.", call. = FALSE) + stop("No columns with MIC values or disk zones found in this data set. Use as.mic or as.disk to transform antimicrobial columns.", call. = FALSE) } # try to find columns based on type diff --git a/R/sysdata.rda b/R/sysdata.rda index 5c44c6ce74740e6ad1a74872c776a2b7e144510f..186c9e9c9c4e123789b788a3d7c4f2644923e14e 100644 GIT binary patch literal 7464 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 literal 7412 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 arrange(name) +# set cephalosporins groups for the ones that could not be determined automatically: +antibiotics <- antibiotics %>% + mutate(group = case_when( + name == "Cefcapene" ~ "Cephalosporins (3rd gen.)", + name == "Cefcapene pivoxil" ~ "Cephalosporins (3rd gen.)", + name == "Cefditoren pivoxil" ~ "Cephalosporins (3rd gen.)", + name == "Cefepime/clavulanic acid" ~ "Cephalosporins (4th gen.)", + name == "Cefepime/tazobactam" ~ "Cephalosporins (4th gen.)", + name == "Cefetamet pivoxil" ~ "Cephalosporins (3rd gen.)", + name == "Cefetecol (Cefcatacol)" ~ "Cephalosporins (4th gen.)", + name == "Cefetrizole" ~ "Cephalosporins (unclassified gen.)", + name == "Cefoselis" ~ "Cephalosporins (4th gen.)", + name == "Cefotaxime/clavulanic acid" ~ "Cephalosporins (3rd gen.)", + name == "Cefotaxime/sulbactam" ~ "Cephalosporins (3rd gen.)", + name == "Cefotiam hexetil" ~ "Cephalosporins (3rd gen.)", + name == "Cefovecin" ~ "Cephalosporins (3rd gen.)", + name == "Cefozopran" ~ "Cephalosporins (4th gen.)", + name == "Cefpimizole" ~ "Cephalosporins (3rd gen.)", + name == "Cefpodoxime proxetil" ~ "Cephalosporins (3rd gen.)", + name == "Cefpodoxime/clavulanic acid" ~ "Cephalosporins (3rd gen.)", + name == "Cefquinome" ~ "Cephalosporins (4th gen.)", + name == "Cefsumide" ~ "Cephalosporins (unclassified gen.)", + name == "Ceftaroline" ~ "Cephalosporins (5th gen.)", + name == "Ceftaroline/avibactam" ~ "Cephalosporins (5th gen.)", + name == "Ceftazidime/avibactam" ~ "Cephalosporins (3rd gen.)", + name == "Cefteram" ~ "Cephalosporins (3rd gen.)", + name == "Cefteram pivoxil" ~ "Cephalosporins (3rd gen.)", + name == "Ceftiofur" ~ "Cephalosporins (3rd gen.)", + name == "Ceftizoxime alapivoxil" ~ "Cephalosporins (3rd gen.)", + name == "Ceftobiprole" ~ "Cephalosporins (5th gen.)", + name == "Ceftobiprole medocaril" ~ "Cephalosporins (5th gen.)", + name == "Ceftolozane/enzyme inhibitor" ~ "Cephalosporins (5th gen.)", + name == "Ceftolozane/tazobactam" ~ "Cephalosporins (5th gen.)", + name == "Cefuroxime axetil" ~ "Cephalosporins (2nd gen.)", + TRUE ~ group)) + +# set as data.frame again +antibiotics <- as.data.frame(antibiotics, stringsAsFactors = FALSE) class(antibiotics$ab) <- "ab" dim(antibiotics) # for R/data.R diff --git a/data-raw/translations.tsv b/data-raw/translations.tsv index 0456fe47..b1f6e6dc 100644 --- a/data-raw/translations.tsv +++ b/data-raw/translations.tsv @@ -368,6 +368,8 @@ nl Cephalosporins (1st gen.) Cefalosporines (1e gen.) TRUE FALSE nl Cephalosporins (2nd gen.) Cefalosporines (2e gen.) TRUE FALSE nl Cephalosporins (3rd gen.) Cefalosporines (3e gen.) TRUE FALSE nl Cephalosporins (4th gen.) Cefalosporines (4e gen.) TRUE FALSE +nl Cephalosporins (5th gen.) Cefalosporines (5e gen.) TRUE FALSE +nl Cephalosporins (unclassified gen.) Cefalosporines (ongeclassificeerd) TRUE FALSE nl Cephalosporins Cefalosporines TRUE FALSE nl Glycopeptides Glycopeptiden TRUE FALSE nl Macrolides/lincosamides Macroliden/lincosamiden TRUE FALSE diff --git a/data/antibiotics.rda b/data/antibiotics.rda index 82025b4252d82060a877e12c33dd4b8a48df937a..aef6b59d86442c96aff435426a0b085a0da5618c 100755 GIT binary patch delta 34777 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

Benchmarks

Matthijs S. Berends

-

08 August 2019

+

11 August 2019

@@ -211,13 +211,13 @@ print(S.aureus, unit = "ms", signif = 2) # Unit: milliseconds # expr min lq mean median uq max neval -# as.mo("sau") 8.4 8.5 12 9.1 10.0 27.0 10 -# as.mo("stau") 30.0 31.0 33 32.0 32.0 48.0 10 -# as.mo("staaur") 8.4 8.6 11 9.0 9.9 26.0 10 -# as.mo("STAAUR") 8.5 8.5 16 8.7 9.7 56.0 10 -# as.mo("S. aureus") 22.0 22.0 24 22.0 23.0 40.0 10 -# as.mo("S. aureus") 22.0 22.0 36 24.0 41.0 98.0 10 -# as.mo("Staphylococcus aureus") 3.9 4.0 4 4.0 4.1 4.3 10 +# as.mo("sau") 8.3 8.5 14.0 9.1 9.2 39.0 10 +# as.mo("stau") 31.0 32.0 38.0 32.0 47.0 53.0 10 +# as.mo("staaur") 8.2 8.4 20.0 8.7 40.0 55.0 10 +# as.mo("STAAUR") 8.2 8.4 10.0 8.9 9.4 24.0 10 +# as.mo("S. aureus") 23.0 24.0 33.0 24.0 24.0 99.0 10 +# as.mo("S. aureus") 23.0 23.0 29.0 24.0 40.0 42.0 10 +# as.mo("Staphylococcus aureus") 3.7 3.9 4.1 4.1 4.2 4.6 10

In the table above, all measurements are shown in milliseconds (thousands of seconds). A value of 5 milliseconds means it can determine 200 input values per second. It case of 100 milliseconds, this is only 10 input values per second. The second input is the only one that has to be looked up thoroughly. All the others are known codes (the first one is a WHONET code) or common laboratory codes, or common full organism names like the last one. Full organism names are always preferred.

To achieve this speed, the as.mo function also takes into account the prevalence of human pathogenic microorganisms. The downside is of course that less prevalent microorganisms will be determined less fast. See this example for the ID of Thermus islandicus (B_THERMS_ISL), a bug probably never found before in humans:

-

That takes 9.4 times as much time on average. A value of 100 milliseconds means it can only determine ~10 different input values per second. We can conclude that looking up arbitrary codes of less prevalent microorganisms is the worst way to go, in terms of calculation performance. Full names (like Thermus islandicus) are almost fast - these are the most probable input from most data sets.

+# as.mo("theisl") 270 270 280 290 290 300 10 +# as.mo("THEISL") 280 290 290 290 300 300 10 +# as.mo("T. islandicus") 130 130 150 150 160 160 10 +# as.mo("T. islandicus") 130 130 150 150 150 160 10 +# as.mo("Thermus islandicus") 46 48 54 50 63 71 10 +

That takes 8.8 times as much time on average. A value of 100 milliseconds means it can only determine ~10 different input values per second. We can conclude that looking up arbitrary codes of less prevalent microorganisms is the worst way to go, in terms of calculation performance. Full names (like Thermus islandicus) are almost fast - these are the most probable input from most data sets.

In the figure below, we compare Escherichia coli (which is very common) with Prevotella brevis (which is moderately common) and with Thermus islandicus (which is very uncommon):

par(mar = c(5, 16, 4, 2)) # set more space for left margin text (16)
 
@@ -253,7 +253,7 @@
 

Repetitive results

-

Repetitive results are unique values that are present more than once. Unique values will only be calculated once by as.mo(). We will use mo_fullname() for this test - a helper function that returns the full microbial name (genus, species and possibly subspecies) which uses as.mo() internally.

+

Repetitive results are unique values that are present more than once. Unique values will only be calculated once by as.mo(). We will use mo_name() for this test - a helper function that returns the full microbial name (genus, species and possibly subspecies) which uses as.mo() internally.

-

So transforming 500,000 values (!!) of 50 unique values only takes 0.67 seconds (666 ms). You only lose time on your unique input values.

+# expr min lq mean median uq max neval +# mo_name(x) 623 631 659 637 697 729 10
+

So transforming 500,000 values (!!) of 50 unique values only takes 0.64 seconds (637 ms). You only lose time on your unique input values.

Precalculated results

-

What about precalculated results? If the input is an already precalculated result of a helper function like mo_fullname(), it almost doesn’t take any time at all (see ‘C’ below):

-
run_it <- microbenchmark(A = mo_fullname("B_STPHY_AUR"),
-                         B = mo_fullname("S. aureus"),
-                         C = mo_fullname("Staphylococcus aureus"),
+

What about precalculated results? If the input is an already precalculated result of a helper function like mo_name(), it almost doesn’t take any time at all (see ‘C’ below):

+ -

So going from mo_fullname("Staphylococcus aureus") to "Staphylococcus aureus" takes 0.0008 seconds - it doesn’t even start calculating if the result would be the same as the expected resulting value. That goes for all helper functions:

+# expr min lq mean median uq max neval +# A 6.290 6.730 7.170 7.010 7.760 8.09 10 +# B 22.600 22.700 26.200 23.000 25.400 44.30 10 +# C 0.798 0.806 0.874 0.844 0.891 1.05 10
+

So going from mo_name("Staphylococcus aureus") to "Staphylococcus aureus" takes 0.0008 seconds - it doesn’t even start calculating if the result would be the same as the expected resulting value. That goes for all helper functions:

+# A 0.455 0.458 0.471 0.465 0.482 0.504 10 +# B 0.480 0.482 0.497 0.491 0.497 0.554 10 +# C 0.662 0.687 0.754 0.750 0.788 0.964 10 +# D 0.484 0.484 0.496 0.488 0.501 0.544 10 +# E 0.442 0.450 0.459 0.456 0.462 0.492 10 +# F 0.440 0.447 0.456 0.452 0.463 0.486 10 +# G 0.450 0.452 0.462 0.459 0.463 0.485 10 +# H 0.455 0.461 0.467 0.467 0.471 0.492 10

Of course, when running mo_phylum("Firmicutes") the function has zero knowledge about the actual microorganism, namely S. aureus. But since the result would be "Firmicutes" too, there is no point in calculating the result. And because this package ‘knows’ all phyla of all known bacteria (according to the Catalogue of Life), it can just return the initial value immediately.

Results in other languages

When the system language is non-English and supported by this AMR package, some functions will have a translated result. This almost does’t take extra time:

-
mo_fullname("CoNS", language = "en") # or just mo_fullname("CoNS") on an English system
+
mo_name("CoNS", language = "en") # or just mo_name("CoNS") on an English system
 # [1] "Coagulase-negative Staphylococcus (CoNS)"
 
-mo_fullname("CoNS", language = "es") # or just mo_fullname("CoNS") on a Spanish system
+mo_name("CoNS", language = "es") # or just mo_name("CoNS") on a Spanish system
 # [1] "Staphylococcus coagulasa negativo (SCN)"
 
-mo_fullname("CoNS", language = "nl") # or just mo_fullname("CoNS") on a Dutch system
+mo_name("CoNS", language = "nl") # or just mo_name("CoNS") on a Dutch system
 # [1] "Coagulase-negatieve Staphylococcus (CNS)"
 
-run_it <- microbenchmark(en = mo_fullname("CoNS", language = "en"),
-                         de = mo_fullname("CoNS", language = "de"),
-                         nl = mo_fullname("CoNS", language = "nl"),
-                         es = mo_fullname("CoNS", language = "es"),
-                         it = mo_fullname("CoNS", language = "it"),
-                         fr = mo_fullname("CoNS", language = "fr"),
-                         pt = mo_fullname("CoNS", language = "pt"),
+run_it <- microbenchmark(en = mo_name("CoNS", language = "en"),
+                         de = mo_name("CoNS", language = "de"),
+                         nl = mo_name("CoNS", language = "nl"),
+                         es = mo_name("CoNS", language = "es"),
+                         it = mo_name("CoNS", language = "it"),
+                         fr = mo_name("CoNS", language = "fr"),
+                         pt = mo_name("CoNS", language = "pt"),
                          times = 10)
 print(run_it, unit = "ms", signif = 4)
 # Unit: milliseconds
-#  expr   min    lq  mean median    uq    max neval
-#    en 17.02 17.26 17.89  17.85 18.50  18.84    10
-#    de 18.28 18.65 22.91  18.84 19.67  41.64    10
-#    nl 24.07 24.31 32.74  24.60 25.02 105.60    10
-#    es 18.59 19.00 19.99  19.32 19.81  26.42    10
-#    it 18.28 18.40 22.59  19.07 20.38  39.47    10
-#    fr 18.34 18.70 21.48  19.37 20.83  34.67    10
-#    pt 18.60 18.92 19.25  19.19 19.59  20.14    10
+# expr min lq mean median uq max neval +# en 17.66 17.86 18.50 18.49 19.14 19.36 10 +# de 19.03 19.38 19.64 19.49 20.01 20.42 10 +# nl 24.40 25.23 30.77 25.78 41.94 44.93 10 +# es 19.18 19.22 23.30 19.53 21.34 39.20 10 +# it 19.02 19.24 23.53 19.57 20.35 50.89 10 +# fr 19.28 19.33 19.87 19.57 20.19 21.25 10 +# pt 18.89 19.14 19.77 19.67 20.21 20.99 10

Currently supported are German, Dutch, Spanish, Italian, French and Portuguese.

diff --git a/docs/articles/benchmarks_files/figure-html/unnamed-chunk-5-1.png b/docs/articles/benchmarks_files/figure-html/unnamed-chunk-5-1.png index 88637bdfe84f19e1bf488c0b5b10800c3b7d6b1c..938b62bf4a5bb803366c527c9d8b0ec60bfb7090 100644 GIT binary patch literal 84171 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

jg-+>@Ud(F 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 literal 84669 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 AMR (for R) - 0.7.1.9034 + 0.7.1.9035 diff --git a/docs/authors.html b/docs/authors.html index 6665c28b..c4e81532 100644 --- a/docs/authors.html +++ b/docs/authors.html @@ -78,7 +78,7 @@ AMR (for R) - 0.7.1.9034 + 0.7.1.9035 diff --git a/docs/index.html b/docs/index.html index 76320f6d..a5a1bb68 100644 --- a/docs/index.html +++ b/docs/index.html @@ -42,7 +42,7 @@ AMR (for R) - 0.7.1.9034 + 0.7.1.9035 @@ -302,7 +302,7 @@

WHO Collaborating Centre for Drug Statistics Methodology

This package contains all ~450 antimicrobial drugs and their Anatomical Therapeutic Chemical (ATC) codes, ATC groups and Defined Daily Dose (DDD, oral and IV) from the World Health Organization Collaborating Centre for Drug Statistics Methodology (WHOCC, https://www.whocc.no) and the Pharmaceuticals Community Register of the European Commission.

-

NOTE: The WHOCC copyright does not allow use for commercial purposes, unlike any other info from this package. See \url{https://www.whocc.no/copyright_disclaimer/}.

+

NOTE: The WHOCC copyright does not allow use for commercial purposes, unlike any other info from this package. See https://www.whocc.no/copyright_disclaimer/.

Read more about the data from WHOCC in our manual.

diff --git a/docs/news/index.html b/docs/news/index.html index 939281f7..9575cea0 100644 --- a/docs/news/index.html +++ b/docs/news/index.html @@ -78,7 +78,7 @@ AMR (for R) - 0.7.1.9034 + 0.7.1.9035
@@ -225,16 +225,20 @@ -
+

-AMR 0.7.1.9034 Unreleased +AMR 0.7.1.9035 Unreleased

Breaking

  • Function freq() has moved to a new package, clean (CRAN link). Creating frequency tables is actually not the scope of this package (never was) and this function has matured a lot over the last two years. Therefore, a new package was created for data cleaning and checking and it perfectly fits the freq() function. The clean package is available on CRAN and will be installed automatically when updating the AMR package, that now imports it. In a later stage, the skewness() and kurtosis() functions will be moved to the clean package too.
  • -
  • Determination of first isolates now excludes all ‘unknown’ microorganisms at default, i.e. microbial code "UNKNOWN". They can be included with the new parameter include_unknown: first_isolates(..., include_unknown = TRUE). For WHONET users, this means that all records with organism code "con" (contamination) will be excluded at default, since as.mo("con") = "UNKNOWN".
  • +
  • +

    Determination of first isolates now excludes all ‘unknown’ microorganisms at default, i.e. microbial code "UNKNOWN". They can be included with the new parameter include_unknown:

    +
    first_isolate(..., include_unknown = TRUE)
    +

    For WHONET users, this means that all records with organism code "con" (contamination) will be excluded at default, since as.mo("con") = "UNKNOWN". The function always shows a note with the number of ‘unknown’ microorganisms that were included or excluded.

    +
@@ -243,29 +247,29 @@ @@ -286,14 +290,14 @@
  • Added tibble printing support for classes rsi, mic, ab and mo. When using tibbles containing antibiotic columns, values S will print in green, values I will print in yellow and values R will print in red:

    -
    (run this on your own console, as this page does not support colour printing)
    -tibble(mo = sample(AMR::microorganisms$fullname, 10),
    -       drug1 = as.rsi(sample(c("S", "I", "R"), 10, replace = TRUE, 
    -                             prob = c(0.6, 0.1, 0.3))),
    -       drug2 = as.rsi(sample(c("S", "I", "R"), 10, replace = TRUE,
    -                             prob = c(0.6, 0.1, 0.3))),
    -       drug3 = as.rsi(sample(c("S", "I", "R"), 10, replace = TRUE,
    -                             prob = c(0.6, 0.1, 0.3))))
    +
    # (run this on your own console, as this page does not support colour printing)
    +tibble(mo = sample(AMR::microorganisms$fullname, 10),
    +       drug1 = as.rsi(sample(c("S", "I", "R"), 10, replace = TRUE, 
    +                             prob = c(0.6, 0.1, 0.3))),
    +       drug2 = as.rsi(sample(c("S", "I", "R"), 10, replace = TRUE,
    +                             prob = c(0.6, 0.1, 0.3))),
    +       drug3 = as.rsi(sample(c("S", "I", "R"), 10, replace = TRUE,
    +                             prob = c(0.6, 0.1, 0.3))))
  • Removed class atc - using as.atc() is now deprecated in favour of ab_atc() and this will return a character, not the atc class anymore
  • Removed deprecated functions abname(), ab_official(), atc_name(), atc_official(), atc_property(), atc_tradenames(), atc_trivial_nl() @@ -312,7 +316,7 @@
  • Fix for using mo_* functions where the coercion uncertainties and failures would not be available through mo_uncertainties() and mo_failures() anymore
  • Deprecated the country parameter of mdro() in favour of the already existing guideline parameter to support multiple guidelines within one country
  • The name of RIF is now Rifampicin instead of Rifampin
  • -
  • The antibiotics data set is now sorted by name
  • +
  • The antibiotics data set is now sorted by name and all cephalosporines now have their generation between brackets
  • Speed improvement for guess_ab_col() which is now 30 times faster for antibiotic abbreviations

  • @@ -334,14 +338,14 @@

    All these lead to the microbial ID of E. coli:

    - +
  • Function mo_info() as an analogy to ab_info(). The mo_info() prints a list with the full taxonomy, authors, and the URL to the online database of a microorganism
  • Function mo_synonyms() to get all previously accepted taxonomic names of a microorganism

  • @@ -463,14 +467,14 @@ Please
    septic_patients %>% 
    -  freq(age) %>% 
    -  boxplot()
    -# grouped boxplots:
    -septic_patients %>% 
    -  group_by(hospital_id) %>% 
    -  freq(age) %>%
    -  boxplot()
    + @@ -555,32 +559,32 @@ This data is updated annually - check the included version with the new function
  • New filters for antimicrobial classes. Use these functions to filter isolates on results in one of more antibiotics from a specific class:

    - +

    The antibiotics data set will be searched, after which the input data will be checked for column names with a value in any abbreviations, codes or official names found in the antibiotics data set. For example:

    - +
  • All ab_* functions are deprecated and replaced by atc_* functions:

    - + These functions use as.atc() internally. The old atc_property has been renamed atc_online_property(). This is done for two reasons: firstly, not all ATC codes are of antibiotics (ab) but can also be of antivirals or antifungals. Secondly, the input must have class atc or must be coerable to this class. Properties of these classes should start with the same class name, analogous to as.mo() and e.g. mo_genus.
  • New functions set_mo_source() and get_mo_source() to use your own predefined MO codes as input for as.mo() and consequently all mo_* functions
  • Support for the upcoming dplyr version 0.8.0
  • @@ -592,20 +596,20 @@ These functions use as.atc()New function age_groups() to split ages into custom or predefined groups (like children or elderly). This allows for easier demographic antimicrobial resistance analysis per age group.
  • New function ggplot_rsi_predict() as well as the base R plot() function can now be used for resistance prediction calculated with resistance_predict():

    -
    x <- resistance_predict(septic_patients, col_ab = "amox")
    -plot(x)
    -ggplot_rsi_predict(x)
    +
    x <- resistance_predict(septic_patients, col_ab = "amox")
    +plot(x)
    +ggplot_rsi_predict(x)
  • Functions filter_first_isolate() and filter_first_weighted_isolate() to shorten and fasten filtering on data sets with antimicrobial results, e.g.:

    - +

    is equal to:

    -
    septic_patients %>%
    -  mutate(only_firsts = first_isolate(septic_patients, ...)) %>%
    -  filter(only_firsts == TRUE) %>%
    -  select(-only_firsts)
    +
    septic_patients %>%
    +  mutate(only_firsts = first_isolate(septic_patients, ...)) %>%
    +  filter(only_firsts == TRUE) %>%
    +  select(-only_firsts)
  • New function availability() to check the number of available (non-empty) results in a data.frame
  • @@ -634,33 +638,33 @@ These functions use as.atc()
  • Now handles incorrect spelling, like i instead of y and f instead of ph:

    - +
  • Uncertainty of the algorithm is now divided into four levels, 0 to 3, where the default allow_uncertain = TRUE is equal to uncertainty level 2. Run ?as.mo for more info about these levels.

    -
    # equal:
    -as.mo(..., allow_uncertain = TRUE)
    -as.mo(..., allow_uncertain = 2)
    -
    -# also equal:
    -as.mo(..., allow_uncertain = FALSE)
    -as.mo(..., allow_uncertain = 0)
    +
    # equal:
    +as.mo(..., allow_uncertain = TRUE)
    +as.mo(..., allow_uncertain = 2)
    +
    +# also equal:
    +as.mo(..., allow_uncertain = FALSE)
    +as.mo(..., allow_uncertain = 0)
    Using as.mo(..., allow_uncertain = 3) could lead to very unreliable results.
  • Implemented the latest publication of Becker et al. (2019), for categorising coagulase-negative Staphylococci
  • All microbial IDs that found are now saved to a local file ~/.Rhistory_mo. Use the new function clean_mo_history() to delete this file, which resets the algorithms.
  • Incoercible results will now be considered ‘unknown’, MO code UNKNOWN. On foreign systems, properties of these will be translated to all languages already previously supported: German, Dutch, French, Italian, Spanish and Portuguese:

    - +
  • Fix for vector containing only empty values
  • Finds better results when input is in other languages
  • @@ -706,19 +710,19 @@ Using as.mo(..., allow_uncertain = 3)
  • Support for tidyverse quasiquotation! Now you can create frequency tables of function outcomes:

    - +
  • Header info is now available as a list, with the header function
  • The parameter header is now set to TRUE at default, even for markdown
  • @@ -793,10 +797,10 @@ Using as.mo(..., allow_uncertain = 3)Fewer than 3 characters as input for as.mo will return NA
  • Function as.mo (and all mo_* wrappers) now supports genus abbreviations with “species” attached

    -
    as.mo("E. species")        # B_ESCHR
    -mo_fullname("E. spp.")     # "Escherichia species"
    -as.mo("S. spp")            # B_STPHY
    -mo_fullname("S. species")  # "Staphylococcus species"
    +
    as.mo("E. species")        # B_ESCHR
    +mo_fullname("E. spp.")     # "Escherichia species"
    +as.mo("S. spp")            # B_STPHY
    +mo_fullname("S. species")  # "Staphylococcus species"
  • Added parameter combine_IR (TRUE/FALSE) to functions portion_df and count_df, to indicate that all values of I and R must be merged into one, so the output only consists of S vs. IR (susceptible vs. non-susceptible)
  • Fix for portion_*(..., as_percent = TRUE) when minimal number of isolates would not be met
  • @@ -809,15 +813,15 @@ Using as.mo(..., allow_uncertain = 3)
  • Support for grouping variables, test with:

    - +
  • Support for (un)selecting columns:

    - +
  • Check for hms::is.hms
  • @@ -897,18 +901,18 @@ Using as.mo(..., allow_uncertain = 3)

    They also come with support for German, Dutch, French, Italian, Spanish and Portuguese:

    -
    mo_gramstain("E. coli")
    -# [1] "Gram negative"
    -mo_gramstain("E. coli", language = "de") # German
    -# [1] "Gramnegativ"
    -mo_gramstain("E. coli", language = "es") # Spanish
    -# [1] "Gram negativo"
    -mo_fullname("S. group A", language = "pt") # Portuguese
    -# [1] "Streptococcus grupo A"
    +
    mo_gramstain("E. coli")
    +# [1] "Gram negative"
    +mo_gramstain("E. coli", language = "de") # German
    +# [1] "Gramnegativ"
    +mo_gramstain("E. coli", language = "es") # Spanish
    +# [1] "Gram negativo"
    +mo_fullname("S. group A", language = "pt") # Portuguese
    +# [1] "Streptococcus grupo A"

    Furthermore, former taxonomic names will give a note about the current taxonomic name:

    - +
  • Functions count_R, count_IR, count_I, count_SI and count_S to selectively count resistant or susceptible isolates
  • @@ -1233,7 +1237,7 @@ Using as.mo(..., allow_uncertain = 3)

    Contents

    @@ -267,7 +267,7 @@ ab -

    an antibiotic code, generated with as.ab

    +

    an antimicrobial code, generated with as.ab

    guideline @@ -279,7 +279,7 @@ threshold -

    maximum fraction of x that is allowed to fail transformation, see Examples

    +

    maximum fraction of invalid antimicrobial interpretations of x, see Examples

    @@ -290,7 +290,7 @@

    Details

    Run unique(AMR::rsi_translation$guideline) for a list of all supported guidelines.

    -

    After using as.rsi, you can use eucast_rules to (1) apply inferred susceptibility and resistance based on results of other antibiotics and (2) apply intrinsic resistance based on taxonomic properties of a microorganism.

    +

    After using as.rsi, you can use eucast_rules to (1) apply inferred susceptibility and resistance based on results of other antimicrobials and (2) apply intrinsic resistance based on taxonomic properties of a microorganism.

    The function is.rsi.eligible returns TRUE when a columns contains at most 5% invalid antimicrobial interpretations (not S and/or I and/or R), and FALSE otherwise. The threshold of 5% can be set with the threshold parameter.

    Interpretation of S, I and R

    diff --git a/docs/reference/catalogue_of_life.html b/docs/reference/catalogue_of_life.html index a7352ec1..11c04ccb 100644 --- a/docs/reference/catalogue_of_life.html +++ b/docs/reference/catalogue_of_life.html @@ -80,7 +80,7 @@ AMR (for R) - 0.7.1.9033 + 0.7.1.9035
    diff --git a/docs/reference/ggplot_rsi.html b/docs/reference/ggplot_rsi.html index dcab20f1..7241202f 100644 --- a/docs/reference/ggplot_rsi.html +++ b/docs/reference/ggplot_rsi.html @@ -80,7 +80,7 @@ AMR (for R) - 0.7.1.9033 + 0.7.1.9035 diff --git a/docs/reference/index.html b/docs/reference/index.html index 4c744dc2..de5910f1 100644 --- a/docs/reference/index.html +++ b/docs/reference/index.html @@ -78,7 +78,7 @@ AMR (for R) - 0.7.1.9034 + 0.7.1.9035 diff --git a/docs/reference/like.html b/docs/reference/like.html index 954e87c7..b5d0978f 100644 --- a/docs/reference/like.html +++ b/docs/reference/like.html @@ -80,7 +80,7 @@ AMR (for R) - 0.7.1.9029 + 0.7.1.9035 @@ -261,7 +261,7 @@

    Source

    -

    Idea from the like function from the data.table package, but made it case insensitive at default and let it support multiple patterns.

    +

    Idea from the like function from the data.table package, but made it case insensitive at default and let it support multiple patterns. Also, if the regex fails the first time, it tries again with perl = TRUE.

    Value

    diff --git a/docs/reference/microorganisms.codes.html b/docs/reference/microorganisms.codes.html index a05b208e..cdc1fe23 100644 --- a/docs/reference/microorganisms.codes.html +++ b/docs/reference/microorganisms.codes.html @@ -80,7 +80,7 @@ AMR (for R) - 0.7.1.9034 + 0.7.1.9035 diff --git a/docs/reference/microorganisms.html b/docs/reference/microorganisms.html index 558e7bd1..64d3804d 100644 --- a/docs/reference/microorganisms.html +++ b/docs/reference/microorganisms.html @@ -80,7 +80,7 @@ AMR (for R) - 0.7.1.9033 + 0.7.1.9035 diff --git a/docs/reference/microorganisms.old.html b/docs/reference/microorganisms.old.html index 71e3a485..379e0078 100644 --- a/docs/reference/microorganisms.old.html +++ b/docs/reference/microorganisms.old.html @@ -80,7 +80,7 @@ AMR (for R) - 0.7.1.9033 + 0.7.1.9035 diff --git a/docs/reference/translate.html b/docs/reference/translate.html index 8d17761c..083b5d6f 100644 --- a/docs/reference/translate.html +++ b/docs/reference/translate.html @@ -47,7 +47,7 @@ - + @@ -80,7 +80,7 @@ AMR (for R) - 0.7.1.9029 + 0.7.1.9035 @@ -230,7 +230,7 @@
    -

    For language-dependent output of AMR functions, like mo_fullname and mo_type.

    +

    For language-dependent output of AMR functions, like mo_name, mo_type and ab_name.

    @@ -239,9 +239,10 @@

    Details

    Strings will be translated to foreign languages if they are defined in a local translation file. Additions to this file can be suggested at our repository. The file can be found here: https://gitlab.com/msberends/AMR/blob/master/data-raw/translations.tsv.

    +

    Currently supported languages can be found if running: unique(AMR:::translations_file$lang).

    Please suggest your own translations by creating a new issue on our repository.

    This file will be read by all functions where a translated output can be desired, like all mo_property functions (mo_fullname, mo_type, etc.).

    -

    The system language will be used at default, if supported, using get_locale. The system language can be overwritten with getOption("AMR_locale").

    +

    The system language will be used at default, if that language is supported. The system language can be overwritten with getOption("AMR_locale").

    Read more on our website!

    @@ -256,27 +257,27 @@ # with get_locale() # English -mo_fullname("CoNS", language = "en") +mo_name("CoNS", language = "en") #> "Coagulase-negative Staphylococcus (CoNS)" # German -mo_fullname("CoNS", language = "de") +mo_name("CoNS", language = "de") #> "Koagulase-negative Staphylococcus (KNS)" # Dutch -mo_fullname("CoNS", language = "nl") +mo_name("CoNS", language = "nl") #> "Coagulase-negatieve Staphylococcus (CNS)" # Spanish -mo_fullname("CoNS", language = "es") +mo_name("CoNS", language = "es") #> "Staphylococcus coagulasa negativo (SCN)" # Italian -mo_fullname("CoNS", language = "it") +mo_name("CoNS", language = "it") #> "Staphylococcus negativo coagulasi (CoNS)" # Portuguese -mo_fullname("CoNS", language = "pt") +mo_name("CoNS", language = "pt") #> "Staphylococcus coagulase negativo (CoNS)" # } diff --git a/index.md b/index.md index 7874f335..9bd80c57 100644 --- a/index.md +++ b/index.md @@ -130,7 +130,7 @@ Read more about the data from the Catalogue of Life [in our manual](./reference/ This package contains **all ~450 antimicrobial drugs** and their Anatomical Therapeutic Chemical (ATC) codes, ATC groups and Defined Daily Dose (DDD, oral and IV) from the World Health Organization Collaborating Centre for Drug Statistics Methodology (WHOCC, https://www.whocc.no) and the [Pharmaceuticals Community Register of the European Commission](http://ec.europa.eu/health/documents/community-register/html/atc.htm). -**NOTE: The WHOCC copyright does not allow use for commercial purposes, unlike any other info from this package. See \url{https://www.whocc.no/copyright_disclaimer/}.** +**NOTE: The WHOCC copyright does not allow use for commercial purposes, unlike any other info from this package. See https://www.whocc.no/copyright_disclaimer/.** Read more about the data from WHOCC [in our manual](./reference/WHOCC.html). diff --git a/man/as.rsi.Rd b/man/as.rsi.Rd index 5751e176..1ad8b230 100755 --- a/man/as.rsi.Rd +++ b/man/as.rsi.Rd @@ -29,13 +29,13 @@ is.rsi.eligible(x, threshold = 0.05) \item{mo}{a microorganism code, generated with \code{\link{as.mo}}} -\item{ab}{an antibiotic code, generated with \code{\link{as.ab}}} +\item{ab}{an antimicrobial code, generated with \code{\link{as.ab}}} \item{guideline}{defaults to the latest included EUCAST guideline, run \code{unique(AMR::rsi_translation$guideline)} for all options} \item{col_mo}{column name of the unique IDs of the microorganisms (see \code{\link{mo}}), defaults to the first column of class \code{mo}. Values will be coerced using \code{\link{as.mo}}.} -\item{threshold}{maximum fraction of \code{x} that is allowed to fail transformation, see Examples} +\item{threshold}{maximum fraction of invalid antimicrobial interpretations of \code{x}, see Examples} } \value{ Ordered factor with new class \code{rsi} @@ -46,7 +46,7 @@ Interpret MIC values according to EUCAST or CLSI, or clean up existing RSI value \details{ Run \code{unique(AMR::rsi_translation$guideline)} for a list of all supported guidelines. -After using \code{as.rsi}, you can use \code{\link{eucast_rules}} to (1) apply inferred susceptibility and resistance based on results of other antibiotics and (2) apply intrinsic resistance based on taxonomic properties of a microorganism. +After using \code{as.rsi}, you can use \code{\link{eucast_rules}} to (1) apply inferred susceptibility and resistance based on results of other antimicrobials and (2) apply intrinsic resistance based on taxonomic properties of a microorganism. The function \code{is.rsi.eligible} returns \code{TRUE} when a columns contains at most 5\% invalid antimicrobial interpretations (not S and/or I and/or R), and \code{FALSE} otherwise. The threshold of 5\% can be set with the \code{threshold} parameter. } diff --git a/man/like.Rd b/man/like.Rd index 74d820fd..0ae9b091 100755 --- a/man/like.Rd +++ b/man/like.Rd @@ -5,7 +5,7 @@ \alias{\%like\%} \title{Pattern Matching} \source{ -Idea from the \href{https://github.com/Rdatatable/data.table/blob/master/R/like.R}{\code{like} function from the \code{data.table} package}, but made it case insensitive at default and let it support multiple patterns. +Idea from the \href{https://github.com/Rdatatable/data.table/blob/master/R/like.R}{\code{like} function from the \code{data.table} package}, but made it case insensitive at default and let it support multiple patterns. Also, if the regex fails the first time, it tries again with \code{perl = TRUE}. } \usage{ like(x, pattern) diff --git a/man/translate.Rd b/man/translate.Rd index 47945857..5426ee68 100644 --- a/man/translate.Rd +++ b/man/translate.Rd @@ -8,16 +8,18 @@ get_locale() } \description{ -For language-dependent output of AMR functions, like \code{\link{mo_fullname}} and \code{\link{mo_type}}. +For language-dependent output of AMR functions, like \code{\link{mo_name}}, \code{\link{mo_type}} and \code{\link{ab_name}}. } \details{ Strings will be translated to foreign languages if they are defined in a local translation file. Additions to this file can be suggested at our repository. The file can be found here: \url{https://gitlab.com/msberends/AMR/blob/master/data-raw/translations.tsv}. +Currently supported languages can be found if running: \code{unique(AMR:::translations_file$lang)}. + Please suggest your own translations \href{https://gitlab.com/msberends/AMR/issues/new?issue[title]=Translation\%20suggestion}{by creating a new issue on our repository}. This file will be read by all functions where a translated output can be desired, like all \code{\link{mo_property}} functions (\code{\link{mo_fullname}}, \code{\link{mo_type}}, etc.). -The system language will be used at default, if supported, using \code{\link{get_locale}}. The system language can be overwritten with \code{\link{getOption}("AMR_locale")}. +The system language will be used at default, if that language is supported. The system language can be overwritten with \code{\link{getOption}("AMR_locale")}. } \section{Read more on our website!}{ @@ -30,26 +32,26 @@ On our website \url{https://msberends.gitlab.io/AMR} you can find \href{https:// # with get_locale() # English -mo_fullname("CoNS", language = "en") +mo_name("CoNS", language = "en") #> "Coagulase-negative Staphylococcus (CoNS)" # German -mo_fullname("CoNS", language = "de") +mo_name("CoNS", language = "de") #> "Koagulase-negative Staphylococcus (KNS)" # Dutch -mo_fullname("CoNS", language = "nl") +mo_name("CoNS", language = "nl") #> "Coagulase-negatieve Staphylococcus (CNS)" # Spanish -mo_fullname("CoNS", language = "es") +mo_name("CoNS", language = "es") #> "Staphylococcus coagulasa negativo (SCN)" # Italian -mo_fullname("CoNS", language = "it") +mo_name("CoNS", language = "it") #> "Staphylococcus negativo coagulasi (CoNS)" # Portuguese -mo_fullname("CoNS", language = "pt") +mo_name("CoNS", language = "pt") #> "Staphylococcus coagulase negativo (CoNS)" } diff --git a/tests/testthat/test-misc.R b/tests/testthat/test-misc.R index 951f4d48..e27493be 100755 --- a/tests/testthat/test-misc.R +++ b/tests/testthat/test-misc.R @@ -31,10 +31,6 @@ test_that("percentages works", { expect_equal(percent(0.0055), "0.6%") }) -test_that("size format works", { - expect_equal(size_humanreadable(123456), "121 kB") -}) - test_that("functions missing in older R versions work", { expect_equal(strrep("A", 5), "AAAAA") expect_equal(strrep(c("A", "B"), c(5, 2)), c("AAAAA", "BB")) diff --git a/tests/testthat/test-mo.R b/tests/testthat/test-mo.R index b8c76a56..85a07fe6 100644 --- a/tests/testthat/test-mo.R +++ b/tests/testthat/test-mo.R @@ -253,7 +253,7 @@ test_that("as.mo works", { rep(NA_character_, 3)) expect_equal(as.character(as.mo("con")), "UNKNOWN") expect_equal(as.character(as.mo("xxx")), NA_character_) - expect_equal(as.character(as.mo(c("xxx", "con"))), c(NA_character_, "UNKNOWN")) + expect_equal(as.character(as.mo(c("xxx", "con", "eco"))), c(NA_character_, "UNKNOWN", "B_ESCHR_COL")) expect_equal(as.character(as.mo(c("other", "none", "unknown"))), rep("UNKNOWN", 3)) @@ -269,5 +269,17 @@ test_that("as.mo works", { # very old MO codes (<= v0.5.0) expect_equal(as.character(as.mo("F_CCCCS_NEO")), "F_CRYPT_NEO") expect_equal(as.character(as.mo("F_CANDD_GLB")), "F_CANDD_GLA") + + # debug mode + expect_warning(as.mo("kshgcjkhsdgkshjdfsfvsdfv", debug = TRUE, allow_uncertain = 3)) + # ..coccus + expect_equal(as.character(as.mo(c("meningococ", "gonococ", "pneumococ"))), + c("B_NESSR_MEN", "B_NESSR_GON", "B_STRPT_PNE")) + # yeasts and fungi + expect_equal(suppressWarnings(as.character(as.mo(c("yeasts", "fungi")))), + c("F_YEAST", "F_FUNGUS")) + + # print tibble + expect_output(print(tibble(mo = as.mo("B_STRPT_PNE")))) }) diff --git a/vignettes/benchmarks.Rmd b/vignettes/benchmarks.Rmd index 7ba38e0d..1e82c708 100755 --- a/vignettes/benchmarks.Rmd +++ b/vignettes/benchmarks.Rmd @@ -110,7 +110,7 @@ Uncommon microorganisms take a lot more time than common microorganisms. To reli ### Repetitive results -Repetitive results are unique values that are present more than once. Unique values will only be calculated once by `as.mo()`. We will use `mo_fullname()` for this test - a helper function that returns the full microbial name (genus, species and possibly subspecies) which uses `as.mo()` internally. +Repetitive results are unique values that are present more than once. Unique values will only be calculated once by `as.mo()`. We will use `mo_name()` for this test - a helper function that returns the full microbial name (genus, species and possibly subspecies) which uses `as.mo()` internally. ```{r, message = FALSE} library(dplyr) @@ -132,7 +132,7 @@ length(x) n_distinct(x) # now let's see: -run_it <- microbenchmark(mo_fullname(x), +run_it <- microbenchmark(mo_name(x), times = 10) print(run_it, unit = "ms", signif = 3) ``` @@ -141,22 +141,22 @@ So transforming 500,000 values (!!) of `r n_distinct(x)` unique values only take ### Precalculated results -What about precalculated results? If the input is an already precalculated result of a helper function like `mo_fullname()`, it almost doesn't take any time at all (see 'C' below): +What about precalculated results? If the input is an already precalculated result of a helper function like `mo_name()`, it almost doesn't take any time at all (see 'C' below): ```{r} -run_it <- microbenchmark(A = mo_fullname("B_STPHY_AUR"), - B = mo_fullname("S. aureus"), - C = mo_fullname("Staphylococcus aureus"), +run_it <- microbenchmark(A = mo_name("B_STPHY_AUR"), + B = mo_name("S. aureus"), + C = mo_name("Staphylococcus aureus"), times = 10) print(run_it, unit = "ms", signif = 3) ``` -So going from `mo_fullname("Staphylococcus aureus")` to `"Staphylococcus aureus"` takes `r format(round(run_it %>% filter(expr == "C") %>% pull(time) %>% median() / 1e9, 4), scientific = FALSE)` seconds - it doesn't even start calculating *if the result would be the same as the expected resulting value*. That goes for all helper functions: +So going from `mo_name("Staphylococcus aureus")` to `"Staphylococcus aureus"` takes `r format(round(run_it %>% filter(expr == "C") %>% pull(time) %>% median() / 1e9, 4), scientific = FALSE)` seconds - it doesn't even start calculating *if the result would be the same as the expected resulting value*. That goes for all helper functions: ```{r} run_it <- microbenchmark(A = mo_species("aureus"), B = mo_genus("Staphylococcus"), - C = mo_fullname("Staphylococcus aureus"), + C = mo_name("Staphylococcus aureus"), D = mo_family("Staphylococcaceae"), E = mo_order("Bacillales"), F = mo_class("Bacilli"), @@ -173,19 +173,19 @@ Of course, when running `mo_phylum("Firmicutes")` the function has zero knowledg When the system language is non-English and supported by this `AMR` package, some functions will have a translated result. This almost does't take extra time: ```{r} -mo_fullname("CoNS", language = "en") # or just mo_fullname("CoNS") on an English system +mo_name("CoNS", language = "en") # or just mo_name("CoNS") on an English system -mo_fullname("CoNS", language = "es") # or just mo_fullname("CoNS") on a Spanish system +mo_name("CoNS", language = "es") # or just mo_name("CoNS") on a Spanish system -mo_fullname("CoNS", language = "nl") # or just mo_fullname("CoNS") on a Dutch system +mo_name("CoNS", language = "nl") # or just mo_name("CoNS") on a Dutch system -run_it <- microbenchmark(en = mo_fullname("CoNS", language = "en"), - de = mo_fullname("CoNS", language = "de"), - nl = mo_fullname("CoNS", language = "nl"), - es = mo_fullname("CoNS", language = "es"), - it = mo_fullname("CoNS", language = "it"), - fr = mo_fullname("CoNS", language = "fr"), - pt = mo_fullname("CoNS", language = "pt"), +run_it <- microbenchmark(en = mo_name("CoNS", language = "en"), + de = mo_name("CoNS", language = "de"), + nl = mo_name("CoNS", language = "nl"), + es = mo_name("CoNS", language = "es"), + it = mo_name("CoNS", language = "it"), + fr = mo_name("CoNS", language = "fr"), + pt = mo_name("CoNS", language = "pt"), times = 10) print(run_it, unit = "ms", signif = 4) ```

    Uk1R5TCzy_}k0rUm@%LSBa{LFi-*I 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 J2?})x^bj_yEZ6`5 diff --git a/docs/LICENSE-text.html b/docs/LICENSE-text.html index 71b07b4f..80b7586d 100644 --- a/docs/LICENSE-text.html +++ b/docs/LICENSE-text.html @@ -78,7 +78,7 @@ AMR (for R) - 0.7.1.9034 + 0.7.1.9035 diff --git a/docs/articles/benchmarks.html b/docs/articles/benchmarks.html index 2d2dbb5b..7214e2c2 100644 --- a/docs/articles/benchmarks.html +++ b/docs/articles/benchmarks.html @@ -40,7 +40,7 @@ AMR (for R) - 0.7.1.9029 + 0.7.1.9035 @@ -185,7 +185,7 @@