From 8ba2e4ed94e33ee60bc8b45ed3d95d32aecdc85d Mon Sep 17 00:00:00 2001 From: Matthijs Berends Date: Fri, 7 Feb 2025 18:01:22 +0100 Subject: [PATCH] (v2.1.1.9141) new AMR selectors, eucast overwrite arg --- .github/workflows/check-current-testthat.yaml | 2 +- .github/workflows/check-old-tinytest.yaml | 2 +- DESCRIPTION | 4 +- NAMESPACE | 2 + NEWS.md | 11 +- PythonPackage/AMR/AMR.egg-info/PKG-INFO | 2 +- PythonPackage/AMR/AMR/__init__.py | 2 + PythonPackage/AMR/AMR/functions.py | 6 + .../AMR/dist/AMR-2.1.1.9140-py3-none-any.whl | Bin 10211 -> 0 bytes .../AMR/dist/AMR-2.1.1.9141-py3-none-any.whl | Bin 0 -> 10253 bytes PythonPackage/AMR/dist/amr-2.1.1.9140.tar.gz | Bin 10044 -> 0 bytes PythonPackage/AMR/dist/amr-2.1.1.9141.tar.gz | Bin 0 -> 10073 bytes PythonPackage/AMR/setup.py | 2 +- R/aa_globals.R | 2 +- R/amr_selectors.R | 16 +++ R/antibiogram.R | 38 +++--- R/eucast_rules.R | 94 ++++++++----- R/first_isolate.R | 6 +- R/sysdata.rda | Bin 92836 -> 93152 bytes data-raw/_pre_commit_checks.R | 14 +- data-raw/ab.md5 | 2 +- data-raw/antibiotics.dta | Bin 467413 -> 468187 bytes data-raw/antibiotics.feather | Bin 132522 -> 132530 bytes data-raw/antibiotics.parquet | Bin 105145 -> 105167 bytes data-raw/antibiotics.rds | Bin 43472 -> 43492 bytes data-raw/antibiotics.sav | Bin 372492 -> 372940 bytes data-raw/antibiotics.txt | 123 +++++++++--------- data-raw/antibiotics.xlsx | Bin 75775 -> 75871 bytes ....txt => gpt_training_text_v2.1.1.9141.txt} | 71 ++++++---- .../reproduction_of_clinical_breakpoints.R | 4 +- data/antibiotics.rda | Bin 43520 -> 43480 bytes man/antibiotics.Rd | 4 +- man/antimicrobial_class_selectors.Rd | 22 +++- man/as.mo.Rd | 2 +- man/custom_eucast_rules.Rd | 20 +-- man/eucast_rules.Rd | 8 +- man/first_isolate.Rd | 5 +- man/mdro.Rd | 2 +- man/microorganisms.Rd | 2 +- man/mo_property.Rd | 2 +- ...st-ab_selectors.R => test-amr_selectors.R} | 2 + tests/testthat/test-zzz.R | 7 +- 42 files changed, 282 insertions(+), 197 deletions(-) delete mode 100644 PythonPackage/AMR/dist/AMR-2.1.1.9140-py3-none-any.whl create mode 100644 PythonPackage/AMR/dist/AMR-2.1.1.9141-py3-none-any.whl delete mode 100644 PythonPackage/AMR/dist/amr-2.1.1.9140.tar.gz create mode 100644 PythonPackage/AMR/dist/amr-2.1.1.9141.tar.gz rename data-raw/{gpt_training_text_v2.1.1.9140.txt => gpt_training_text_v2.1.1.9141.txt} (89%) rename tests/testthat/{test-ab_selectors.R => test-amr_selectors.R} (97%) diff --git a/.github/workflows/check-current-testthat.yaml b/.github/workflows/check-current-testthat.yaml index a33ddb311..be69d5abb 100644 --- a/.github/workflows/check-current-testthat.yaml +++ b/.github/workflows/check-current-testthat.yaml @@ -86,7 +86,7 @@ jobs: - uses: r-lib/actions/setup-r-dependencies@v2 with: - extra-packages: any::rcmdcheck + extra-packages: any::rcmdcheck, any::pkgload needs: check upgrade: 'TRUE' diff --git a/.github/workflows/check-old-tinytest.yaml b/.github/workflows/check-old-tinytest.yaml index 2a9c94379..d4ebd6024 100644 --- a/.github/workflows/check-old-tinytest.yaml +++ b/.github/workflows/check-old-tinytest.yaml @@ -92,7 +92,7 @@ jobs: mv DESCRIPTION2 DESCRIPTION shell: bash - - name: Run R CMD check + - name: Run R CMD check with tinytest if: always() env: # see https://rstudio.github.io/r-manuals/r-ints/Tools.html for an overview diff --git a/DESCRIPTION b/DESCRIPTION index dd8045479..04cff6d1c 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: AMR -Version: 2.1.1.9140 -Date: 2025-02-05 +Version: 2.1.1.9141 +Date: 2025-02-07 Title: Antimicrobial Resistance Data Analysis Description: Functions to simplify and standardise antimicrobial resistance (AMR) data analysis and to work with microbial and antimicrobial properties by diff --git a/NAMESPACE b/NAMESPACE index e9f742afd..445aee39a 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -236,6 +236,7 @@ export(is.mo) export(is.sir) export(is_new_episode) export(is_sir_eligible) +export(isoxazolylpenicillins) export(italicise_taxonomy) export(italicize_taxonomy) export(key_antimicrobials) @@ -293,6 +294,7 @@ export(mo_type) export(mo_uncertainties) export(mo_url) export(mo_year) +export(monobactams) export(mrgn) export(n_sir) export(nitrofurans) diff --git a/NEWS.md b/NEWS.md index b6cbfe83a..1d47cfa65 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,4 +1,4 @@ -# AMR 2.1.1.9140 +# AMR 2.1.1.9141 *(this beta version will eventually become v3.0. We're happy to reach a new major milestone soon, which will be all about the new One Health support! Install this beta using [the instructions here](https://msberends.github.io/AMR/#latest-development-version).)* @@ -45,25 +45,28 @@ This package now supports not only tools for AMR data analysis in clinical setti * Users can now set their own criteria (using regular expressions) as to what should be considered S, I, R, SDD, and NI. * To get quantitative values, `as.double()` on a `sir` object will return 1 for S, 2 for SDD/I, and 3 for R (NI will become `NA`). Other functions using `sir` classes (e.g., `summary()`) are updated to reflect the change to contain NI and SDD. * `antibiogram()` function - * New argument `formatting_type` to set any of the 12 options for the formatting of all 'cells'. This defaults to `10`, changing the output of antibiograms to cells with `5% (15/300)` instead of the previous standard of just `5`. + * New argument `formatting_type` to set any of the 22 options for the formatting of all 'cells'. This defaults to `10` for non-WISCA and `14` for WISCA, changing the output of antibiograms to cells with more info. * For this reason, `add_total_n` is now `FALSE` at default since the denominators are added to the cells * The `ab_transform` argument now defaults to `"name"`, displaying antibiotic column names instead of codes * Antimicrobial selectors (previously: *antibiotic selectors*) * 'Antibiotic selectors' are now called 'antimicrobial selectors' since their scope is broader than just antibiotics. All documentation have been updated, and `ab_class()` and `ab_selector()` have been replaced with `amr_class()` and `amr_selector()`. The old functions are now deprecated and will be removed in a future version. - * Added selectors `nitrofurans()`, `phenicols()`, and `rifamycins()` - * When using antimicrobial selectors (such as `aminoglycosides()`) that exclude non-treatable drugs (such as gentamicin-high), the function now always returns a warning that these can be included using `only_treatable = FALSE` + * Added selectors `isoxazolylpenicillins()`, `monobactams()`, `nitrofurans()`, `phenicols()`, and `rifamycins()` + * When using antimicrobial selectors that exclude non-treatable drugs (such as gentamicin-high when using `aminoglycosides()`), the function now always returns a warning that these can be included using `only_treatable = FALSE` * Added a new argument `return_all` to all selectors, which defaults to `TRUE` to include any match. With `FALSE`, the old behaviour, only the first hit for each unique antimicrobial is returned. * All selectors can now be run as a separate command to retrieve a vector of all possible antimicrobials that the selector can select + * The selectors `lincosamides()` and `macrolides()` do not overlap anymore - each antibiotic is now classified as either of these and not both * `antibiotics` data set * Added "clindamycin inducible screening" as `CLI1`. Since clindamycin is a lincosamide, the antimicrobial selector `lincosamides()` now contains the argument `only_treatable = TRUE` (similar to other antibiotic selectors that contain non-treatable drugs) * Added Amorolfine (`AMO`, D01AE16), which is now also part of the `antifungals()` selector * Added Efflux (`EFF`), to allow mapping to AMRFinderPlus + * Added Tigemonam (`TNM`), a monobactam * MICs * Added as valid levels: 4096, 6 powers of 0.0625, and 5 powers of 192 (192, 384, 576, 768, 960) * Added new argument `keep_operators` to `as.mic()`. This can be `"all"` (default), `"none"`, or `"edges"`. This argument is also available in the new `rescale_mic()` and `scale_*_mic()` functions. * Comparisons of MIC values are now more strict. For example, `>32` is higher than (and never equal to) `32`. Thus, `as.mic(">32") == as.mic(32)` now returns `FALSE`, and `as.mic(">32") > as.mic(32)` now returns `TRUE`. * Sorting of MIC values (using `sort()`) was fixed in the same manner; `<0.001` now gets sorted before `0.001`, and `>0.001` gets sorted after `0.001`. * Intermediate log2 levels used for MIC plotting are now more common values instead of following a strict dilution range +* `eucast_rules()` now has an argument `overwrite` (default: `TRUE`) to indicate whether non-`NA` values should be overwritten * Disks of 0 to 5 mm are now allowed, the newly allowed range for disk diffusion (`as.disk()`) is now between 0 and 50 mm * Updated `italicise_taxonomy()` to support HTML output * `custom_eucast_rules()` now supports multiple antibiotics and antibiotic groups to be affected by a single rule diff --git a/PythonPackage/AMR/AMR.egg-info/PKG-INFO b/PythonPackage/AMR/AMR.egg-info/PKG-INFO index 869f562b1..9cf5ed913 100644 --- a/PythonPackage/AMR/AMR.egg-info/PKG-INFO +++ b/PythonPackage/AMR/AMR.egg-info/PKG-INFO @@ -1,6 +1,6 @@ Metadata-Version: 2.2 Name: AMR -Version: 2.1.1.9140 +Version: 2.1.1.9141 Summary: A Python wrapper for the AMR R package Home-page: https://github.com/msberends/AMR Author: Matthijs Berends diff --git a/PythonPackage/AMR/AMR/__init__.py b/PythonPackage/AMR/AMR/__init__.py index f952d9d00..4175abe4d 100644 --- a/PythonPackage/AMR/AMR/__init__.py +++ b/PythonPackage/AMR/AMR/__init__.py @@ -45,9 +45,11 @@ from .functions import cephalosporins_4th from .functions import cephalosporins_5th from .functions import fluoroquinolones from .functions import glycopeptides +from .functions import isoxazolylpenicillins from .functions import lincosamides from .functions import lipoglycopeptides from .functions import macrolides +from .functions import monobactams from .functions import nitrofurans from .functions import oxazolidinones from .functions import penicillins diff --git a/PythonPackage/AMR/AMR/functions.py b/PythonPackage/AMR/AMR/functions.py index 2d2160d6e..6963838c7 100644 --- a/PythonPackage/AMR/AMR/functions.py +++ b/PythonPackage/AMR/AMR/functions.py @@ -165,6 +165,9 @@ def fluoroquinolones(only_sir_columns = False, *args, **kwargs): def glycopeptides(only_sir_columns = False, *args, **kwargs): """See our website of the R package for the manual: https://msberends.github.io/AMR/index.html""" return convert_to_python(amr_r.glycopeptides(only_sir_columns = False, *args, **kwargs)) +def isoxazolylpenicillins(only_sir_columns = False, *args, **kwargs): + """See our website of the R package for the manual: https://msberends.github.io/AMR/index.html""" + return convert_to_python(amr_r.isoxazolylpenicillins(only_sir_columns = False, *args, **kwargs)) def lincosamides(only_sir_columns = False, *args, **kwargs): """See our website of the R package for the manual: https://msberends.github.io/AMR/index.html""" return convert_to_python(amr_r.lincosamides(only_sir_columns = False, *args, **kwargs)) @@ -174,6 +177,9 @@ def lipoglycopeptides(only_sir_columns = False, *args, **kwargs): def macrolides(only_sir_columns = False, *args, **kwargs): """See our website of the R package for the manual: https://msberends.github.io/AMR/index.html""" return convert_to_python(amr_r.macrolides(only_sir_columns = False, *args, **kwargs)) +def monobactams(only_sir_columns = False, *args, **kwargs): + """See our website of the R package for the manual: https://msberends.github.io/AMR/index.html""" + return convert_to_python(amr_r.monobactams(only_sir_columns = False, *args, **kwargs)) def nitrofurans(only_sir_columns = False, *args, **kwargs): """See our website of the R package for the manual: https://msberends.github.io/AMR/index.html""" return convert_to_python(amr_r.nitrofurans(only_sir_columns = False, *args, **kwargs)) diff --git a/PythonPackage/AMR/dist/AMR-2.1.1.9140-py3-none-any.whl b/PythonPackage/AMR/dist/AMR-2.1.1.9140-py3-none-any.whl deleted file mode 100644 index c5aa21126365c0c2ba529f62a0d66f14f5417ca0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10211 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 Z?_Yvakq7=IWB}Zsas5Y!%T#|o{STbP?6d#? diff --git a/PythonPackage/AMR/dist/AMR-2.1.1.9141-py3-none-any.whl b/PythonPackage/AMR/dist/AMR-2.1.1.9141-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..4fe0a786c61d1d5e3071cbb6d575ecf9020024d2 GIT binary patch literal 10253 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 literal 0 HcmV?d00001 diff --git a/PythonPackage/AMR/dist/amr-2.1.1.9140.tar.gz b/PythonPackage/AMR/dist/amr-2.1.1.9140.tar.gz deleted file mode 100644 index 70c085e6bdbcc14cf9a7f5398c02bc4ce1e8d9f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10044 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 E0F>AJ4FCWD literal 0 HcmV?d00001 diff --git a/PythonPackage/AMR/setup.py b/PythonPackage/AMR/setup.py index 95d50582f..828e19a18 100644 --- a/PythonPackage/AMR/setup.py +++ b/PythonPackage/AMR/setup.py @@ -2,7 +2,7 @@ from setuptools import setup, find_packages setup( name='AMR', - version='2.1.1.9140', + version='2.1.1.9141', packages=find_packages(), install_requires=[ 'rpy2', diff --git a/R/aa_globals.R b/R/aa_globals.R index dd309c5b3..121aed17b 100755 --- a/R/aa_globals.R +++ b/R/aa_globals.R @@ -113,7 +113,7 @@ TAXONOMY_VERSION <- list( name = "Systematized Nomenclature of Medicine - Clinical Terms (SNOMED-CT)", accessed_date = as.Date("2024-07-16"), citation = "Public Health Information Network Vocabulary Access and Distribution System (PHIN VADS). US Edition of SNOMED CT from 1 September 2020. Value Set Name 'Microorganism', OID 2.16.840.1.114222.4.11.1009 (v12).", - url = "https://www.cdc.gov/phin/php/phinvads" + url = "https://www.cdc.gov/phin/php/phinvads/" ), LOINC = list( name = "Logical Observation Identifiers Names and Codes (LOINC)", diff --git a/R/amr_selectors.R b/R/amr_selectors.R index 15099d248..67630c6ff 100755 --- a/R/amr_selectors.R +++ b/R/amr_selectors.R @@ -403,6 +403,14 @@ glycopeptides <- function(only_sir_columns = FALSE, return_all = TRUE, ...) { amr_select_exec("glycopeptides", only_sir_columns = only_sir_columns, return_all = return_all) } +#' @rdname antimicrobial_class_selectors +#' @export +isoxazolylpenicillins <- function(only_sir_columns = FALSE, return_all = TRUE, ...) { + meet_criteria(only_sir_columns, allow_class = "logical", has_length = 1) + meet_criteria(return_all, allow_class = "logical", has_length = 1) + amr_select_exec("isoxazolylpenicillins", only_sir_columns = only_sir_columns, return_all = return_all) +} + #' @rdname antimicrobial_class_selectors #' @export lincosamides <- function(only_sir_columns = FALSE, only_treatable = TRUE, return_all = TRUE, ...) { @@ -428,6 +436,14 @@ macrolides <- function(only_sir_columns = FALSE, return_all = TRUE, ...) { amr_select_exec("macrolides", only_sir_columns = only_sir_columns, return_all = return_all) } +#' @rdname antimicrobial_class_selectors +#' @export +monobactams <- function(only_sir_columns = FALSE, return_all = TRUE, ...) { + meet_criteria(only_sir_columns, allow_class = "logical", has_length = 1) + meet_criteria(return_all, allow_class = "logical", has_length = 1) + amr_select_exec("monobactams", only_sir_columns = only_sir_columns, return_all = return_all) +} + #' @rdname antimicrobial_class_selectors #' @export nitrofurans <- function(only_sir_columns = FALSE, return_all = TRUE, ...) { diff --git a/R/antibiogram.R b/R/antibiogram.R index af0f53790..9ea996df9 100755 --- a/R/antibiogram.R +++ b/R/antibiogram.R @@ -481,10 +481,10 @@ antibiogram.default <- function(x, x$`.mo` <- x[, col_mo, drop = TRUE] if (is.null(mo_transform)) { # leave as is, no transformation - } else if (is.na(mo_transform)) { - x$`.mo` <- NA_character_ } else if (is.function(mo_transform)) { x$`.mo` <- mo_transform(x$`.mo`) + } else if (is.na(mo_transform)) { + x$`.mo` <- NA_character_ } else if (mo_transform == "gramstain") { x$`.mo` <- mo_gramstain(x$`.mo`, language = language) } else if (mo_transform == "shortname") { @@ -602,8 +602,8 @@ antibiogram.default <- function(x, on.exit(close(progress)) out$coverage <- NA_real_ - out$lower <- NA_real_ - out$upper <- NA_real_ + out$lower_ci <- NA_real_ + out$upper_ci <- NA_real_ out$gamma_posterior <- NA_real_ out$beta_posterior_1 <- NA_real_ out$beta_posterior_2 <- NA_real_ @@ -657,8 +657,8 @@ antibiogram.default <- function(x, coverage_ci <- unname(stats::quantile(coverage_simulations, probs = probs)) out$coverage[i] <- coverage_mean - out$lower[i] <- coverage_ci[1] - out$upper[i] <- coverage_ci[2] + out$lower_ci[i] <- coverage_ci[1] + out$upper_ci[i] <- coverage_ci[2] } # remove progress bar from console close(progress) @@ -705,8 +705,8 @@ antibiogram.default <- function(x, if (wisca == TRUE) { long_numeric <- out %pm>% pm_summarise(coverage = coverage, - lower_ci = lower, - upper_ci = upper, + lower_ci = lower_ci, + upper_ci = upper_ci, n_tested = total, n_total = total_rows, n_susceptible = numerator, @@ -758,12 +758,12 @@ antibiogram.default <- function(x, if (formatting_type == 10) out <- out %pm>% pm_summarise(out_value = paste0(round((numerator / total) * 100, digits = digits), "% (", numerator, "/", total, ")")) if (formatting_type == 11) out <- out %pm>% pm_summarise(out_value = paste0(round((numerator / total) * 100, digits = digits), " (N=", numerator, "/", total, ")")) if (formatting_type == 12) out <- out %pm>% pm_summarise(out_value = paste0(round((numerator / total) * 100, digits = digits), "% (N=", numerator, "/", total, ")")) - if (formatting_type == 13) out <- out %pm>% pm_summarise(out_value = paste0(round(coverage * 100, digits = digits), " (", round(lower * 100, digits = digits), "-", round(upper * 100, digits = digits), ")")) - if (formatting_type == 14) out <- out %pm>% pm_summarise(out_value = paste0(round(coverage * 100, digits = digits), "% (", round(lower * 100, digits = digits), "-", round(upper * 100, digits = digits), "%)")) - if (formatting_type == 15) out <- out %pm>% pm_summarise(out_value = paste0(round(coverage * 100, digits = digits), " (", round(lower * 100, digits = digits), "-", round(upper * 100, digits = digits), ",", total, ")")) - if (formatting_type == 16) out <- out %pm>% pm_summarise(out_value = paste0(round(coverage * 100, digits = digits), "% (", round(lower * 100, digits = digits), "-", round(upper * 100, digits = digits), "%,", total, ")")) - if (formatting_type == 17) out <- out %pm>% pm_summarise(out_value = paste0(round(coverage * 100, digits = digits), " (", round(lower * 100, digits = digits), "-", round(upper * 100, digits = digits), ",N=", total, ")")) - if (formatting_type == 18) out <- out %pm>% pm_summarise(out_value = paste0(round(coverage * 100, digits = digits), "% (", round(lower * 100, digits = digits), "-", round(upper * 100, digits = digits), "%,N=", total, ")")) + if (formatting_type == 13) out <- out %pm>% pm_summarise(out_value = paste0(round(coverage * 100, digits = digits), " (", round(lower_ci * 100, digits = digits), "-", round(upper_ci * 100, digits = digits), ")")) + if (formatting_type == 14) out <- out %pm>% pm_summarise(out_value = paste0(round(coverage * 100, digits = digits), "% (", round(lower_ci * 100, digits = digits), "-", round(upper_ci * 100, digits = digits), "%)")) + if (formatting_type == 15) out <- out %pm>% pm_summarise(out_value = paste0(round(coverage * 100, digits = digits), " (", round(lower_ci * 100, digits = digits), "-", round(upper_ci * 100, digits = digits), ",", total, ")")) + if (formatting_type == 16) out <- out %pm>% pm_summarise(out_value = paste0(round(coverage * 100, digits = digits), "% (", round(lower_ci * 100, digits = digits), "-", round(upper_ci * 100, digits = digits), "%,", total, ")")) + if (formatting_type == 17) out <- out %pm>% pm_summarise(out_value = paste0(round(coverage * 100, digits = digits), " (", round(lower_ci * 100, digits = digits), "-", round(upper_ci * 100, digits = digits), ",N=", total, ")")) + if (formatting_type == 18) out <- out %pm>% pm_summarise(out_value = paste0(round(coverage * 100, digits = digits), "% (", round(lower_ci * 100, digits = digits), "-", round(upper_ci * 100, digits = digits), "%,N=", total, ")")) # transform names of antibiotics ab_naming_function <- function(x, t, l, s) { @@ -1100,11 +1100,11 @@ plot.antibiogram <- function(x, ...) { ) if (isTRUE(attributes(x)$wisca)) { - lower <- df_sub$lower * 100 - upper <- df_sub$upper * 100 + lower_ci <- df_sub$lower_ci * 100 + upper_ci <- df_sub$upper_ci * 100 arrows( - x0 = bp, y0 = lower, # Start of error bar (lower bound) - x1 = bp, y1 = upper, # End of error bar (upper bound) + x0 = bp, y0 = lower_ci, # Start of error bar (lower bound) + x1 = bp, y1 = upper_ci, # End of error bar (upper bound) angle = 90, code = 3, length = 0.05, col = "black" ) } @@ -1151,7 +1151,7 @@ autoplot.antibiogram <- function(object, ...) { ) if (isTRUE(attributes(object)$wisca)) { out <- out + - ggplot2::geom_errorbar(mapping = ggplot2::aes(ymin = lower * 100, ymax = upper * 100), + ggplot2::geom_errorbar(mapping = ggplot2::aes(ymin = lower_ci * 100, ymax = upper_ci * 100), position = ggplot2::position_dodge2(preserve = "single"), width = 0.5) } diff --git a/R/eucast_rules.R b/R/eucast_rules.R index 6cd62ccc0..2a83872b8 100755 --- a/R/eucast_rules.R +++ b/R/eucast_rules.R @@ -56,7 +56,7 @@ format_eucast_version_nr <- function(version, markdown = TRUE) { #' Apply EUCAST Rules #' #' @description -#' Apply rules for clinical breakpoints and intrinsic resistance as defined by the European Committee on Antimicrobial Susceptibility Testing (EUCAST, ), see *Source*. Use [eucast_dosage()] to get a [data.frame] with advised dosages of a certain bug-drug combination, which is based on the [dosage] data set. +#' Apply rules from clinical breakpoints notes and expected resistant phenotypes as defined by the European Committee on Antimicrobial Susceptibility Testing (EUCAST, ), see *Source*. Use [eucast_dosage()] to get a [data.frame] with advised dosages of a certain bug-drug combination, which is based on the [dosage] data set. #' #' To improve the interpretation of the antibiogram before EUCAST rules are applied, some non-EUCAST rules can applied at default, see *Details*. #' @param x a data set with antibiotic columns, such as `amox`, `AMX` and `AMC` @@ -72,6 +72,7 @@ format_eucast_version_nr <- function(version, markdown = TRUE) { #' @param administration route of administration, either `r vector_or(dosage$administration)` #' @param only_sir_columns a [logical] to indicate whether only antibiotic columns must be detected that were transformed to class `sir` (see [as.sir()]) on beforehand (default is `FALSE`) #' @param custom_rules custom rules to apply, created with [custom_eucast_rules()] +#' @param overwrite a [logical] to indicate whether non-`NA` values must be overwritten (defaults to `TRUE`). With `FALSE`, only `NA` values are changed. #' @inheritParams first_isolate #' @details #' **Note:** This function does not translate MIC values to SIR values. Use [as.sir()] for that. \cr @@ -172,6 +173,7 @@ eucast_rules <- function(x, ampc_cephalosporin_resistance = NA, only_sir_columns = FALSE, custom_rules = NULL, + overwrite = TRUE, ...) { meet_criteria(x, allow_class = "data.frame") meet_criteria(col_mo, allow_class = "character", has_length = 1, is_in = colnames(x), allow_NULL = TRUE) @@ -184,6 +186,7 @@ eucast_rules <- function(x, meet_criteria(ampc_cephalosporin_resistance, allow_class = c("logical", "character", "sir"), has_length = 1, allow_NA = TRUE, allow_NULL = TRUE) meet_criteria(only_sir_columns, allow_class = "logical", has_length = 1) meet_criteria(custom_rules, allow_class = "custom_eucast_rules", allow_NULL = TRUE) + meet_criteria(overwrite, allow_class = "logical", has_length = 1) add_MO_lookup_to_AMR_env() @@ -254,18 +257,18 @@ eucast_rules <- function(x, } else { # opening if (n_added > 0 && n_changed == 0) { - cat(font_green(" (")) + cat(font_bold(font_green(" ("))) } else if (n_added == 0 && n_changed > 0) { - cat(font_blue(" (")) + cat(font_bold(font_blue(" ("))) } else { cat(font_grey(" (")) } # additions if (n_added > 0) { if (n_added == 1) { - cat(font_green("1 value added")) + cat(font_bold(font_green("1 value added"))) } else { - cat(font_green(formatnr(n_added), "values added")) + cat(font_bold(font_green(formatnr(n_added), "values added"))) } } # separator @@ -275,16 +278,16 @@ eucast_rules <- function(x, # changes if (n_changed > 0) { if (n_changed == 1) { - cat(font_blue("1 value changed")) + cat(font_bold(font_blue("1 value changed"))) } else { - cat(font_blue(formatnr(n_changed), "values changed")) + cat(font_bold(font_blue(formatnr(n_changed), "values changed"))) } } # closing if (n_added > 0 && n_changed == 0) { - cat(font_green(")\n")) + cat(font_bold(font_green(")\n"))) } else if (n_added == 0 && n_changed > 0) { - cat(font_blue(")\n")) + cat(font_bold(font_blue(")\n"))) } else { cat(font_grey(")\n")) } @@ -327,6 +330,10 @@ eucast_rules <- function(x, } cols_ab <- c(cols_ab, c(AMP = unname(cols_ab[names(cols_ab) == "AMX"]))) } + if (!"FOX" %in% names(cols_ab) && "FOX1" %in% names(cols_ab)) { + # cefoxitin column is missing, but cefoxitin screening is available + cols_ab <- c(cols_ab, c(FOX = unname(cols_ab[names(cols_ab) == "FOX1"]))) + } # data preparation ---- if (isTRUE(info) && NROW(x) > 10000) { @@ -359,10 +366,8 @@ eucast_rules <- function(x, # like PEN,FOX S x <- paste(paste0(ab_names, collapse = " and "), "are both") } else { - # like PEN,FOX,GEN S (although dependency on > 2 ABx does not exist at the moment) - # nolint start - # x <- paste(paste0(ab_names, collapse = " and "), "are all") - # nolint end + # like PEN,FOX,GEN S + x <- paste(paste0(ab_names, collapse = " and "), "are all") } return(paste0(x, " '", ab_results, "'")) } else { @@ -373,7 +378,7 @@ eucast_rules <- function(x, ab_names[2], " is '", ab_results[2], "'" ) } else { - # like PEN,FOX,GEN S,R,R (although dependency on > 2 ABx does not exist at the moment) + # like PEN,FOX,GEN S,R,R paste0( ab_names[1], " is '", ab_results[1], "' and ", ab_names[2], " is '", ab_results[2], "' and ", @@ -452,7 +457,7 @@ eucast_rules <- function(x, n_added <- 0 n_changed <- 0 - # Other rules: enzyme inhibitors ------------------------------------------ + # >>> Apply Other rules: enzyme inhibitors <<< ------------------------------------------ if (any(c("all", "other") %in% rules)) { if (isTRUE(info)) { cat("\n") @@ -488,7 +493,7 @@ eucast_rules <- function(x, col_base <- unname(cols_ab[ab_enzyme$base_ab[i]]) col_enzyme <- unname(cols_ab[ab_enzyme$enzyme_ab[i]]) - # Set base to R where base + enzyme inhibitor is R ---- + ## Set base to R where base + enzyme inhibitor is R ---- rule_current <- paste0( ab_enzyme$base_name[i], " ('", font_bold(col_base), "') = R if ", tolower(ab_enzyme$enzyme_name[i]), " ('", font_bold(col_enzyme), "') = R" @@ -512,7 +517,8 @@ eucast_rules <- function(x, original_data = x.bak, warned = warned, info = info, - verbose = verbose + verbose = verbose, + overwrite = overwrite ) n_added <- n_added + run_changes$added n_changed <- n_changed + run_changes$changed @@ -528,7 +534,7 @@ eucast_rules <- function(x, n_changed <- 0 } - # Set base + enzyme inhibitor to S where base is S ---- + ## Set base + enzyme inhibitor to S where base is S ---- rule_current <- paste0( ab_enzyme$enzyme_name[i], " ('", font_bold(col_enzyme), "') = S if ", tolower(ab_enzyme$base_name[i]), " ('", font_bold(col_base), "') = S" @@ -584,7 +590,7 @@ eucast_rules <- function(x, custom_rules <- NULL } - # Official EUCAST rules --------------------------------------------------- + # >>> Apply Official EUCAST rules <<< --------------------------------------------------- eucast_notification_shown <- FALSE if (!is.null(list(...)$eucast_rules_df)) { # this allows: eucast_rules(x, eucast_rules_df = AMR:::EUCAST_RULES_DF %>% filter(is.na(have_these_values))) @@ -594,7 +600,7 @@ eucast_rules <- function(x, eucast_rules_df <- EUCAST_RULES_DF } - # filter on user-set guideline versions ---- + ## filter on user-set guideline versions ---- if (any(c("all", "breakpoints") %in% rules)) { eucast_rules_df <- subset( eucast_rules_df, @@ -609,7 +615,7 @@ eucast_rules <- function(x, (reference.rule_group %like% "expert" & reference.version == version_expertrules) ) } - # filter out AmpC de-repressed cephalosporin-resistant mutants ---- + ## filter out AmpC de-repressed cephalosporin-resistant mutants ---- # no need to filter on version number here - the rules contain these version number, so are inherently filtered # cefotaxime, ceftriaxone, ceftazidime if (is.null(ampc_cephalosporin_resistance) || isFALSE(ampc_cephalosporin_resistance)) { @@ -624,7 +630,7 @@ eucast_rules <- function(x, eucast_rules_df[which(eucast_rules_df$reference.rule %like% "ampc"), "to_value"] <- as.character(ampc_cephalosporin_resistance) } - # Go over all rules and apply them ---- + ## Go over all rules and apply them ---- for (i in seq_len(nrow(eucast_rules_df))) { rule_previous <- eucast_rules_df[max(1, i - 1), "reference.rule", drop = TRUE] rule_current <- eucast_rules_df[i, "reference.rule", drop = TRUE] @@ -664,19 +670,19 @@ eucast_rules <- function(x, } if (isTRUE(info)) { - # Print EUCAST intro ------------------------------------------------------ + ## Print EUCAST intro ------------------------------------------------------ if (rule_group_current %unlike% "other" && eucast_notification_shown == FALSE) { cat( paste0( "\n", font_grey(strrep("-", 0.95 * getOption("width", 100))), "\n", word_wrap("Rules by the ", font_bold("European Committee on Antimicrobial Susceptibility Testing (EUCAST)")), "\n", - font_blue("https://eucast.org/"), "\n" + font_blue(font_url("https://eucast.org/")), "\n" ) ) eucast_notification_shown <- TRUE } - # Print rule (group) ------------------------------------------------------ + ## Print rule (group) ------------------------------------------------------ if (rule_group_current != rule_group_previous) { # is new rule group, one of Breakpoints, Expert Rules and Other cat(font_bold( @@ -703,7 +709,7 @@ eucast_rules <- function(x, ) ), "\n") } - # Print rule ------------------------------------------------------------- + ## Print rule ------------------------------------------------------------- if (rule_current != rule_previous) { # is new rule within group, print its name cat(italicise_taxonomy( @@ -717,7 +723,7 @@ eucast_rules <- function(x, } } - # Get rule from file ------------------------------------------------------ + ## Get rule from file ------------------------------------------------------ if_mo_property <- trimws(eucast_rules_df[i, "if_mo_property", drop = TRUE]) like_is_one_of <- trimws(eucast_rules_df[i, "like.is.one_of", drop = TRUE]) mo_value <- trimws(eucast_rules_df[i, "this_value", drop = TRUE]) @@ -824,7 +830,7 @@ eucast_rules <- function(x, cols <- get_ab_from_namespace(target_antibiotics, cols_ab) - # Apply rule on data ------------------------------------------------------ + ## Apply rule on data ------------------------------------------------------ # this will return the unique number of changes run_changes <- edit_sir( x = x, @@ -842,14 +848,15 @@ eucast_rules <- function(x, original_data = x.bak, warned = warned, info = info, - verbose = verbose + verbose = verbose, + overwrite = overwrite ) n_added <- n_added + run_changes$added n_changed <- n_changed + run_changes$changed verbose_info <- run_changes$verbose_info x <- run_changes$output warn_lacking_sir_class <- c(warn_lacking_sir_class, run_changes$sir_warn) - # Print number of new changes --------------------------------------------- + ## Print number of new changes --------------------------------------------- if (isTRUE(info) && rule_next != rule_current) { # print only on last one of rules in this group txt_ok(n_added = n_added, n_changed = n_changed, warned = warned) @@ -859,7 +866,7 @@ eucast_rules <- function(x, } } # end of going over all rules - # Apply custom rules ---- + # >>> Apply custom rules <<< ---- if (!is.null(custom_rules)) { if (isTRUE(info)) { cat("\n") @@ -910,14 +917,15 @@ eucast_rules <- function(x, original_data = x.bak, warned = warned, info = info, - verbose = verbose + verbose = verbose, + overwrite = overwrite ) n_added <- n_added + run_changes$added n_changed <- n_changed + run_changes$changed verbose_info <- run_changes$verbose_info x <- run_changes$output warn_lacking_sir_class <- c(warn_lacking_sir_class, run_changes$sir_warn) - # Print number of new changes --------------------------------------------- + ## Print number of new changes --------------------------------------------- if (isTRUE(info) && rule_next != rule_current) { # print only on last one of rules in this group txt_ok(n_added = n_added, n_changed = n_changed, warned = warned) @@ -940,6 +948,10 @@ eucast_rules <- function(x, pm_select(row, pm_everything()) %pm>% pm_filter(!is.na(new) | is.na(new) & !is.na(old)) %pm>% pm_arrange(row, rule_group, rule_name, col) + if (isFALSE(overwrite)) { + verbose_info <- verbose_info %pm>% + pm_filter(!old %in% levels(NA_sir_)) + } rownames(verbose_info) <- NULL } @@ -1074,7 +1086,8 @@ edit_sir <- function(x, original_data, warned, info, - verbose) { + verbose, + overwrite) { cols <- unique(cols[!is.na(cols) & !is.null(cols)]) # for Verbose Mode, keep track of all changes and return them @@ -1101,9 +1114,14 @@ edit_sir <- function(x, if (any(!vapply(FUN.VALUE = logical(1), x[, cols, drop = FALSE], is.sir), na.rm = TRUE)) { track_changes$sir_warn <- cols[!vapply(FUN.VALUE = logical(1), x[, cols, drop = FALSE], is.sir)] } + non_SIR <- !(new_edits[rows, cols] == "S" | new_edits[rows, cols] == "I" | new_edits[rows, cols] == "R" | new_edits[rows, cols] == "SDD" | new_edits[rows, cols] == "NI") tryCatch( # insert into original table - new_edits[rows, cols] <- to, + if (isTRUE(overwrite)) { + new_edits[rows, cols] <- to + } else { + new_edits[rows, cols][non_SIR] <- to + }, warning = function(w) { if (w$message %like% "invalid factor level") { xyz <- vapply(FUN.VALUE = logical(1), cols, function(col) { @@ -1113,7 +1131,11 @@ edit_sir <- function(x, ) TRUE }) - suppressWarnings(new_edits[rows, cols] <<- to) + if (isTRUE(overwrite)) { + suppressWarnings(new_edits[rows, cols] <<- to) + } else { + suppressWarnings(new_edits[rows, cols][non_SIR] <<- to) + } warning_( "in `eucast_rules()`: value \"", to, "\" added to the factor levels of column", ifelse(length(cols) == 1, "", "s"), diff --git a/R/first_isolate.R b/R/first_isolate.R index e5a52ff2e..b8508fc5f 100644 --- a/R/first_isolate.R +++ b/R/first_isolate.R @@ -51,8 +51,8 @@ #' @param include_untested_sir a [logical] to indicate whether also rows without antibiotic results are still eligible for becoming a first isolate. Use `include_untested_sir = FALSE` to always return `FALSE` for such rows. This checks the data set for columns of class `sir` and consequently requires transforming columns with antibiotic results using [as.sir()] first. #' @param ... arguments passed on to [first_isolate()] when using [filter_first_isolate()], otherwise arguments passed on to [key_antimicrobials()] (such as `universal`, `gram_negative`, `gram_positive`) #' @details -#' The methodology implemented in these functions is based on the research overview by Hindler *et al.* (2007, \doi{10.1086/511864}) and the recommendations outlined in the [CLSI Guideline M39](https://clsi.org/standards/products/microbiology/documents/m39). - +#' The methodology implemented in these functions is strictly based on the recommendations outlined in [CLSI Guideline M39](https://clsi.org/standards/products/microbiology/documents/m39) and the research overview by Hindler *et al.* (2007, \doi{10.1086/511864}). +#' #' To conduct epidemiological analyses on antimicrobial resistance data, only so-called first isolates should be included to prevent overestimation and underestimation of antimicrobial resistance. Different methods can be used to do so, see below. #' #' These functions are context-aware. This means that the `x` argument can be left blank if used inside a [data.frame] call, see *Examples*. @@ -126,7 +126,7 @@ #' @seealso [key_antimicrobials()] #' @export #' @return A [logical] vector -#' @source Methodology of this function is strictly based on: +#' @source Methodology of these functions is strictly based on: #' #' - **M39 Analysis and Presentation of Cumulative Antimicrobial Susceptibility Test Data, 5th Edition**, 2022, *Clinical and Laboratory Standards Institute (CLSI)*. . #' diff --git a/R/sysdata.rda b/R/sysdata.rda index 69d56296f74cb799e8b3807658f6ae5644579a7c..c30d253370ba824f3150cb8accbc6de701396fac 100755 GIT binary patch delta 54009 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�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 pre_commit_lst$AB_GLYCOPEPTIDES <- antibiotics %>% filter(group %like% "glycopeptide") %>% pull(ab) +pre_commit_lst$AB_ISOXAZOLYLPENICILLINS <- antibiotics %>% + filter(name %like% "oxacillin|cloxacillin|dicloxacillin|flucloxacillin|meth?icillin") %>% + pull(ab) pre_commit_lst$AB_LIPOGLYCOPEPTIDES <- as.ab(c("DAL", "ORI", "TLV")) # dalba/orita/tela pre_commit_lst$AB_GLYCOPEPTIDES_EXCEPT_LIPO <- pre_commit_lst$AB_GLYCOPEPTIDES[!pre_commit_lst$AB_GLYCOPEPTIDES %in% pre_commit_lst$AB_LIPOGLYCOPEPTIDES] pre_commit_lst$AB_LINCOSAMIDES <- antibiotics %>% - filter(atc_group2 %like% "lincosamide" | (group %like% "lincosamide" & is.na(atc_group2))) %>% + filter(atc_group2 %like% "lincosamide" | (group %like% "lincosamide" & is.na(atc_group2) & name %like% "^(pirlimycin)" & name %unlike% "screening|inducible")) %>% pull(ab) pre_commit_lst$AB_MACROLIDES <- antibiotics %>% - filter(atc_group2 %like% "macrolide" | (group %like% "macrolide" & is.na(atc_group2) & name %unlike% "screening|inducible")) %>% + filter(atc_group2 %like% "macrolide" | (group %like% "macrolide" & is.na(atc_group2) & name %like% "^(acetylmidecamycin|acetylspiramycin|gamith?romycin|kitasamycin|meleumycin|nafith?romycin|solith?romycin|tildipirosin|tilmicosin|tulath?romycin|tylosin|tylvalosin)" & name %unlike% "screening|inducible")) %>% + pull(ab) +pre_commit_lst$AB_MONOBACTAMS <- antibiotics %>% + filter(group %like% "monobactam") %>% pull(ab) pre_commit_lst$AB_NITROFURANS <- antibiotics %>% filter(name %like% "^furaz|nitrofura" | atc_group2 %like% "nitrofuran") %>% @@ -417,7 +423,7 @@ pre_commit_lst$AB_OXAZOLIDINONES <- antibiotics %>% filter(group %like% "oxazolidinone") %>% pull(ab) pre_commit_lst$AB_PENICILLINS <- antibiotics %>% - filter(group %like% "penicillin") %>% + filter(group %like% "penicillin" & !(name %unlike% "/" & name %like% ".*bactam$")) %>% pull(ab) pre_commit_lst$AB_PHENICOLS <- antibiotics %>% filter(group %like% "phenicol" | atc_group1 %like% "phenicol" | atc_group2 %like% "phenicol") %>% @@ -442,7 +448,7 @@ pre_commit_lst$AB_TRIMETHOPRIMS <- antibiotics %>% filter(group %like% "trimethoprim") %>% pull(ab) pre_commit_lst$AB_UREIDOPENICILLINS <- as.ab(c("PIP", "TZP", "AZL", "MEZ")) -pre_commit_lst$AB_BETALACTAMS <- c(pre_commit_lst$AB_PENICILLINS, pre_commit_lst$AB_CEPHALOSPORINS, pre_commit_lst$AB_CARBAPENEMS) +pre_commit_lst$AB_BETALACTAMS <- sort(c(pre_commit_lst$AB_PENICILLINS, pre_commit_lst$AB_CEPHALOSPORINS, pre_commit_lst$AB_CARBAPENEMS, pre_commit_lst$AB_MONOBACTAMS)) pre_commit_lst$AB_BETALACTAMS_WITH_INHIBITOR <- antibiotics %>% filter(name %like% "/" & name %unlike% "EDTA" & ab %in% pre_commit_lst$AB_BETALACTAMS) %>% pull(ab) diff --git a/data-raw/ab.md5 b/data-raw/ab.md5 index fe0ecd4ac..14ec09840 100644 --- a/data-raw/ab.md5 +++ b/data-raw/ab.md5 @@ -1 +1 @@ -33a6626c9ac1ca6c5c13ad96588d11e5 +f946ff259f0e2cb1313508eab84bfd4c diff --git a/data-raw/antibiotics.dta b/data-raw/antibiotics.dta index 969e19c82201f6f0afbbaf88690dd4287b459afd..16e97b848a2b0808d6ed94fa8ae131f395e157da 100644 GIT binary patch delta 1809 zcmY+Edr;KX9>6H$mCJXgWiBL)5vZ7FJdu_ApT^(x##BqD}RiIj`^Ud%oxM zeVp_0q2%5p$xVyIK=b0e497INT&!+Sbkfi{N@i!WOq7xQ^HD{uR?(DXMkt(zg5#HQCov`KCzZf1H-DA;n_!iPq{ zxI4FQiBaM81^n3gxS03{06qVpY7+FubE;P0xEE9smA0uGL2oyy#{_1zDkl}ZpuUl^ zM_^l_7)!;iyu#caDi)ueDPyQ;yBd@@XQzs#!X4_mq{23}RnXB_q6Qc2x?%8pDgKYa z9CIqI-lfhXO8& zi^`7kE~@d=a8Z3H?7pB;71a!S{q8`>O*NNPmKEu`a$q}m)O}qQXp|B%C`ZCf3pQB6 zhK3d5>1ivB*LY|&OjDJ{YM+}fjD~mR=%_W1w>%gq3)C7ux5p@>cN|b}MrRUa(&8k@ zGLIR7W2Kt%>wKD>wZb0HHwb0Lv-&V^VLzFz<_ z*iitt(T4?4V#eu3FcC9~ARhl!1cO*n3>mn%nAM*thMrigS_XDpz6{1t!!l?Tc}!0Rb%!7OoBBV038`oc729mJaN zE~~G+Q9(Y=OrXL$QcXAJb$`x{HRM?j?E)Pe7(s1d2eLQ7y#gCILL3?!IUQR!!i$=7 z<=6@?nzt4FChTg46zpu~pMA~nfC*={!W7JGWqzX-`2H?IxC`@;(drR4kK)ZkufQyt z{VHThT-y#4aCJKu>g(2gR2-uwtIiPOIPQtn8^sB{&!(4PuT5KUyG_sI2l1>;CyA3ZWYaGR?67M)HrcfU z_t^Cmahm$zc>12{p`|gyPelxrK z_Iq!C@Av-fULJH054c;`iGQ@MUznVem-(m>%FJDso0plB_h8{6dtdJUV`IT>srS|9uKRG?ucWs(*taP^F5ydq zLiLW_{6gKa>G+|<7Sj~&9^dpGH7*yeVn?Tl4avjC!%m$-!7l1)RdqrR33_9r+9l}N zZrlTRQFNRijdTOjUhK z*~BOK`dQl?dg*U$DKAcvO89$><0XM#1?5~i&>!P*S>P)rB7?e5#0c&%rOQ+-86DkF} zd7`rus#xQw0>@Op5isklkU>in6enPV1DwL3CI>9ncs&JNNGXs@Kcv86iN{hQ8M{&; ziB6_Mz>W{6Lkg9qL%to`JaCsV2|e(w&;j-zH0$u!S+E{QvS3t1@U3j{%$(-+RkAYd zvns5RFKR}sjS$_+h6~fBRf{7z;KsAdU>|PDfhwBFfo}mPR)EW9a-?b{JZ8gaKBVA= zeDF|9KJ2pLy@fCva|>Z6W)#9*_|rmog!UK0HHrI+_-A7gL-rKGaeT3u4Xt9xrh~HnnuvS1bkEZ8HHBjJ!0FJz@v!Kt#gk}CkSgp3$CHwcSp zLlBAqdn3#YBjBd@BXCRLCpEl3SpzQmvIdfw=@yP;qLx|A-vYxL=QZ;F`vy)$UL)A0 z3`X((CipL{Y=)`!xzCz$k3lX@*s6_nQCzIpT4~|q+nHMRc6ga@@J`Ow^quVVft|2I zU}Fo%6K(+~wYNaK#^r4s%EC5q(5f~F*>Jd>_0$gYXsjK6V#D&i+*^zHLJo!Z!g+z# zJ|aGepfD$MvzsjoJ+ z#(Dw!;YT*d?ZB%ozrl@a;?)yip*6sWs|PrO`T_W>a#i}`iK?#g2N)>cNJWEiL*UvW z&VSAjcb+i>Cv+qduCQu?n0^XM>4j4;AhF~OEXMoKa7DsrVA_4yDzz8uq@GQGmfAi| zR~f;u5jF8pqFz9sC+buohVVZ#v{#(M42Pa8KEQ_@x=fs=4u{SX;tU>7(%Z#{_^?y| zOnihLPQBWFR>YtEDb2CxKNQ_sVMeBuZdjMVyK^+*)Lg_amrlVBmrlatE`6`KKw~al zuEfXqNUA=LNpp0TEocU4;T-*tz~(gV#-p*xm!>mRrCDbLs6S1=!>=ke&C_lnF5-a< zUF*K||DL&xYK_pO=gYV(Qx}O(F`B8L@m!fSOk`3u0c$dolh&W%zcTf@$xJhh@AmaF gaid2+C`Pc=qfuO?g<(NJ0}3MP!iI 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 delta 12338 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 diff --git a/data-raw/antibiotics.parquet b/data-raw/antibiotics.parquet index 3436f3dfa0dd9e48912f703351c3caf7c3fe2255..013ecebc9e0448e6a40a4220100f6eb63f43da99 100644 GIT binary patch delta 16108 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