Compare commits
@@ -23,8 +23,11 @@
|
|||||||
^data-raw$
|
^data-raw$
|
||||||
^\.lintr$
|
^\.lintr$
|
||||||
^tests/testthat/_snaps$
|
^tests/testthat/_snaps$
|
||||||
|
^vignettes/AMR.Rmd$
|
||||||
^vignettes/benchmarks.Rmd$
|
^vignettes/benchmarks.Rmd$
|
||||||
|
^vignettes/datasets.Rmd$
|
||||||
^vignettes/EUCAST.Rmd$
|
^vignettes/EUCAST.Rmd$
|
||||||
|
^vignettes/MDR.Rmd$
|
||||||
^vignettes/PCA.Rmd$
|
^vignettes/PCA.Rmd$
|
||||||
^vignettes/resistance_predict.Rmd$
|
^vignettes/resistance_predict.Rmd$
|
||||||
^vignettes/SPSS.Rmd$
|
^vignettes/SPSS.Rmd$
|
||||||
|
|||||||
@@ -23,6 +23,8 @@
|
|||||||
# how to conduct AMR data analysis: https://msberends.github.io/AMR/ #
|
# how to conduct AMR data analysis: https://msberends.github.io/AMR/ #
|
||||||
# ==================================================================== #
|
# ==================================================================== #
|
||||||
|
|
||||||
|
# This GitHub Actions file runs without ANY dependency, so works on all versions of R since R-3.0.
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
@@ -32,9 +34,9 @@ on:
|
|||||||
branches:
|
branches:
|
||||||
- master
|
- master
|
||||||
schedule:
|
schedule:
|
||||||
# run a schedule everyday at 3 AM.
|
# run a schedule everyday at 1 AM.
|
||||||
# this is to check that all dependencies are still available (see R/zzz.R)
|
# this is to check that all dependencies are still available (see R/zzz.R)
|
||||||
- cron: '0 3 * * *'
|
- cron: '0 1 * * *'
|
||||||
|
|
||||||
name: R-code-check
|
name: R-code-check
|
||||||
|
|
||||||
@@ -51,35 +53,44 @@ jobs:
|
|||||||
matrix:
|
matrix:
|
||||||
config:
|
config:
|
||||||
# these are the developmental version of R - we allow those tests to fail
|
# these are the developmental version of R - we allow those tests to fail
|
||||||
- {os: macOS-latest, r: 'devel', allowfail: true}
|
- {os: macOS-latest, r: 'devel', allowfail: false}
|
||||||
- {os: windows-latest, r: 'devel', allowfail: true}
|
- {os: windows-latest, r: 'devel', allowfail: false}
|
||||||
- {os: ubuntu-20.04, r: 'devel', allowfail: true, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
- {os: ubuntu-20.04, r: 'devel', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
||||||
|
|
||||||
# these are the current release of R
|
# test all systems against all released versions of R >= 3.0, we support them all!
|
||||||
- {os: macOS-latest, r: 'release', allowfail: false}
|
- {os: macOS-latest, r: '4.1', allowfail: false}
|
||||||
- {os: windows-latest, r: 'release', allowfail: false}
|
- {os: windows-latest, r: '4.1', allowfail: false}
|
||||||
- {os: ubuntu-20.04, r: 'release', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
|
||||||
|
|
||||||
# these are the previous release of R
|
|
||||||
- {os: macOS-latest, r: 'oldrel', allowfail: false}
|
|
||||||
- {os: windows-latest, r: 'oldrel', allowfail: false}
|
|
||||||
- {os: ubuntu-20.04, r: 'oldrel', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
|
||||||
|
|
||||||
# test against all released versions of R >= 3.0, we support them all!
|
|
||||||
- {os: ubuntu-20.04, r: '4.1', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
- {os: ubuntu-20.04, r: '4.1', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
||||||
|
- {os: macOS-latest, r: '4.0', allowfail: false}
|
||||||
|
- {os: windows-latest, r: '4.0', allowfail: false}
|
||||||
- {os: ubuntu-20.04, r: '4.0', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
- {os: ubuntu-20.04, r: '4.0', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
||||||
|
- {os: macOS-latest, r: '3.6', allowfail: false}
|
||||||
|
- {os: windows-latest, r: '3.6', allowfail: false}
|
||||||
- {os: ubuntu-20.04, r: '3.6', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
- {os: ubuntu-20.04, r: '3.6', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
||||||
|
- {os: macOS-latest, r: '3.5', allowfail: false}
|
||||||
|
- {os: windows-latest, r: '3.5', allowfail: false}
|
||||||
- {os: ubuntu-20.04, r: '3.5', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
- {os: ubuntu-20.04, r: '3.5', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
||||||
|
- {os: macOS-latest, r: '3.4', allowfail: false}
|
||||||
|
- {os: windows-latest, r: '3.4', allowfail: false}
|
||||||
- {os: ubuntu-20.04, r: '3.4', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
- {os: ubuntu-20.04, r: '3.4', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
||||||
|
- {os: macOS-latest, r: '3.3', allowfail: false}
|
||||||
|
- {os: windows-latest, r: '3.3', allowfail: false}
|
||||||
- {os: ubuntu-20.04, r: '3.3', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
- {os: ubuntu-20.04, r: '3.3', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
||||||
|
- {os: macOS-latest, r: '3.2', allowfail: false}
|
||||||
|
- {os: windows-latest, r: '3.2', allowfail: false}
|
||||||
- {os: ubuntu-20.04, r: '3.2', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
- {os: ubuntu-20.04, r: '3.2', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
||||||
|
# - {os: macOS-latest, r: '3.1', allowfail: false}
|
||||||
|
# - {os: windows-latest, r: '3.1', allowfail: false}
|
||||||
- {os: ubuntu-20.04, r: '3.1', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
- {os: ubuntu-20.04, r: '3.1', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
||||||
|
# - {os: macOS-latest, r: '3.0', allowfail: false}
|
||||||
|
# - {os: windows-latest, r: '3.0', allowfail: false}
|
||||||
- {os: ubuntu-20.04, r: '3.0', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
- {os: ubuntu-20.04, r: '3.0', allowfail: false, rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}
|
||||||
|
|
||||||
env:
|
env:
|
||||||
R_REMOTES_NO_ERRORS_FROM_WARNINGS: true
|
R_REMOTES_NO_ERRORS_FROM_WARNINGS: true
|
||||||
RSPM: ${{ matrix.config.rspm }}
|
RSPM: ${{ matrix.config.rspm }}
|
||||||
|
R_REPOSITORIES: "https://cran.rstudio.com"
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
@@ -93,15 +104,20 @@ jobs:
|
|||||||
# we don't want to depend on the sysreqs pkg here, as it requires quite a recent R version
|
# we don't want to depend on the sysreqs pkg here, as it requires quite a recent R version
|
||||||
# as of May 2021: https://sysreqs.r-hub.io/pkg/AMR,R,cleaner,curl,dplyr,ggplot2,ggtext,knitr,microbenchmark,pillar,readxl,rmarkdown,rstudioapi,rvest,skimr,tidyr,tinytest,xml2,backports,crayon,rlang,vctrs,evaluate,highr,markdown,stringr,yaml,xfun,cli,ellipsis,fansi,lifecycle,utf8,glue,mime,magrittr,stringi,generics,R6,tibble,tidyselect,pkgconfig,purrr,digest,gtable,isoband,MASS,mgcv,scales,withr,nlme,Matrix,farver,labeling,munsell,RColorBrewer,viridisLite,lattice,colorspace,gridtext,Rcpp,RCurl,png,jpeg,bitops,cellranger,progress,rematch,hms,prettyunits,htmltools,jsonlite,tinytex,base64enc,httr,selectr,openssl,askpass,sys,repr,cpp11
|
# as of May 2021: https://sysreqs.r-hub.io/pkg/AMR,R,cleaner,curl,dplyr,ggplot2,ggtext,knitr,microbenchmark,pillar,readxl,rmarkdown,rstudioapi,rvest,skimr,tidyr,tinytest,xml2,backports,crayon,rlang,vctrs,evaluate,highr,markdown,stringr,yaml,xfun,cli,ellipsis,fansi,lifecycle,utf8,glue,mime,magrittr,stringi,generics,R6,tibble,tidyselect,pkgconfig,purrr,digest,gtable,isoband,MASS,mgcv,scales,withr,nlme,Matrix,farver,labeling,munsell,RColorBrewer,viridisLite,lattice,colorspace,gridtext,Rcpp,RCurl,png,jpeg,bitops,cellranger,progress,rematch,hms,prettyunits,htmltools,jsonlite,tinytex,base64enc,httr,selectr,openssl,askpass,sys,repr,cpp11
|
||||||
run: |
|
run: |
|
||||||
sudo apt install -y libssl-dev pandoc pandoc-citeproc libxml2-dev libicu-dev libcurl4-openssl-dev libpng-dev
|
sudo apt install -y libssl-dev pandoc pandoc-citeproc libxml2-dev libicu-dev libcurl4-openssl-dev libpng-dev libudunits2-dev
|
||||||
|
|
||||||
|
- name: Query dependencies
|
||||||
|
# this will change every day (i.e. at scheduled night run of GitHub Action), so it will cache dependency updates
|
||||||
|
run: |
|
||||||
|
writeLines(paste0(format(Sys.Date(), "%Y%m%d"), sprintf("-R-%i.%i", getRversion()$major, getRversion()$minor)), ".github/daily-R-bundle")
|
||||||
|
shell: Rscript {0}
|
||||||
|
|
||||||
- name: Restore cached R packages
|
- name: Restore cached R packages
|
||||||
# this step will add the step 'Post Restore cached R packages' on a succesful run
|
# this step will add the step 'Post Restore cached R packages' on a succesful run
|
||||||
if: runner.os != 'Windows'
|
uses: actions/cache@v2
|
||||||
uses: actions/cache@v1
|
|
||||||
with:
|
with:
|
||||||
path: ${{ env.R_LIBS_USER }}
|
path: ${{ env.R_LIBS_USER }}
|
||||||
key: ${{ matrix.config.os }}-r-${{ matrix.config.r }}-v4
|
key: ${{ matrix.config.os }}-${{ hashFiles('.github/daily-R-bundle') }}-v4
|
||||||
|
|
||||||
- name: Unpack AMR and install R dependencies
|
- name: Unpack AMR and install R dependencies
|
||||||
if: always()
|
if: always()
|
||||||
@@ -155,5 +171,5 @@ jobs:
|
|||||||
if: always()
|
if: always()
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: artifacts-${{ matrix.config.os }}-r${{ matrix.config.r }}
|
name: ${{ matrix.config.os }}-r-${{ matrix.config.r }}-artifacts
|
||||||
path: AMR.Rcheck
|
path: AMR.Rcheck
|
||||||
|
|||||||
@@ -48,12 +48,18 @@ jobs:
|
|||||||
|
|
||||||
- uses: r-lib/actions/setup-pandoc@master
|
- uses: r-lib/actions/setup-pandoc@master
|
||||||
|
|
||||||
|
- name: Query dependencies
|
||||||
|
# this will change once a week, so it will cache dependency updates
|
||||||
|
run: |
|
||||||
|
writeLines(paste(format(Sys.Date(), "week %V %Y"), sprintf("R-%i.%i", getRversion()$major, getRversion()$minor)), ".github/week-R-version")
|
||||||
|
shell: Rscript {0}
|
||||||
|
|
||||||
- name: Restore cached R packages
|
- name: Restore cached R packages
|
||||||
# this step will add the step 'Post Restore cached R packages' on a succesful run
|
# this step will add the step 'Post Restore cached R packages' on a succesful run
|
||||||
uses: actions/cache@v1
|
uses: actions/cache@v2
|
||||||
with:
|
with:
|
||||||
path: ${{ env.R_LIBS_USER }}
|
path: ${{ env.R_LIBS_USER }}
|
||||||
key: macOS-latest-r-release-v4
|
key: ${{ matrix.config.os }}-${{ hashFiles('.github/week-R-version') }}-v4
|
||||||
|
|
||||||
- name: Unpack AMR and install R dependencies
|
- name: Unpack AMR and install R dependencies
|
||||||
run: |
|
run: |
|
||||||
@@ -68,26 +74,14 @@ jobs:
|
|||||||
as.data.frame(utils::installed.packages())[, "Version", drop = FALSE]
|
as.data.frame(utils::installed.packages())[, "Version", drop = FALSE]
|
||||||
shell: Rscript {0}
|
shell: Rscript {0}
|
||||||
|
|
||||||
# - name: Test coverage
|
|
||||||
# env:
|
|
||||||
# CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
|
||||||
# run: |
|
|
||||||
# library(AMR)
|
|
||||||
# library(tinytest)
|
|
||||||
# library(covr)
|
|
||||||
# source_files <- list.files("R", pattern = ".R$", full.names = TRUE)
|
|
||||||
# test_files <- list.files("inst/tinytest", full.names = TRUE)
|
|
||||||
# cov <- file_coverage(source_files = source_files, test_files = test_files, parent_env = asNamespace("AMR"), line_exclusions = list("R/atc_online.R", "R/mo_source.R", "R/translate.R", "R/resistance_predict.R", "R/aa_helper_functions.R", "R/aa_helper_pm_functions.R", "R/zzz.R"))
|
|
||||||
# attr(cov, which = "package") <- list(path = ".") # until https://github.com/r-lib/covr/issues/478 is solved
|
|
||||||
# codecov(coverage = cov, quiet = FALSE)
|
|
||||||
# shell: Rscript {0}
|
|
||||||
|
|
||||||
- name: Test coverage
|
- name: Test coverage
|
||||||
env:
|
env:
|
||||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||||
R_RUN_TINYTEST: true
|
R_RUN_TINYTEST: true
|
||||||
run: |
|
run: |
|
||||||
|
install.packages("covr", repos = "https://cran.rstudio.com/")
|
||||||
library(AMR)
|
library(AMR)
|
||||||
library(tinytest)
|
library(tinytest)
|
||||||
covr::codecov(line_exclusions = list("R/atc_online.R", "R/mo_source.R", "R/translate.R", "R/resistance_predict.R", "R/aa_helper_functions.R", "R/aa_helper_pm_functions.R", "R/zzz.R"))
|
x <- covr::codecov(line_exclusions = list("R/atc_online.R", "R/mo_source.R", "R/translate.R", "R/resistance_predict.R", "R/aa_helper_functions.R", "R/aa_helper_pm_functions.R", "R/zzz.R"))
|
||||||
|
print(x)
|
||||||
shell: Rscript {0}
|
shell: Rscript {0}
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ jobs:
|
|||||||
shell: Rscript {0}
|
shell: Rscript {0}
|
||||||
|
|
||||||
- name: Cache R packages
|
- name: Cache R packages
|
||||||
uses: actions/cache@v1
|
uses: actions/cache@v2
|
||||||
with:
|
with:
|
||||||
path: ${{ env.R_LIBS_USER }}
|
path: ${{ env.R_LIBS_USER }}
|
||||||
key: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1-${{ hashFiles('.github/depends.Rds') }}
|
key: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1-${{ hashFiles('.github/depends.Rds') }}
|
||||||
|
|||||||
@@ -1,66 +1,89 @@
|
|||||||
Package: AMR
|
Package: AMR
|
||||||
Version: 1.7.0
|
Version: 1.7.1.9033
|
||||||
Date: 2021-05-26
|
Date: 2021-08-30
|
||||||
Title: Antimicrobial Resistance Data Analysis
|
Title: Antimicrobial Resistance Data Analysis
|
||||||
Authors@R: c(
|
|
||||||
person(role = c("aut", "cre"),
|
|
||||||
family = "Berends", given = c("Matthijs", "S."), email = "m.s.berends@umcg.nl", comment = c(ORCID = "0000-0001-7620-1800")),
|
|
||||||
person(role = c("aut", "ctb"),
|
|
||||||
family = "Luz", given = c("Christian", "F."), email = "c.f.luz@umcg.nl", comment = c(ORCID = "0000-0001-5809-5995")),
|
|
||||||
person(role = c("aut", "ths"),
|
|
||||||
family = "Friedrich", given = c("Alexander", "W."), email = "alex.friedrich@umcg.nl", comment = c(ORCID = "0000-0003-4881-038X")),
|
|
||||||
person(role = c("aut", "ths"),
|
|
||||||
family = "Sinha", given = c("Bhanu", "N.", "M."), email = "b.sinha@umcg.nl", comment = c(ORCID = "0000-0003-1634-0010")),
|
|
||||||
person(role = c("aut", "ths"),
|
|
||||||
family = "Albers", given = c("Casper", "J."), email = "c.j.albers@rug.nl", comment = c(ORCID = "0000-0002-9213-6743")),
|
|
||||||
person(role = c("aut", "ths"),
|
|
||||||
family = "Glasner", given = "Corinna", email = "c.glasner@umcg.nl", comment = c(ORCID = "0000-0003-1241-1328")),
|
|
||||||
person(role = "ctb",
|
|
||||||
family = "Fonville", given = c("Judith", "M."), email = "j.fonville@pamm.nl"),
|
|
||||||
person(role = "ctb",
|
|
||||||
family = "Hassing", given = c("Erwin", "E.", "A."), email = "e.hassing@certe.nl"),
|
|
||||||
person(role = "ctb",
|
|
||||||
family = "Hazenberg", given = c("Eric", "H.", "L.", "C.", "M."), email = "e.hazenberg@jbz.nl"),
|
|
||||||
person(role = "ctb",
|
|
||||||
family = "Knight", given = "Gwen", email = "gwen.knight@lshtm.ac.uk"),
|
|
||||||
person(role = "ctb",
|
|
||||||
family = "Lenglet", given = "Annick", email = "annick.lenglet@amsterdam.msf.org"),
|
|
||||||
person(role = "ctb",
|
|
||||||
family = "Meijer", given = c("Bart", "C."), email = "b.meijerg@certe.nl"),
|
|
||||||
person(role = "ctb",
|
|
||||||
family = "Ny", given = "Sofia", email = "sofia.ny@folkhalsomyndigheten.se"),
|
|
||||||
person(role = "ctb",
|
|
||||||
family = "Schade", given = c("Rogier", "P."), email = "r.schade@amsterdamumc.nl"),
|
|
||||||
person(role = "ctb",
|
|
||||||
family = "Souverein", given = "Dennis", email = "d.souvereing@streeklabhaarlem.nl"),
|
|
||||||
person(role = "ctb",
|
|
||||||
family = "Underwood", given = "Anthony", email = "au3@sanger.ac.uk"))
|
|
||||||
Description: Functions to simplify and standardise antimicrobial resistance (AMR)
|
Description: Functions to simplify and standardise antimicrobial resistance (AMR)
|
||||||
data analysis and to work with microbial and antimicrobial properties by
|
data analysis and to work with microbial and antimicrobial properties by
|
||||||
using evidence-based methods and reliable reference data such as LPSN
|
using evidence-based methods and reliable reference data such as LPSN
|
||||||
<doi:10.1099/ijsem.0.004332>.
|
<doi:10.1099/ijsem.0.004332>.
|
||||||
Depends:
|
Authors@R: c(
|
||||||
R (>= 3.0.0)
|
person(given = c("Matthijs", "S."),
|
||||||
Suggests:
|
family = "Berends",
|
||||||
cleaner,
|
email = "m.s.berends@umcg.nl",
|
||||||
covr,
|
role = c("aut", "cre"),
|
||||||
curl,
|
comment = c(ORCID = "0000-0001-7620-1800")),
|
||||||
dplyr,
|
person(given = c("Christian", "F."),
|
||||||
ggplot2,
|
family = "Luz",
|
||||||
ggtext,
|
role = c("aut", "ctb"),
|
||||||
knitr,
|
comment = c(ORCID = "0000-0001-5809-5995")),
|
||||||
microbenchmark,
|
person(given = c("Alexander", "W."),
|
||||||
pillar,
|
family = "Friedrich",
|
||||||
readxl,
|
role = "ths",
|
||||||
rmarkdown,
|
comment = c(ORCID = "0000-0003-4881-038X")),
|
||||||
rstudioapi,
|
person(given = c("Bhanu", "N.", "M."),
|
||||||
rvest,
|
family = "Sinha",
|
||||||
skimr,
|
role = "ths",
|
||||||
tidyr,
|
comment = c(ORCID = "0000-0003-1634-0010")),
|
||||||
tinytest,
|
person(given = c("Casper", "J."),
|
||||||
xml2
|
family = "Albers",
|
||||||
|
role = "ths",
|
||||||
|
comment = c(ORCID = "0000-0002-9213-6743")),
|
||||||
|
person(given = "Corinna",
|
||||||
|
family = "Glasner",
|
||||||
|
role = "ths",
|
||||||
|
comment = c(ORCID = "0000-0003-1241-1328")),
|
||||||
|
person(given = c("Judith", "M."),
|
||||||
|
family = "Fonville",
|
||||||
|
role = "ctb"),
|
||||||
|
person(given = c("Erwin", "E.", "A."),
|
||||||
|
family = "Hassing",
|
||||||
|
role = "ctb"),
|
||||||
|
person(given = c("Eric", "H.", "L.", "C.", "M."),
|
||||||
|
family = "Hazenberg",
|
||||||
|
role = "ctb"),
|
||||||
|
person(given = "Gwen",
|
||||||
|
family = "Knight",
|
||||||
|
role = "ctb",
|
||||||
|
comment = c(ORCID = "0000-0002-7263-9896")),
|
||||||
|
person(given = "Annick",
|
||||||
|
family = "Lenglet",
|
||||||
|
role = "ctb",
|
||||||
|
comment = c(ORCID = "0000-0003-2013-8405")),
|
||||||
|
person(given = c("Bart", "C."),
|
||||||
|
family = "Meijer",
|
||||||
|
role = "ctb"),
|
||||||
|
person(given = "Sofia",
|
||||||
|
family = "Ny",
|
||||||
|
role = "ctb",
|
||||||
|
comment = c(ORCID = "0000-0002-2017-1363")),
|
||||||
|
person(given = c("Rogier", "P."),
|
||||||
|
family = "Schade",
|
||||||
|
role = "ctb"),
|
||||||
|
person(given = "Dennis",
|
||||||
|
family = "Souverein",
|
||||||
|
role = "ctb",
|
||||||
|
comment = c(ORCID = "0000-0003-0455-0336")),
|
||||||
|
person(given = "Anthony",
|
||||||
|
family = "Underwood",
|
||||||
|
role = "ctb",
|
||||||
|
comment = c(ORCID = "0000-0002-8547-427")))
|
||||||
|
Depends: R (>= 3.0.0)
|
||||||
|
Enhances:
|
||||||
|
cleaner,
|
||||||
|
skimr,
|
||||||
|
ggplot2
|
||||||
|
Suggests:
|
||||||
|
curl,
|
||||||
|
dplyr,
|
||||||
|
ggtext,
|
||||||
|
knitr,
|
||||||
|
readxl,
|
||||||
|
rmarkdown,
|
||||||
|
rvest,
|
||||||
|
tinytest,
|
||||||
|
xml2
|
||||||
VignetteBuilder: knitr,rmarkdown
|
VignetteBuilder: knitr,rmarkdown
|
||||||
URL: https://msberends.github.io/AMR/, https://github.com/msberends/AMR
|
URL: https://github.com/msberends/AMR, https://msberends.github.io/AMR
|
||||||
BugReports: https://github.com/msberends/AMR/issues
|
BugReports: https://github.com/msberends/AMR/issues
|
||||||
License: GPL-2 | file LICENSE
|
License: GPL-2 | file LICENSE
|
||||||
Encoding: UTF-8
|
Encoding: UTF-8
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ S3method("!=",ab_selector)
|
|||||||
S3method("!=",mic)
|
S3method("!=",mic)
|
||||||
S3method("%%",mic)
|
S3method("%%",mic)
|
||||||
S3method("%/%",mic)
|
S3method("%/%",mic)
|
||||||
|
S3method("&",ab_selector)
|
||||||
S3method("&",mic)
|
S3method("&",mic)
|
||||||
S3method("*",mic)
|
S3method("*",mic)
|
||||||
S3method("+",mic)
|
S3method("+",mic)
|
||||||
@@ -35,6 +36,7 @@ S3method("[[<-",mic)
|
|||||||
S3method("[[<-",mo)
|
S3method("[[<-",mo)
|
||||||
S3method("[[<-",rsi)
|
S3method("[[<-",rsi)
|
||||||
S3method("^",mic)
|
S3method("^",mic)
|
||||||
|
S3method("|",ab_selector)
|
||||||
S3method("|",mic)
|
S3method("|",mic)
|
||||||
S3method(abs,mic)
|
S3method(abs,mic)
|
||||||
S3method(acos,mic)
|
S3method(acos,mic)
|
||||||
@@ -120,7 +122,11 @@ S3method(print,rsi)
|
|||||||
S3method(prod,mic)
|
S3method(prod,mic)
|
||||||
S3method(quantile,mic)
|
S3method(quantile,mic)
|
||||||
S3method(range,mic)
|
S3method(range,mic)
|
||||||
|
S3method(rep,ab)
|
||||||
|
S3method(rep,disk)
|
||||||
|
S3method(rep,mic)
|
||||||
S3method(rep,mo)
|
S3method(rep,mo)
|
||||||
|
S3method(rep,rsi)
|
||||||
S3method(round,mic)
|
S3method(round,mic)
|
||||||
S3method(sign,mic)
|
S3method(sign,mic)
|
||||||
S3method(signif,mic)
|
S3method(signif,mic)
|
||||||
@@ -157,27 +163,35 @@ export(ab_atc_group2)
|
|||||||
export(ab_cid)
|
export(ab_cid)
|
||||||
export(ab_class)
|
export(ab_class)
|
||||||
export(ab_ddd)
|
export(ab_ddd)
|
||||||
|
export(ab_ddd_units)
|
||||||
export(ab_from_text)
|
export(ab_from_text)
|
||||||
export(ab_group)
|
export(ab_group)
|
||||||
export(ab_info)
|
export(ab_info)
|
||||||
export(ab_loinc)
|
export(ab_loinc)
|
||||||
export(ab_name)
|
export(ab_name)
|
||||||
export(ab_property)
|
export(ab_property)
|
||||||
|
export(ab_selector)
|
||||||
export(ab_synonyms)
|
export(ab_synonyms)
|
||||||
export(ab_tradenames)
|
export(ab_tradenames)
|
||||||
export(ab_url)
|
export(ab_url)
|
||||||
|
export(administrable_iv)
|
||||||
|
export(administrable_per_os)
|
||||||
export(age)
|
export(age)
|
||||||
export(age_groups)
|
export(age_groups)
|
||||||
export(all_antimicrobials)
|
export(all_antimicrobials)
|
||||||
export(aminoglycosides)
|
export(aminoglycosides)
|
||||||
|
export(aminopenicillins)
|
||||||
export(anti_join_microorganisms)
|
export(anti_join_microorganisms)
|
||||||
|
export(antifungals)
|
||||||
export(antimicrobials_equal)
|
export(antimicrobials_equal)
|
||||||
|
export(antimycobacterials)
|
||||||
export(as.ab)
|
export(as.ab)
|
||||||
export(as.disk)
|
export(as.disk)
|
||||||
export(as.mic)
|
export(as.mic)
|
||||||
export(as.mo)
|
export(as.mo)
|
||||||
export(as.rsi)
|
export(as.rsi)
|
||||||
export(atc_online_ddd)
|
export(atc_online_ddd)
|
||||||
|
export(atc_online_ddd_units)
|
||||||
export(atc_online_groups)
|
export(atc_online_groups)
|
||||||
export(atc_online_property)
|
export(atc_online_property)
|
||||||
export(availability)
|
export(availability)
|
||||||
@@ -207,24 +221,7 @@ export(eucast_dosage)
|
|||||||
export(eucast_exceptional_phenotypes)
|
export(eucast_exceptional_phenotypes)
|
||||||
export(eucast_rules)
|
export(eucast_rules)
|
||||||
export(facet_rsi)
|
export(facet_rsi)
|
||||||
export(filter_1st_cephalosporins)
|
|
||||||
export(filter_2nd_cephalosporins)
|
|
||||||
export(filter_3rd_cephalosporins)
|
|
||||||
export(filter_4th_cephalosporins)
|
|
||||||
export(filter_5th_cephalosporins)
|
|
||||||
export(filter_ab_class)
|
|
||||||
export(filter_aminoglycosides)
|
|
||||||
export(filter_betalactams)
|
|
||||||
export(filter_carbapenems)
|
|
||||||
export(filter_cephalosporins)
|
|
||||||
export(filter_first_isolate)
|
export(filter_first_isolate)
|
||||||
export(filter_first_weighted_isolate)
|
|
||||||
export(filter_fluoroquinolones)
|
|
||||||
export(filter_glycopeptides)
|
|
||||||
export(filter_macrolides)
|
|
||||||
export(filter_oxazolidinones)
|
|
||||||
export(filter_penicillins)
|
|
||||||
export(filter_tetracyclines)
|
|
||||||
export(first_isolate)
|
export(first_isolate)
|
||||||
export(fluoroquinolones)
|
export(fluoroquinolones)
|
||||||
export(full_join_microorganisms)
|
export(full_join_microorganisms)
|
||||||
@@ -248,13 +245,13 @@ export(is.rsi.eligible)
|
|||||||
export(is_new_episode)
|
export(is_new_episode)
|
||||||
export(italicise_taxonomy)
|
export(italicise_taxonomy)
|
||||||
export(italicize_taxonomy)
|
export(italicize_taxonomy)
|
||||||
export(key_antibiotics)
|
|
||||||
export(key_antibiotics_equal)
|
|
||||||
export(key_antimicrobials)
|
export(key_antimicrobials)
|
||||||
export(kurtosis)
|
export(kurtosis)
|
||||||
export(labels_rsi_count)
|
export(labels_rsi_count)
|
||||||
export(left_join_microorganisms)
|
export(left_join_microorganisms)
|
||||||
export(like)
|
export(like)
|
||||||
|
export(lincosamides)
|
||||||
|
export(lipoglycopeptides)
|
||||||
export(macrolides)
|
export(macrolides)
|
||||||
export(mdr_cmi2012)
|
export(mdr_cmi2012)
|
||||||
export(mdr_tb)
|
export(mdr_tb)
|
||||||
@@ -294,15 +291,16 @@ export(mo_year)
|
|||||||
export(mrgn)
|
export(mrgn)
|
||||||
export(n_rsi)
|
export(n_rsi)
|
||||||
export(oxazolidinones)
|
export(oxazolidinones)
|
||||||
export(p_symbol)
|
|
||||||
export(pca)
|
export(pca)
|
||||||
export(penicillins)
|
export(penicillins)
|
||||||
|
export(polymyxins)
|
||||||
export(proportion_I)
|
export(proportion_I)
|
||||||
export(proportion_IR)
|
export(proportion_IR)
|
||||||
export(proportion_R)
|
export(proportion_R)
|
||||||
export(proportion_S)
|
export(proportion_S)
|
||||||
export(proportion_SI)
|
export(proportion_SI)
|
||||||
export(proportion_df)
|
export(proportion_df)
|
||||||
|
export(quinolones)
|
||||||
export(random_disk)
|
export(random_disk)
|
||||||
export(random_mic)
|
export(random_mic)
|
||||||
export(random_rsi)
|
export(random_rsi)
|
||||||
@@ -314,11 +312,15 @@ export(rsi_predict)
|
|||||||
export(scale_rsi_colours)
|
export(scale_rsi_colours)
|
||||||
export(scale_y_percent)
|
export(scale_y_percent)
|
||||||
export(semi_join_microorganisms)
|
export(semi_join_microorganisms)
|
||||||
|
export(set_ab_names)
|
||||||
export(set_mo_source)
|
export(set_mo_source)
|
||||||
export(skewness)
|
export(skewness)
|
||||||
|
export(streptogramins)
|
||||||
export(susceptibility)
|
export(susceptibility)
|
||||||
export(tetracyclines)
|
export(tetracyclines)
|
||||||
export(theme_rsi)
|
export(theme_rsi)
|
||||||
|
export(trimethoprims)
|
||||||
|
export(ureidopenicillins)
|
||||||
importFrom(graphics,arrows)
|
importFrom(graphics,arrows)
|
||||||
importFrom(graphics,axis)
|
importFrom(graphics,axis)
|
||||||
importFrom(graphics,barplot)
|
importFrom(graphics,barplot)
|
||||||
|
|||||||
@@ -1,8 +1,56 @@
|
|||||||
# `AMR` 1.7.0
|
# `AMR` 1.7.1.9033
|
||||||
|
## <small>Last updated: 30 August 2021</small>
|
||||||
|
|
||||||
|
### Breaking changes
|
||||||
|
* Removed `p_symbol()` and all `filter_*()` functions (except for `filter_first_isolate()`), which were all deprecated in a previous package version
|
||||||
|
* Removed the `key_antibiotics()` and `key_antibiotics_equal()` functions, which were deprecated and superseded by `key_antimicrobials()` and `antimicrobials_equal()`
|
||||||
|
* Removed all previously implemented `ggplot2::ggplot()` generics for classes `<mic>`, `<disk>`, `<rsi>` and `<resistance_predict>` as they did not follow the `ggplot2` logic. They were replaced with `ggplot2::autoplot()` generics.
|
||||||
|
|
||||||
|
### New
|
||||||
|
* Function `set_ab_names()` to rename data set columns that resemble antimicrobial drugs. This allows for quickly renaming columns to official names, ATC codes, etc.
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
* The `antibiotics` data set now contains **all ATC codes** that are available through the [WHOCC website](https://www.whocc.no), regardless of drugs being present in more than one ATC group. This means that:
|
||||||
|
* Some drugs now contain multiple ATC codes (e.g., metronidazole contains 5)
|
||||||
|
* `antibiotics$atc` is now a `list` containing `character` vectors, and this `atc` column was moved to the 5th position of the `antibiotics` data set
|
||||||
|
* `ab_atc()` does not always return a character vector of length 1, and returns a `list` if the input is larger than length 1
|
||||||
|
* `ab_info()` has a slightly different output
|
||||||
|
* Some DDDs (daily defined doses) were added or updated according to newly included ATC codes
|
||||||
|
* Antibiotic selectors
|
||||||
|
* They now also work in R-3.0 and R-3.1, supporting every version of R since 2013 like the rest of the package
|
||||||
|
* Added more selectors for antibiotic classes: `aminopenicillins()`, `antifungals()`, `antimycobacterials()`, `lincosamides()`, `lipoglycopeptides()`, `polymyxins()`, `quinolones()`, `streptogramins()`, `trimethoprims()` and `ureidopenicillins()`
|
||||||
|
* Added specific selectors for certain types for treatment: `administrable_per_os()` and `administrable_iv()`, which are based on available Defined Daily Doses (DDDs), as defined by the WHOCC. These are ideal for e.g. analysing pathogens in primary care where IV treatment is not an option. They can be combined with other AB selectors, e.g. to select penicillins that are only administrable per os (i.e., orally):
|
||||||
|
```r
|
||||||
|
example_isolates[, penicillins() & administrable_per_os()] # base R
|
||||||
|
example_isolates %>% select(penicillins() & administrable_per_os()) # dplyr
|
||||||
|
```
|
||||||
|
* Added the selector `ab_selector()`, which accepts a filter to be used internally on the `antibiotics` data set, yielding great flexibility on drug properties, such as selecting antibiotic columns with an oral DDD of at least 1 gram:
|
||||||
|
```r
|
||||||
|
example_isolates[, ab_selector(oral_ddd > 1 & oral_units == "g")] # base R
|
||||||
|
example_isolates %>% select(ab_selector(oral_ddd > 1 & oral_units == "g")) # dplyr
|
||||||
|
```
|
||||||
|
* Fix for using selectors multiple times in one call (e.g., using them in `dplyr::filter()` and immediately after in `dplyr::select()`)
|
||||||
|
* Added argument `only_treatable`, which defaults to `TRUE` and will exclude drugs that are only for laboratory tests and not for treating patients (such as imipenem/EDTA and gentamicin-high)
|
||||||
|
* Fixed the Gram stain (`mo_gramstain()`) determination of the taxonomic class Negativicutes within the phylum of Firmicutes - they were considered Gram-positives because of their phylum but are actually Gram-negative. This impacts 137 taxonomic species, genera and families, such as *Negativicoccus* and *Veillonella*.
|
||||||
|
* Fix to prevent introducing `NA`s for old MO codes when running `as.mo()` on them
|
||||||
|
* Added more informative error messages when any of the `proportion_*()` and `count_*()` functions fail
|
||||||
|
* When printing a tibble with any old MO code, a warning will be thrown that old codes should be updated using `as.mo()`
|
||||||
|
* Improved automatic column selector when `col_*` arguments are left blank, e.g. in `first_isolate()`
|
||||||
|
* The right input types for `random_mic()`, `random_disk()` and `random_rsi()` are now enforced
|
||||||
|
* `as.rsi()` can now correct for textual input (such as "Susceptible", "Resistant") in Dutch, English, French, German, Italian, Portuguese and Spanish
|
||||||
|
* When warnings are thrown because of too few isolates in any `count_*()`, `proportion_*()` function (or `resistant()` or `susceptible()`), the `dplyr` group will be shown, if available
|
||||||
|
* Fix for legends created with `scale_rsi_colours()` when using `ggplot2` v3.3.4 or higher (this is ggplot2 bug 4511, soon to be fixed)
|
||||||
|
* Fix for minor translation errors
|
||||||
|
* Fix for the MIC interpretation of *Morganellaceae* (such as *Morganella* and *Proteus*) when using the EUCAST 2021 guideline
|
||||||
|
* Improved algorithm for generating random MICs with `random_mic()`
|
||||||
|
* Improved plot legends for MICs and disk diffusion values
|
||||||
|
* Improved speed of `as.ab()` and all `ab_*()` functions
|
||||||
|
|
||||||
|
|
||||||
|
# AMR 1.7.1
|
||||||
|
|
||||||
### Breaking change
|
### Breaking change
|
||||||
* All antibiotic class selectors (such as `carbapenems()`, `aminoglycosides()`) can now be used for filtering as well, making all their accompanying `filter_*()` functions redundant (such as `filter_carbapenems()`, `filter_aminoglycosides()`). These functions are now deprecated and will be removed in a next release.
|
* All antibiotic class selectors (such as `carbapenems()`, `aminoglycosides()`) can now be used for filtering as well, making all their accompanying `filter_*()` functions redundant (such as `filter_carbapenems()`, `filter_aminoglycosides()`). These functions are now deprecated and will be removed in a next release. Examples of how the selectors can be used for filtering:
|
||||||
```r
|
```r
|
||||||
# select columns with results for carbapenems
|
# select columns with results for carbapenems
|
||||||
example_isolates[, carbapenems()] # base R
|
example_isolates[, carbapenems()] # base R
|
||||||
@@ -21,6 +69,7 @@
|
|||||||
```
|
```
|
||||||
|
|
||||||
### New
|
### New
|
||||||
|
* Support for CLSI 2020 guideline for interpreting MICs and disk diffusion values (using `as.rsi()`)
|
||||||
* Function `custom_eucast_rules()` that brings support for custom AMR rules in `eucast_rules()`
|
* Function `custom_eucast_rules()` that brings support for custom AMR rules in `eucast_rules()`
|
||||||
* Function `italicise_taxonomy()` to make taxonomic names within a string italic, with support for markdown and ANSI
|
* Function `italicise_taxonomy()` to make taxonomic names within a string italic, with support for markdown and ANSI
|
||||||
* Support for all four methods to determine first isolates as summarised by Hindler *et al.* (doi: [10.1086/511864](https://doi.org/10.1086/511864)): isolate-based, patient-based, episode-based and phenotype-based. The last method is now the default.
|
* Support for all four methods to determine first isolates as summarised by Hindler *et al.* (doi: [10.1086/511864](https://doi.org/10.1086/511864)): isolate-based, patient-based, episode-based and phenotype-based. The last method is now the default.
|
||||||
@@ -35,6 +84,7 @@
|
|||||||
|
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
* `bug_drug_combinations()` now supports grouping using the `dplyr` package
|
||||||
* Custom MDRO guidelines (`mdro()`, `custom_mdro_guideline()`):
|
* Custom MDRO guidelines (`mdro()`, `custom_mdro_guideline()`):
|
||||||
* Custom MDRO guidelines can now be combined with other custom MDRO guidelines using `c()`
|
* Custom MDRO guidelines can now be combined with other custom MDRO guidelines using `c()`
|
||||||
* Fix for applying the rules; in previous versions, rows were interpreted according to the last matched rule. Now, rows are interpreted according to the first matched rule
|
* Fix for applying the rules; in previous versions, rows were interpreted according to the last matched rule. Now, rows are interpreted according to the first matched rule
|
||||||
@@ -67,10 +117,11 @@
|
|||||||
* `age()` now vectorises over both `x` and `reference`
|
* `age()` now vectorises over both `x` and `reference`
|
||||||
|
|
||||||
### Other
|
### Other
|
||||||
|
* As requested by CRAN administrators: decreased package size by 3 MB in costs of a slower loading time of the package
|
||||||
* All unit tests are now processed by the `tinytest` package, instead of the `testthat` package. The `testthat` package unfortunately requires tons of dependencies that are also heavy and only usable for recent R versions, disallowing developers to test a package under any R 3.* version. On the contrary, the `tinytest` package is very lightweight and dependency-free.
|
* All unit tests are now processed by the `tinytest` package, instead of the `testthat` package. The `testthat` package unfortunately requires tons of dependencies that are also heavy and only usable for recent R versions, disallowing developers to test a package under any R 3.* version. On the contrary, the `tinytest` package is very lightweight and dependency-free.
|
||||||
|
|
||||||
|
|
||||||
# `AMR` 1.6.0
|
# AMR 1.6.0
|
||||||
|
|
||||||
### New
|
### New
|
||||||
* Support for EUCAST Clinical Breakpoints v11.0 (2021), effective in the `eucast_rules()` function and in `as.rsi()` to interpret MIC and disk diffusion values. This is now the default guideline in this package.
|
* Support for EUCAST Clinical Breakpoints v11.0 (2021), effective in the `eucast_rules()` function and in `as.rsi()` to interpret MIC and disk diffusion values. This is now the default guideline in this package.
|
||||||
@@ -164,7 +215,7 @@
|
|||||||
* Loading the package (i.e., `library(AMR)`) now is ~50 times faster than before, in costs of package size (which increased by ~3 MB)
|
* Loading the package (i.e., `library(AMR)`) now is ~50 times faster than before, in costs of package size (which increased by ~3 MB)
|
||||||
|
|
||||||
|
|
||||||
# `AMR` 1.5.0
|
# AMR 1.5.0
|
||||||
|
|
||||||
### New
|
### New
|
||||||
* Functions `get_episode()` and `is_new_episode()` to determine (patient) episodes which are not necessarily based on microorganisms. The `get_episode()` function returns the index number of the episode per group, while the `is_new_episode()` function returns values `TRUE`/`FALSE` to indicate whether an item in a vector is the start of a new episode. They also support `dplyr`s grouping (i.e. using `group_by()`):
|
* Functions `get_episode()` and `is_new_episode()` to determine (patient) episodes which are not necessarily based on microorganisms. The `get_episode()` function returns the index number of the episode per group, while the `is_new_episode()` function returns values `TRUE`/`FALSE` to indicate whether an item in a vector is the start of a new episode. They also support `dplyr`s grouping (i.e. using `group_by()`):
|
||||||
@@ -241,7 +292,7 @@
|
|||||||
* Added CodeFactor as a continuous code review to this package: <https://www.codefactor.io/repository/github/msberends/amr/>
|
* Added CodeFactor as a continuous code review to this package: <https://www.codefactor.io/repository/github/msberends/amr/>
|
||||||
* Added Dr. Rogier Schade as contributor
|
* Added Dr. Rogier Schade as contributor
|
||||||
|
|
||||||
# `AMR` 1.4.0
|
# AMR 1.4.0
|
||||||
|
|
||||||
### New
|
### New
|
||||||
* Support for 'EUCAST Expert Rules' / 'EUCAST Intrinsic Resistance and Unusual Phenotypes' version 3.2 of May 2020. With this addition to the previously implemented version 3.1 of 2016, the `eucast_rules()` function can now correct for more than 180 different antibiotics and the `mdro()` function can determine multidrug resistance based on more than 150 different antibiotics. All previously implemented versions of the EUCAST rules are now maintained and kept available in this package. The `eucast_rules()` function consequently gained the arguments `version_breakpoints` (at the moment defaults to v10.0, 2020) and `version_expertrules` (at the moment defaults to v3.2, 2020). The `example_isolates` data set now also reflects the change from v3.1 to v3.2. The `mdro()` function now accepts `guideline == "EUCAST3.1"` and `guideline == "EUCAST3.2"`.
|
* Support for 'EUCAST Expert Rules' / 'EUCAST Intrinsic Resistance and Unusual Phenotypes' version 3.2 of May 2020. With this addition to the previously implemented version 3.1 of 2016, the `eucast_rules()` function can now correct for more than 180 different antibiotics and the `mdro()` function can determine multidrug resistance based on more than 150 different antibiotics. All previously implemented versions of the EUCAST rules are now maintained and kept available in this package. The `eucast_rules()` function consequently gained the arguments `version_breakpoints` (at the moment defaults to v10.0, 2020) and `version_expertrules` (at the moment defaults to v3.2, 2020). The `example_isolates` data set now also reflects the change from v3.1 to v3.2. The `mdro()` function now accepts `guideline == "EUCAST3.1"` and `guideline == "EUCAST3.2"`.
|
||||||
@@ -313,7 +364,7 @@
|
|||||||
* Removed unnecessary references to the `base` package
|
* Removed unnecessary references to the `base` package
|
||||||
* Added packages that could be useful for some functions to the `Suggests` field of the `DESCRIPTION` file
|
* Added packages that could be useful for some functions to the `Suggests` field of the `DESCRIPTION` file
|
||||||
|
|
||||||
# `AMR` 1.3.0
|
# AMR 1.3.0
|
||||||
|
|
||||||
### New
|
### New
|
||||||
* Function `ab_from_text()` to retrieve antimicrobial drug names, doses and forms of administration from clinical texts in e.g. health care records, which also corrects for misspelling since it uses `as.ab()` internally
|
* Function `ab_from_text()` to retrieve antimicrobial drug names, doses and forms of administration from clinical texts in e.g. health care records, which also corrects for misspelling since it uses `as.ab()` internally
|
||||||
@@ -366,7 +417,7 @@
|
|||||||
### Other
|
### Other
|
||||||
* Moved primary location of this project from GitLab to [GitHub](https://github.com/msberends/AMR), giving us native support for automated syntax checking without being dependent on external services such as AppVeyor and Travis CI.
|
* Moved primary location of this project from GitLab to [GitHub](https://github.com/msberends/AMR), giving us native support for automated syntax checking without being dependent on external services such as AppVeyor and Travis CI.
|
||||||
|
|
||||||
# `AMR` 1.2.0
|
# AMR 1.2.0
|
||||||
|
|
||||||
### Breaking
|
### Breaking
|
||||||
* Removed code dependency on all other R packages, making this package fully independent of the development process of others. This is a major code change, but will probably not be noticeable by most users.
|
* Removed code dependency on all other R packages, making this package fully independent of the development process of others. This is a major code change, but will probably not be noticeable by most users.
|
||||||
@@ -404,7 +455,7 @@
|
|||||||
* Removed previously deprecated function `p.symbol()` - it was replaced with `p_symbol()`
|
* Removed previously deprecated function `p.symbol()` - it was replaced with `p_symbol()`
|
||||||
* Removed function `read.4d()`, that was only useful for reading data from an old test database.
|
* Removed function `read.4d()`, that was only useful for reading data from an old test database.
|
||||||
|
|
||||||
# `AMR` 1.1.0
|
# AMR 1.1.0
|
||||||
|
|
||||||
### New
|
### New
|
||||||
* Support for easy principal component analysis for AMR, using the new `pca()` function
|
* Support for easy principal component analysis for AMR, using the new `pca()` function
|
||||||
@@ -426,7 +477,7 @@
|
|||||||
* Support for the upcoming `dplyr` version 1.0.0
|
* Support for the upcoming `dplyr` version 1.0.0
|
||||||
* More robust assigning for classes `rsi` and `mic`
|
* More robust assigning for classes `rsi` and `mic`
|
||||||
|
|
||||||
# `AMR` 1.0.1
|
# AMR 1.0.1
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
* Fixed important floating point error for some MIC comparisons in EUCAST 2020 guideline
|
* Fixed important floating point error for some MIC comparisons in EUCAST 2020 guideline
|
||||||
@@ -442,7 +493,7 @@
|
|||||||
* Added `uti` (as abbreviation of urinary tract infections) as argument to `as.rsi()`, so interpretation of MIC values and disk zones can be made dependent on isolates specifically from UTIs
|
* Added `uti` (as abbreviation of urinary tract infections) as argument to `as.rsi()`, so interpretation of MIC values and disk zones can be made dependent on isolates specifically from UTIs
|
||||||
* Info printing in functions `eucast_rules()`, `first_isolate()`, `mdro()` and `resistance_predict()` will now at default only print when R is in an interactive mode (i.e. not in RMarkdown)
|
* Info printing in functions `eucast_rules()`, `first_isolate()`, `mdro()` and `resistance_predict()` will now at default only print when R is in an interactive mode (i.e. not in RMarkdown)
|
||||||
|
|
||||||
# `AMR` 1.0.0
|
# AMR 1.0.0
|
||||||
|
|
||||||
This software is now out of beta and considered stable. Nonetheless, this package will be developed continually.
|
This software is now out of beta and considered stable. Nonetheless, this package will be developed continually.
|
||||||
|
|
||||||
@@ -490,7 +541,7 @@ This software is now out of beta and considered stable. Nonetheless, this packag
|
|||||||
* Full support for the upcoming R 4.0
|
* Full support for the upcoming R 4.0
|
||||||
* Removed unnecessary `AMR::` calls
|
* Removed unnecessary `AMR::` calls
|
||||||
|
|
||||||
# `AMR` 0.9.0
|
# AMR 0.9.0
|
||||||
|
|
||||||
### Breaking
|
### Breaking
|
||||||
* Adopted Adeolu *et al.* (2016), [PMID 27620848](https:/pubmed.ncbi.nlm.nih.gov/27620848/) for the `microorganisms` data set, which means that the new order Enterobacterales now consists of a part of the existing family Enterobacteriaceae, but that this family has been split into other families as well (like *Morganellaceae* and *Yersiniaceae*). Although published in 2016, this information is not yet in the Catalogue of Life version of 2019. All MDRO determinations with `mdro()` will now use the Enterobacterales order for all guidelines before 2016 that were dependent on the Enterobacteriaceae family.
|
* Adopted Adeolu *et al.* (2016), [PMID 27620848](https:/pubmed.ncbi.nlm.nih.gov/27620848/) for the `microorganisms` data set, which means that the new order Enterobacterales now consists of a part of the existing family Enterobacteriaceae, but that this family has been split into other families as well (like *Morganellaceae* and *Yersiniaceae*). Although published in 2016, this information is not yet in the Catalogue of Life version of 2019. All MDRO determinations with `mdro()` will now use the Enterobacterales order for all guidelines before 2016 that were dependent on the Enterobacteriaceae family.
|
||||||
@@ -556,7 +607,7 @@ This software is now out of beta and considered stable. Nonetheless, this packag
|
|||||||
* Change dependency on `clean` to `cleaner`, as this package was renamed accordingly upon CRAN request
|
* Change dependency on `clean` to `cleaner`, as this package was renamed accordingly upon CRAN request
|
||||||
* Added Dr. Sofia Ny as contributor
|
* Added Dr. Sofia Ny as contributor
|
||||||
|
|
||||||
# `AMR` 0.8.0
|
# AMR 0.8.0
|
||||||
|
|
||||||
### Breaking
|
### Breaking
|
||||||
* Determination of first isolates now **excludes** all 'unknown' microorganisms at default, i.e. microbial code `"UNKNOWN"`. They can be included with the new argument `include_unknown`:
|
* Determination of first isolates now **excludes** all 'unknown' microorganisms at default, i.e. microbial code `"UNKNOWN"`. They can be included with the new argument `include_unknown`:
|
||||||
@@ -685,7 +736,7 @@ This software is now out of beta and considered stable. Nonetheless, this packag
|
|||||||
* Added Prof. Dr. Casper Albers as doctoral advisor and added Dr. Judith Fonville, Eric Hazenberg, Dr. Bart Meijer, Dr. Dennis Souverein and Annick Lenglet as contributors
|
* Added Prof. Dr. Casper Albers as doctoral advisor and added Dr. Judith Fonville, Eric Hazenberg, Dr. Bart Meijer, Dr. Dennis Souverein and Annick Lenglet as contributors
|
||||||
* Cleaned the coding style of every single syntax line in this package with the help of the `lintr` package
|
* Cleaned the coding style of every single syntax line in this package with the help of the `lintr` package
|
||||||
|
|
||||||
# `AMR` 0.7.1
|
# AMR 0.7.1
|
||||||
|
|
||||||
#### New
|
#### New
|
||||||
* Function `rsi_df()` to transform a `data.frame` to a data set containing only the microbial interpretation (S, I, R), the antibiotic, the percentage of S/I/R and the number of available isolates. This is a convenient combination of the existing functions `count_df()` and `portion_df()` to immediately show resistance percentages and number of available isolates:
|
* Function `rsi_df()` to transform a `data.frame` to a data set containing only the microbial interpretation (S, I, R), the antibiotic, the percentage of S/I/R and the number of available isolates. This is a convenient combination of the existing functions `count_df()` and `portion_df()` to immediately show resistance percentages and number of available isolates:
|
||||||
@@ -746,7 +797,7 @@ This software is now out of beta and considered stable. Nonetheless, this packag
|
|||||||
#### Other
|
#### Other
|
||||||
* Fixed a note thrown by CRAN tests
|
* Fixed a note thrown by CRAN tests
|
||||||
|
|
||||||
# `AMR` 0.7.0
|
# AMR 0.7.0
|
||||||
|
|
||||||
#### New
|
#### New
|
||||||
* Support for translation of disk diffusion and MIC values to RSI values (i.e. antimicrobial interpretations). Supported guidelines are EUCAST (2011 to 2019) and CLSI (2011 to 2019). Use `as.rsi()` on an MIC value (created with `as.mic()`), a disk diffusion value (created with the new `as.disk()`) or on a complete date set containing columns with MIC or disk diffusion values.
|
* Support for translation of disk diffusion and MIC values to RSI values (i.e. antimicrobial interpretations). Supported guidelines are EUCAST (2011 to 2019) and CLSI (2011 to 2019). Use `as.rsi()` on an MIC value (created with `as.mic()`), a disk diffusion value (created with the new `as.disk()`) or on a complete date set containing columns with MIC or disk diffusion values.
|
||||||
@@ -804,13 +855,13 @@ This software is now out of beta and considered stable. Nonetheless, this packag
|
|||||||
#### Other
|
#### Other
|
||||||
* Support for R 3.6.0 and later by providing support for [staged install](https://developer.r-project.org/Blog/public/2019/02/14/staged-install/index.html)
|
* Support for R 3.6.0 and later by providing support for [staged install](https://developer.r-project.org/Blog/public/2019/02/14/staged-install/index.html)
|
||||||
|
|
||||||
# `AMR` 0.6.1
|
# AMR 0.6.1
|
||||||
|
|
||||||
#### Changed
|
#### Changed
|
||||||
* Fixed a critical bug when using `eucast_rules()` with `verbose = TRUE`
|
* Fixed a critical bug when using `eucast_rules()` with `verbose = TRUE`
|
||||||
* Coercion of microbial IDs are now written to the package namespace instead of the user's home folder, to comply with the CRAN policy
|
* Coercion of microbial IDs are now written to the package namespace instead of the user's home folder, to comply with the CRAN policy
|
||||||
|
|
||||||
# `AMR` 0.6.0
|
# AMR 0.6.0
|
||||||
|
|
||||||
**New website!**
|
**New website!**
|
||||||
|
|
||||||
@@ -1003,7 +1054,7 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git
|
|||||||
#### Other
|
#### Other
|
||||||
* Updated licence text to emphasise GPL 2.0 and that this is an R package.
|
* Updated licence text to emphasise GPL 2.0 and that this is an R package.
|
||||||
|
|
||||||
# `AMR` 0.5.0
|
# AMR 0.5.0
|
||||||
|
|
||||||
#### New
|
#### New
|
||||||
* Repository moved to GitLab
|
* Repository moved to GitLab
|
||||||
@@ -1086,7 +1137,7 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git
|
|||||||
* Updated vignettes to comply with README
|
* Updated vignettes to comply with README
|
||||||
|
|
||||||
|
|
||||||
# `AMR` 0.4.0
|
# AMR 0.4.0
|
||||||
|
|
||||||
#### New
|
#### New
|
||||||
* The data set `microorganisms` now contains **all microbial taxonomic data from ITIS** (kingdoms Bacteria, Fungi and Protozoa), the Integrated Taxonomy Information System, available via https://itis.gov. The data set now contains more than 18,000 microorganisms with all known bacteria, fungi and protozoa according ITIS with genus, species, subspecies, family, order, class, phylum and subkingdom. The new data set `microorganisms.old` contains all previously known taxonomic names from those kingdoms.
|
* The data set `microorganisms` now contains **all microbial taxonomic data from ITIS** (kingdoms Bacteria, Fungi and Protozoa), the Integrated Taxonomy Information System, available via https://itis.gov. The data set now contains more than 18,000 microorganisms with all known bacteria, fungi and protozoa according ITIS with genus, species, subspecies, family, order, class, phylum and subkingdom. The new data set `microorganisms.old` contains all previously known taxonomic names from those kingdoms.
|
||||||
@@ -1197,7 +1248,7 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git
|
|||||||
#### Other
|
#### Other
|
||||||
* More unit tests to ensure better integrity of functions
|
* More unit tests to ensure better integrity of functions
|
||||||
|
|
||||||
# `AMR` 0.3.0
|
# AMR 0.3.0
|
||||||
|
|
||||||
#### New
|
#### New
|
||||||
* **BREAKING**: `rsi_df` was removed in favour of new functions `portion_R`, `portion_IR`, `portion_I`, `portion_SI` and `portion_S` to selectively calculate resistance or susceptibility. These functions are 20 to 30 times faster than the old `rsi` function. The old function still works, but is deprecated.
|
* **BREAKING**: `rsi_df` was removed in favour of new functions `portion_R`, `portion_IR`, `portion_I`, `portion_SI` and `portion_S` to selectively calculate resistance or susceptibility. These functions are 20 to 30 times faster than the old `rsi` function. The old function still works, but is deprecated.
|
||||||
@@ -1267,7 +1318,7 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git
|
|||||||
* Windows: https://ci.appveyor.com/project/msberends/amr
|
* Windows: https://ci.appveyor.com/project/msberends/amr
|
||||||
* Added thesis advisors to DESCRIPTION file
|
* Added thesis advisors to DESCRIPTION file
|
||||||
|
|
||||||
# `AMR` 0.2.0
|
# AMR 0.2.0
|
||||||
|
|
||||||
#### New
|
#### New
|
||||||
* Full support for Windows, Linux and macOS
|
* Full support for Windows, Linux and macOS
|
||||||
@@ -1302,7 +1353,7 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git
|
|||||||
* Added build tests for Linux and macOS using Travis CI (https://travis-ci.org/msberends/AMR)
|
* Added build tests for Linux and macOS using Travis CI (https://travis-ci.org/msberends/AMR)
|
||||||
* Added line coverage checking using CodeCov (https://codecov.io/gh/msberends/AMR/tree/master/R)
|
* Added line coverage checking using CodeCov (https://codecov.io/gh/msberends/AMR/tree/master/R)
|
||||||
|
|
||||||
# `AMR` 0.1.1
|
# AMR 0.1.1
|
||||||
|
|
||||||
* `EUCAST_rules` applies for amoxicillin even if ampicillin is missing
|
* `EUCAST_rules` applies for amoxicillin even if ampicillin is missing
|
||||||
* Edited column names to comply with GLIMS, the laboratory information system
|
* Edited column names to comply with GLIMS, the laboratory information system
|
||||||
@@ -1310,6 +1361,6 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git
|
|||||||
* Renamed 'Daily Defined Dose' to 'Defined Daily Dose'
|
* Renamed 'Daily Defined Dose' to 'Defined Daily Dose'
|
||||||
* Added barplots for `rsi` and `mic` classes
|
* Added barplots for `rsi` and `mic` classes
|
||||||
|
|
||||||
# `AMR` 0.1.0
|
# AMR 0.1.0
|
||||||
|
|
||||||
* First submission to CRAN.
|
* First submission to CRAN.
|
||||||
|
|||||||
@@ -135,7 +135,6 @@ check_dataset_integrity <- function() {
|
|||||||
" the AMR package from working correctly: ",
|
" the AMR package from working correctly: ",
|
||||||
vector_and(overwritten, quotes = "'"),
|
vector_and(overwritten, quotes = "'"),
|
||||||
".\nPlease rename your object", plural[3], ".", call = FALSE)
|
".\nPlease rename your object", plural[3], ".", call = FALSE)
|
||||||
remember_thrown_message("dataset_overwritten")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
# check if other packages did not overwrite our data sets
|
# check if other packages did not overwrite our data sets
|
||||||
@@ -170,67 +169,73 @@ search_type_in_df <- function(x, type, info = TRUE) {
|
|||||||
|
|
||||||
# remove attributes from other packages
|
# remove attributes from other packages
|
||||||
x <- as.data.frame(x, stringsAsFactors = FALSE)
|
x <- as.data.frame(x, stringsAsFactors = FALSE)
|
||||||
colnames(x) <- trimws(colnames(x))
|
colnames_formatted <- tolower(generalise_antibiotic_name(colnames(x)))
|
||||||
|
|
||||||
# -- mo
|
# -- mo
|
||||||
if (type == "mo") {
|
if (type == "mo") {
|
||||||
if (any(vapply(FUN.VALUE = logical(1), x, is.mo))) {
|
if (any(vapply(FUN.VALUE = logical(1), x, is.mo))) {
|
||||||
found <- sort(colnames(x)[vapply(FUN.VALUE = logical(1), x, is.mo)])[1]
|
# take first <mo> column
|
||||||
} else if ("mo" %in% colnames(x) &
|
found <- colnames(x)[vapply(FUN.VALUE = logical(1), x, is.mo)]
|
||||||
suppressWarnings(
|
} else if ("mo" %in% colnames_formatted &
|
||||||
all(x$mo %in% c(NA,
|
suppressWarnings(all(x$mo %in% c(NA, microorganisms$mo)))) {
|
||||||
microorganisms$mo,
|
|
||||||
microorganisms.translation$mo_old)))) {
|
|
||||||
found <- "mo"
|
found <- "mo"
|
||||||
} else if (any(colnames(x) %like% "^(mo|microorganism|organism|bacteria|ba[ck]terie)s?$")) {
|
} else if (any(colnames_formatted %like_case% "^(mo|microorganism|organism|bacteria|ba[ck]terie)s?$")) {
|
||||||
found <- sort(colnames(x)[colnames(x) %like% "^(mo|microorganism|organism|bacteria|ba[ck]terie)s?$"])[1]
|
found <- sort(colnames(x)[colnames_formatted %like_case% "^(mo|microorganism|organism|bacteria|ba[ck]terie)s?$"])
|
||||||
} else if (any(colnames(x) %like% "^(microorganism|organism|bacteria|ba[ck]terie)")) {
|
} else if (any(colnames_formatted %like_case% "^(microorganism|organism|bacteria|ba[ck]terie)")) {
|
||||||
found <- sort(colnames(x)[colnames(x) %like% "^(microorganism|organism|bacteria|ba[ck]terie)"])[1]
|
found <- sort(colnames(x)[colnames_formatted %like_case% "^(microorganism|organism|bacteria|ba[ck]terie)"])
|
||||||
} else if (any(colnames(x) %like% "species")) {
|
} else if (any(colnames_formatted %like_case% "species")) {
|
||||||
found <- sort(colnames(x)[colnames(x) %like% "species"])[1]
|
found <- sort(colnames(x)[colnames_formatted %like_case% "species"])
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
# -- key antibiotics
|
# -- key antibiotics
|
||||||
if (type %in% c("keyantibiotics", "keyantimicrobials")) {
|
if (type %in% c("keyantibiotics", "keyantimicrobials")) {
|
||||||
if (any(colnames(x) %like% "^key.*(ab|antibiotics|antimicrobials)")) {
|
if (any(colnames_formatted %like_case% "^key.*(ab|antibiotics|antimicrobials)")) {
|
||||||
found <- sort(colnames(x)[colnames(x) %like% "^key.*(ab|antibiotics|antimicrobials)"])[1]
|
found <- sort(colnames(x)[colnames_formatted %like_case% "^key.*(ab|antibiotics|antimicrobials)"])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
# -- date
|
# -- date
|
||||||
if (type == "date") {
|
if (type == "date") {
|
||||||
if (any(colnames(x) %like% "^(specimen date|specimen_date|spec_date)")) {
|
if (any(colnames_formatted %like_case% "^(specimen date|specimen_date|spec_date)")) {
|
||||||
# WHONET support
|
# WHONET support
|
||||||
found <- sort(colnames(x)[colnames(x) %like% "^(specimen date|specimen_date|spec_date)"])[1]
|
found <- sort(colnames(x)[colnames_formatted %like_case% "^(specimen date|specimen_date|spec_date)"])
|
||||||
if (!any(class(pm_pull(x, found)) %in% c("Date", "POSIXct"))) {
|
if (!any(class(pm_pull(x, found)) %in% c("Date", "POSIXct"))) {
|
||||||
stop(font_red(paste0("Found column '", font_bold(found), "' to be used as input for `col_", type,
|
stop(font_red(paste0("Found column '", font_bold(found), "' to be used as input for `col_", type,
|
||||||
"`, but this column contains no valid dates. Transform its values to valid dates first.")),
|
"`, but this column contains no valid dates. Transform its values to valid dates first.")),
|
||||||
call. = FALSE)
|
call. = FALSE)
|
||||||
}
|
}
|
||||||
|
|
||||||
} else if (any(vapply(FUN.VALUE = logical(1), x, function(x) inherits(x, c("Date", "POSIXct"))))) {
|
} else if (any(vapply(FUN.VALUE = logical(1), x, function(x) inherits(x, c("Date", "POSIXct"))))) {
|
||||||
found <- sort(colnames(x)[vapply(FUN.VALUE = logical(1), x, function(x) inherits(x, c("Date", "POSIXct")))])[1]
|
# take first <Date> column
|
||||||
|
found <- colnames(x)[vapply(FUN.VALUE = logical(1), x, function(x) inherits(x, c("Date", "POSIXct")))]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
# -- patient id
|
# -- patient id
|
||||||
if (type == "patient_id") {
|
if (type == "patient_id") {
|
||||||
if (any(colnames(x) %like% "^(identification |patient|patid)")) {
|
crit1 <- colnames_formatted %like_case% "^(patient|patid)"
|
||||||
found <- sort(colnames(x)[colnames(x) %like% "^(identification |patient|patid)"])[1]
|
if (any(crit1)) {
|
||||||
|
found <- colnames(x)[crit1]
|
||||||
|
} else {
|
||||||
|
crit2 <- colnames_formatted %like_case% "(identification |patient|pat.*id)"
|
||||||
|
if (any(crit2)) {
|
||||||
|
found <- colnames(x)[crit2]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
# -- specimen
|
# -- specimen
|
||||||
if (type == "specimen") {
|
if (type == "specimen") {
|
||||||
if (any(colnames(x) %like% "(specimen type|spec_type)")) {
|
if (any(colnames_formatted %like_case% "(specimen type|spec_type)")) {
|
||||||
found <- sort(colnames(x)[colnames(x) %like% "(specimen type|spec_type)"])[1]
|
found <- sort(colnames(x)[colnames_formatted %like_case% "(specimen type|spec_type)"])
|
||||||
} else if (any(colnames(x) %like% "^(specimen)")) {
|
} else if (any(colnames_formatted %like_case% "^(specimen)")) {
|
||||||
found <- sort(colnames(x)[colnames(x) %like% "^(specimen)"])[1]
|
found <- sort(colnames(x)[colnames_formatted %like_case% "^(specimen)"])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
# -- UTI (urinary tract infection)
|
# -- UTI (urinary tract infection)
|
||||||
if (type == "uti") {
|
if (type == "uti") {
|
||||||
if (any(colnames(x) == "uti")) {
|
if (any(colnames_formatted == "uti")) {
|
||||||
found <- colnames(x)[colnames(x) == "uti"][1]
|
found <- colnames(x)[colnames_formatted == "uti"]
|
||||||
} else if (any(colnames(x) %like% "(urine|urinary)")) {
|
} else if (any(colnames_formatted %like_case% "(urine|urinary)")) {
|
||||||
found <- sort(colnames(x)[colnames(x) %like% "(urine|urinary)"])[1]
|
found <- sort(colnames(x)[colnames_formatted %like_case% "(urine|urinary)"])
|
||||||
}
|
}
|
||||||
if (!is.null(found)) {
|
if (!is.null(found)) {
|
||||||
# this column should contain logicals
|
# this column should contain logicals
|
||||||
@@ -243,14 +248,15 @@ search_type_in_df <- function(x, type, info = TRUE) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
found <- found[1]
|
||||||
|
|
||||||
if (!is.null(found) & info == TRUE) {
|
if (!is.null(found) & info == TRUE) {
|
||||||
if (message_not_thrown_before(fn = paste0("search_", type))) {
|
if (message_not_thrown_before(fn = paste0("search_", type))) {
|
||||||
msg <- paste0("Using column '", font_bold(found), "' as input for `col_", type, "`.")
|
msg <- paste0("Using column '", font_bold(found), "' as input for `col_", type, "`.")
|
||||||
if (type %in% c("keyantibiotics", "specimen")) {
|
if (type %in% c("keyantibiotics", "keyantimicrobials", "specimen")) {
|
||||||
msg <- paste(msg, "Use", font_bold(paste0("col_", type), "= FALSE"), "to prevent this.")
|
msg <- paste(msg, "Use", font_bold(paste0("col_", type), "= FALSE"), "to prevent this.")
|
||||||
}
|
}
|
||||||
message_(msg)
|
message_(msg)
|
||||||
remember_thrown_message(fn = paste0("search_", type))
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
found
|
found
|
||||||
@@ -392,6 +398,9 @@ word_wrap <- function(...,
|
|||||||
# format backticks
|
# format backticks
|
||||||
msg <- gsub("(`.+?`)", font_grey_bg("\\1"), msg)
|
msg <- gsub("(`.+?`)", font_grey_bg("\\1"), msg)
|
||||||
|
|
||||||
|
# clean introduced whitespace between fullstops
|
||||||
|
msg <- gsub("[.] +[.]", "..", msg)
|
||||||
|
|
||||||
msg
|
msg
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -508,12 +517,12 @@ dataset_UTF8_to_ASCII <- function(df) {
|
|||||||
|
|
||||||
# for eucast_rules() and mdro(), creates markdown output with URLs and names
|
# for eucast_rules() and mdro(), creates markdown output with URLs and names
|
||||||
create_eucast_ab_documentation <- function() {
|
create_eucast_ab_documentation <- function() {
|
||||||
x <- trimws(unique(toupper(unlist(strsplit(eucast_rules_file$then_change_these_antibiotics, ",")))))
|
x <- trimws(unique(toupper(unlist(strsplit(EUCAST_RULES_DF$then_change_these_antibiotics, ",")))))
|
||||||
ab <- character()
|
ab <- character()
|
||||||
for (val in x) {
|
for (val in x) {
|
||||||
if (val %in% ls(envir = asNamespace("AMR"))) {
|
if (paste0("AB_", val) %in% ls(envir = asNamespace("AMR"))) {
|
||||||
# antibiotic group names, as defined in data-raw/_internals.R, such as `CARBAPENEMS`
|
# antibiotic group names, as defined in data-raw/_internals.R, such as `CARBAPENEMS`
|
||||||
val <- eval(parse(text = val), envir = asNamespace("AMR"))
|
val <- eval(parse(text = paste0("AB_", val)), envir = asNamespace("AMR"))
|
||||||
} else if (val %in% AB_lookup$ab) {
|
} else if (val %in% AB_lookup$ab) {
|
||||||
# separate drugs, such as `AMX`
|
# separate drugs, such as `AMX`
|
||||||
val <- as.ab(val)
|
val <- as.ab(val)
|
||||||
@@ -523,7 +532,7 @@ create_eucast_ab_documentation <- function() {
|
|||||||
ab <- c(ab, val)
|
ab <- c(ab, val)
|
||||||
}
|
}
|
||||||
ab <- unique(ab)
|
ab <- unique(ab)
|
||||||
atcs <- ab_atc(ab)
|
atcs <- ab_atc(ab, only_first = TRUE)
|
||||||
# only keep ABx with an ATC code:
|
# only keep ABx with an ATC code:
|
||||||
ab <- ab[!is.na(atcs)]
|
ab <- ab[!is.na(atcs)]
|
||||||
ab_names <- ab_name(ab, language = NULL, tolower = TRUE)
|
ab_names <- ab_name(ab, language = NULL, tolower = TRUE)
|
||||||
@@ -535,7 +544,7 @@ create_eucast_ab_documentation <- function() {
|
|||||||
out
|
out
|
||||||
}
|
}
|
||||||
|
|
||||||
vector_or <- function(v, quotes = TRUE, reverse = FALSE, sort = TRUE, last_sep = " or ") {
|
vector_or <- function(v, quotes = TRUE, reverse = FALSE, sort = TRUE, initial_captital = FALSE, last_sep = " or ") {
|
||||||
# makes unique and sorts, and this also removed NAs
|
# makes unique and sorts, and this also removed NAs
|
||||||
v <- unique(v)
|
v <- unique(v)
|
||||||
if (isTRUE(sort)) {
|
if (isTRUE(sort)) {
|
||||||
@@ -551,6 +560,9 @@ vector_or <- function(v, quotes = TRUE, reverse = FALSE, sort = TRUE, last_sep =
|
|||||||
} else {
|
} else {
|
||||||
quotes <- quotes[1L]
|
quotes <- quotes[1L]
|
||||||
}
|
}
|
||||||
|
if (isTRUE(initial_captital)) {
|
||||||
|
v[1] <- gsub("^([a-z])", "\\U\\1", v[1], perl = TRUE)
|
||||||
|
}
|
||||||
if (length(v) == 1) {
|
if (length(v) == 1) {
|
||||||
return(paste0(quotes, v, quotes))
|
return(paste0(quotes, v, quotes))
|
||||||
}
|
}
|
||||||
@@ -563,8 +575,9 @@ vector_or <- function(v, quotes = TRUE, reverse = FALSE, sort = TRUE, last_sep =
|
|||||||
last_sep, paste0(quotes, v[length(v)], quotes))
|
last_sep, paste0(quotes, v[length(v)], quotes))
|
||||||
}
|
}
|
||||||
|
|
||||||
vector_and <- function(v, quotes = TRUE, reverse = FALSE, sort = TRUE) {
|
vector_and <- function(v, quotes = TRUE, reverse = FALSE, sort = TRUE, initial_captital = FALSE) {
|
||||||
vector_or(v = v, quotes = quotes, reverse = reverse, sort = sort, last_sep = " and ")
|
vector_or(v = v, quotes = quotes, reverse = reverse, sort = sort,
|
||||||
|
initial_captital = initial_captital, last_sep = " and ")
|
||||||
}
|
}
|
||||||
|
|
||||||
format_class <- function(class, plural = FALSE) {
|
format_class <- function(class, plural = FALSE) {
|
||||||
@@ -698,7 +711,7 @@ meet_criteria <- function(object,
|
|||||||
ifelse(!is.null(has_length) && length(has_length) == 1 && has_length == 1,
|
ifelse(!is.null(has_length) && length(has_length) == 1 && has_length == 1,
|
||||||
"be a finite number",
|
"be a finite number",
|
||||||
"all be finite numbers"),
|
"all be finite numbers"),
|
||||||
" (i.e., not be infinite)",
|
" (i.e. not be infinite)",
|
||||||
call = call_depth)
|
call = call_depth)
|
||||||
}
|
}
|
||||||
if (!is.null(contains_column_class)) {
|
if (!is.null(contains_column_class)) {
|
||||||
@@ -716,11 +729,6 @@ meet_criteria <- function(object,
|
|||||||
}
|
}
|
||||||
|
|
||||||
get_current_data <- function(arg_name, call) {
|
get_current_data <- function(arg_name, call) {
|
||||||
# check if retrieved before, then get it from package environment
|
|
||||||
if (identical(unique_call_id(entire_session = FALSE), pkg_env$get_current_data.call)) {
|
|
||||||
return(pkg_env$get_current_data.out)
|
|
||||||
}
|
|
||||||
|
|
||||||
# try dplyr::cur_data_all() first to support dplyr groups
|
# try dplyr::cur_data_all() first to support dplyr groups
|
||||||
# only useful for e.g. dplyr::filter(), dplyr::mutate() and dplyr::summarise()
|
# only useful for e.g. dplyr::filter(), dplyr::mutate() and dplyr::summarise()
|
||||||
# not useful (throws error) with e.g. dplyr::select() - but that will be caught later in this function
|
# not useful (throws error) with e.g. dplyr::select() - but that will be caught later in this function
|
||||||
@@ -728,72 +736,36 @@ get_current_data <- function(arg_name, call) {
|
|||||||
if (!is.null(cur_data_all)) {
|
if (!is.null(cur_data_all)) {
|
||||||
out <- tryCatch(cur_data_all(), error = function(e) NULL)
|
out <- tryCatch(cur_data_all(), error = function(e) NULL)
|
||||||
if (is.data.frame(out)) {
|
if (is.data.frame(out)) {
|
||||||
out <- structure(out, type = "dplyr_cur_data_all")
|
message("==> RETURNING cur_data_all()")
|
||||||
pkg_env$get_current_data.call <- unique_call_id(entire_session = FALSE)
|
return(structure(out, type = "dplyr_cur_data_all"))
|
||||||
pkg_env$get_current_data.out <- out
|
|
||||||
return(out)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getRversion() < "3.2") {
|
|
||||||
# R-3.0 and R-3.1 do not have an `x` element in the call stack, rendering this function useless
|
|
||||||
if (is.na(arg_name)) {
|
|
||||||
# like in carbapenems() etc.
|
|
||||||
warning_("this function can only be used in R >= 3.2", call = call)
|
|
||||||
return(data.frame())
|
|
||||||
} else {
|
|
||||||
# mimic a default R error, e.g. for example_isolates[which(mo_name() %like% "^ent"), ]
|
|
||||||
stop_("argument `", arg_name, "` is missing with no default", call = call)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# try a (base R) method, by going over the complete system call stack with sys.frames()
|
# try a manual (base R) method, by going over all underlying environments with sys.frames()
|
||||||
not_set <- TRUE
|
for (env in sys.frames()) {
|
||||||
source <- "base_R"
|
if (!is.null(env$`.Generic`)) {
|
||||||
frms <- lapply(sys.frames(), function(el) {
|
# don't check `".Generic" %in% names(env)`, because in R < 3.2, `names(env)` is always NULL
|
||||||
if (not_set == TRUE && ".Generic" %in% names(el)) {
|
|
||||||
if (tryCatch(".data" %in% names(el) && is.data.frame(el$`.data`), error = function(e) FALSE)) {
|
if (!is.null(env$`.data`) && is.data.frame(env$`.data`)) {
|
||||||
# - - - -
|
# an element `.data` will be in the environment when using `dplyr::select()`
|
||||||
# dplyr
|
# (but not when using `dplyr::filter()`, `dplyr::mutate()` or `dplyr::summarise()`)
|
||||||
# - - - -
|
message("==> RETURNING dplyr_selector")
|
||||||
# an element `.data` will be in the system call stack when using dplyr::select()
|
return(structure(env$`.data`, type = "dplyr_selector"))
|
||||||
# [but not when using dplyr::filter(), dplyr::mutate() or dplyr::summarise()]
|
|
||||||
not_set <<- FALSE
|
} else if (!is.null(env$xx) && is.data.frame(env$xx)) {
|
||||||
source <<- "dplyr_selector"
|
# an element `xx` will be in the environment for rows + cols, e.g. `example_isolates[c(1:3), carbapenems()]`
|
||||||
el$`.data`
|
message("==> RETURNING base_R 1")
|
||||||
} else if (tryCatch(any(c("x", "xx") %in% names(el)), error = function(e) FALSE)) {
|
return(structure(env$xx, type = "base_R"))
|
||||||
# - - - -
|
|
||||||
# base R
|
} else if (!is.null(env$x) && is.data.frame(env$x)) {
|
||||||
# - - - -
|
# an element `x` will be in the environment for only cols, e.g. `example_isolates[, carbapenems()]`
|
||||||
# an element `x` will be in this environment for only cols, e.g. `example_isolates[, carbapenems()]`
|
message("==> RETURNING base_R 2")
|
||||||
# an element `xx` will be in this environment for rows + cols, e.g. `example_isolates[c(1:3), carbapenems()]`
|
return(structure(env$x, type = "base_R"))
|
||||||
if (tryCatch(is.data.frame(el$xx), error = function(e) FALSE)) {
|
|
||||||
not_set <<- FALSE
|
|
||||||
el$xx
|
|
||||||
} else if (tryCatch(is.data.frame(el$x))) {
|
|
||||||
not_set <<- FALSE
|
|
||||||
el$x
|
|
||||||
} else {
|
|
||||||
NULL
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
NULL
|
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
NULL
|
|
||||||
}
|
}
|
||||||
})
|
|
||||||
|
|
||||||
# lookup the matched frame and return its value: a data.frame
|
|
||||||
vars_df <- tryCatch(frms[[which(!vapply(FUN.VALUE = logical(1), frms, is.null))]], error = function(e) NULL)
|
|
||||||
if (is.data.frame(vars_df)) {
|
|
||||||
out <- structure(vars_df, type = source)
|
|
||||||
pkg_env$get_current_data.call <- unique_call_id(entire_session = FALSE)
|
|
||||||
pkg_env$get_current_data.out <- out
|
|
||||||
return(out)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# nothing worked, so:
|
# no data.frame found, so an error must be returned:
|
||||||
if (is.na(arg_name)) {
|
if (is.na(arg_name)) {
|
||||||
if (isTRUE(is.numeric(call))) {
|
if (isTRUE(is.numeric(call))) {
|
||||||
fn <- as.character(sys.call(call + 1)[1])
|
fn <- as.character(sys.call(call + 1)[1])
|
||||||
@@ -805,10 +777,11 @@ get_current_data <- function(arg_name, call) {
|
|||||||
} else {
|
} else {
|
||||||
examples <- ""
|
examples <- ""
|
||||||
}
|
}
|
||||||
stop_("this function must be used inside valid dplyr selection verbs or inside a data.frame call",
|
stop_("this function must be used inside a `dplyr` verb or `data.frame` call",
|
||||||
examples,
|
examples,
|
||||||
call = call)
|
call = call)
|
||||||
} else {
|
} else {
|
||||||
|
# mimic a base R error that the argument is missing
|
||||||
stop_("argument `", arg_name, "` is missing with no default", call = call)
|
stop_("argument `", arg_name, "` is missing with no default", call = call)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -823,19 +796,19 @@ get_current_column <- function() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# cur_column() doesn't always work (only allowed for conditions set by dplyr), but it's probably still possible:
|
# cur_column() doesn't always work (only allowed for certain conditions set by dplyr), but it's probably still possible:
|
||||||
frms <- lapply(sys.frames(), function(el) {
|
frms <- lapply(sys.frames(), function(env) {
|
||||||
if ("i" %in% names(el)) {
|
if (!is.null(env$i)) {
|
||||||
if ("tibble_vars" %in% names(el)) {
|
if (!is.null(env$tibble_vars)) {
|
||||||
# for mutate_if()
|
# for mutate_if()
|
||||||
el$tibble_vars[el$i]
|
env$tibble_vars[env$i]
|
||||||
} else {
|
} else {
|
||||||
# for mutate(across())
|
# for mutate(across())
|
||||||
df <- tryCatch(get_current_data(NA, 0), error = function(e) NULL)
|
df <- tryCatch(get_current_data(NA, 0), error = function(e) NULL)
|
||||||
if (is.data.frame(df)) {
|
if (is.data.frame(df)) {
|
||||||
colnames(df)[el$i]
|
colnames(df)[env$i]
|
||||||
} else {
|
} else {
|
||||||
el$i
|
env$i
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@@ -853,7 +826,7 @@ get_current_column <- function() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
is_null_or_grouped_tbl <- function(x) {
|
is_null_or_grouped_tbl <- function(x) {
|
||||||
# attribute "grouped_df" might change at one point, so only set in one place; here.
|
# class "grouped_df" might change at one point, so only set in one place; here.
|
||||||
is.null(x) || inherits(x, "grouped_df")
|
is.null(x) || inherits(x, "grouped_df")
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -862,7 +835,7 @@ unique_call_id <- function(entire_session = FALSE) {
|
|||||||
c(envir = "session",
|
c(envir = "session",
|
||||||
call = "session")
|
call = "session")
|
||||||
} else {
|
} else {
|
||||||
# combination of environment ID (like "0x7fed4ee8c848")
|
# combination of environment ID (such as "0x7fed4ee8c848")
|
||||||
# and highest system call
|
# and highest system call
|
||||||
call <- paste0(deparse(sys.calls()[[1]]), collapse = "")
|
call <- paste0(deparse(sys.calls()[[1]]), collapse = "")
|
||||||
if (!interactive() || call %like% "run_test_dir|test_all|tinytest|test_package|testthat") {
|
if (!interactive() || call %like% "run_test_dir|test_all|tinytest|test_package|testthat") {
|
||||||
@@ -874,16 +847,18 @@ unique_call_id <- function(entire_session = FALSE) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
remember_thrown_message <- function(fn, entire_session = FALSE) {
|
|
||||||
# this is to prevent that messages/notes will be printed for every dplyr group
|
|
||||||
# e.g. this would show a msg 4 times: example_isolates %>% group_by(hospital_id) %>% filter(mo_is_gram_negative())
|
|
||||||
assign(x = paste0("thrown_msg.", fn),
|
|
||||||
value = unique_call_id(entire_session = entire_session),
|
|
||||||
envir = pkg_env)
|
|
||||||
}
|
|
||||||
|
|
||||||
message_not_thrown_before <- function(fn, entire_session = FALSE) {
|
message_not_thrown_before <- function(fn, entire_session = FALSE) {
|
||||||
is.null(pkg_env[[paste0("thrown_msg.", fn)]]) || !identical(pkg_env[[paste0("thrown_msg.", fn)]], unique_call_id(entire_session))
|
# this is to prevent that messages/notes will be printed for every dplyr group or more than once per session
|
||||||
|
# e.g. this would show a msg 4 times: example_isolates %>% group_by(hospital_id) %>% filter(mo_is_gram_negative())
|
||||||
|
not_thrown_before <- is.null(pkg_env[[paste0("thrown_msg.", fn)]]) || !identical(pkg_env[[paste0("thrown_msg.", fn)]],
|
||||||
|
unique_call_id(entire_session = entire_session))
|
||||||
|
if (isTRUE(not_thrown_before)) {
|
||||||
|
# message was not thrown before - remember this so on the next run it will return FALSE:
|
||||||
|
assign(x = paste0("thrown_msg.", fn),
|
||||||
|
value = unique_call_id(entire_session = entire_session),
|
||||||
|
envir = pkg_env)
|
||||||
|
}
|
||||||
|
not_thrown_before
|
||||||
}
|
}
|
||||||
|
|
||||||
has_colour <- function() {
|
has_colour <- function() {
|
||||||
@@ -978,12 +953,12 @@ font_grey <- function(..., collapse = " ") {
|
|||||||
try_colour(..., before = "\033[38;5;249m", after = "\033[39m", collapse = collapse)
|
try_colour(..., before = "\033[38;5;249m", after = "\033[39m", collapse = collapse)
|
||||||
}
|
}
|
||||||
font_grey_bg <- function(..., collapse = " ") {
|
font_grey_bg <- function(..., collapse = " ") {
|
||||||
if (tryCatch(rstudioapi::getThemeInfo()$dark == TRUE, error = function(e) FALSE)) {
|
if (tryCatch(import_fn("getThemeInfo", "rstudioapi", error_on_fail = FALSE)()$dark, error = function(e) FALSE)) {
|
||||||
# similar to HTML #444444
|
# similar to HTML #444444
|
||||||
try_colour(..., before = "\033[48;5;238m", after = "\033[49m", collapse = collapse)
|
try_colour(..., before = "\033[48;5;238m", after = "\033[49m", collapse = collapse)
|
||||||
} else {
|
} else {
|
||||||
# similar to HTML #eeeeee
|
# similar to HTML #f0f0f0
|
||||||
try_colour(..., before = "\033[48;5;254m", after = "\033[49m", collapse = collapse)
|
try_colour(..., before = "\033[48;5;255m", after = "\033[49m", collapse = collapse)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
font_green_bg <- function(..., collapse = " ") {
|
font_green_bg <- function(..., collapse = " ") {
|
||||||
|
|||||||
@@ -33,7 +33,7 @@
|
|||||||
#' @param ... arguments passed on to internal functions
|
#' @param ... arguments passed on to internal functions
|
||||||
#' @rdname as.ab
|
#' @rdname as.ab
|
||||||
#' @inheritSection WHOCC WHOCC
|
#' @inheritSection WHOCC WHOCC
|
||||||
#' @details All entries in the [antibiotics] data set have three different identifiers: a human readable EARS-Net code (column `ab`, used by ECDC and WHONET), an ATC code (column `atc`, used by WHO), and a CID code (column `cid`, Compound ID, used by PubChem). The data set contains more than 5,000 official brand names from many different countries, as found in PubChem.
|
#' @details All entries in the [antibiotics] data set have three different identifiers: a human readable EARS-Net code (column `ab`, used by ECDC and WHONET), an ATC code (column `atc`, used by WHO), and a CID code (column `cid`, Compound ID, used by PubChem). The data set contains more than 5,000 official brand names from many different countries, as found in PubChem. Not that some drugs contain multiple ATC codes.
|
||||||
#'
|
#'
|
||||||
#' All these properties will be searched for the user input. The [as.ab()] can correct for different forms of misspelling:
|
#' All these properties will be searched for the user input. The [as.ab()] can correct for different forms of misspelling:
|
||||||
#'
|
#'
|
||||||
@@ -101,6 +101,11 @@ as.ab <- function(x, flag_multiple_results = TRUE, info = interactive(), ...) {
|
|||||||
if (is.ab(x)) {
|
if (is.ab(x)) {
|
||||||
return(x)
|
return(x)
|
||||||
}
|
}
|
||||||
|
if (all(x %in% c(AB_lookup$ab, NA))) {
|
||||||
|
# all valid AB codes, but not yet right class
|
||||||
|
return(set_clean_class(x,
|
||||||
|
new_class = c("ab", "character")))
|
||||||
|
}
|
||||||
|
|
||||||
initial_search <- is.null(list(...)$initial_search)
|
initial_search <- is.null(list(...)$initial_search)
|
||||||
already_regex <- isTRUE(list(...)$already_regex)
|
already_regex <- isTRUE(list(...)$already_regex)
|
||||||
@@ -110,24 +115,6 @@ as.ab <- function(x, flag_multiple_results = TRUE, info = interactive(), ...) {
|
|||||||
x <- toupper(x)
|
x <- toupper(x)
|
||||||
x_nonNA <- x[!is.na(x)]
|
x_nonNA <- x[!is.na(x)]
|
||||||
|
|
||||||
if (all(x_nonNA %in% antibiotics$ab, na.rm = TRUE)) {
|
|
||||||
# all valid AB codes, but not yet right class
|
|
||||||
return(set_clean_class(x,
|
|
||||||
new_class = c("ab", "character")))
|
|
||||||
}
|
|
||||||
if (all(x_nonNA %in% toupper(antibiotics$name), na.rm = TRUE)) {
|
|
||||||
# all valid AB names
|
|
||||||
out <- antibiotics$ab[match(x, toupper(antibiotics$name))]
|
|
||||||
out[is.na(x)] <- NA_character_
|
|
||||||
return(out)
|
|
||||||
}
|
|
||||||
if (all(x_nonNA %in% antibiotics$atc, na.rm = TRUE)) {
|
|
||||||
# all valid ATC codes
|
|
||||||
out <- antibiotics$ab[match(x, antibiotics$atc)]
|
|
||||||
out[is.na(x)] <- NA_character_
|
|
||||||
return(out)
|
|
||||||
}
|
|
||||||
|
|
||||||
# remove diacritics
|
# remove diacritics
|
||||||
x <- iconv(x, from = "UTF-8", to = "ASCII//TRANSLIT")
|
x <- iconv(x, from = "UTF-8", to = "ASCII//TRANSLIT")
|
||||||
x <- gsub('"', "", x, fixed = TRUE)
|
x <- gsub('"', "", x, fixed = TRUE)
|
||||||
@@ -155,13 +142,29 @@ as.ab <- function(x, flag_multiple_results = TRUE, info = interactive(), ...) {
|
|||||||
found[1L]
|
found[1L]
|
||||||
}
|
}
|
||||||
|
|
||||||
if (initial_search == TRUE) {
|
# Fill in names, AB codes, CID codes and ATC codes directly (`x` is already clean and uppercase)
|
||||||
progress <- progress_ticker(n = length(x), n_min = 25, print = info) # start if n >= 25
|
known_names <- x %in% AB_lookup$generalised_name
|
||||||
|
x_new[known_names] <- AB_lookup$ab[match(x[known_names], AB_lookup$generalised_name)]
|
||||||
|
known_codes_ab <- x %in% AB_lookup$ab
|
||||||
|
known_codes_atc <- vapply(FUN.VALUE = logical(1), x, function(x_) x_ %in% unlist(AB_lookup$atc), USE.NAMES = FALSE)
|
||||||
|
known_codes_cid <- x %in% AB_lookup$cid
|
||||||
|
x_new[known_codes_ab] <- AB_lookup$ab[match(x[known_codes_ab], AB_lookup$ab)]
|
||||||
|
x_new[known_codes_atc] <- AB_lookup$ab[vapply(FUN.VALUE = integer(1),
|
||||||
|
x[known_codes_atc],
|
||||||
|
function(x_) which(vapply(FUN.VALUE = logical(1),
|
||||||
|
AB_lookup$atc,
|
||||||
|
function(atc) x_ %in% atc)),
|
||||||
|
USE.NAMES = FALSE)]
|
||||||
|
x_new[known_codes_cid] <- AB_lookup$ab[match(x[known_codes_cid], AB_lookup$cid)]
|
||||||
|
already_known <- known_names | known_codes_ab | known_codes_atc | known_codes_cid
|
||||||
|
|
||||||
|
if (initial_search == TRUE & sum(already_known) < length(x)) {
|
||||||
|
progress <- progress_ticker(n = sum(!already_known), n_min = 25, print = info) # start if n >= 25
|
||||||
on.exit(close(progress))
|
on.exit(close(progress))
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i in seq_len(length(x))) {
|
for (i in which(!already_known)) {
|
||||||
|
|
||||||
if (initial_search == TRUE) {
|
if (initial_search == TRUE) {
|
||||||
progress$tick()
|
progress$tick()
|
||||||
}
|
}
|
||||||
@@ -189,34 +192,6 @@ as.ab <- function(x, flag_multiple_results = TRUE, info = interactive(), ...) {
|
|||||||
next
|
next
|
||||||
}
|
}
|
||||||
|
|
||||||
# exact name
|
|
||||||
found <- antibiotics[which(AB_lookup$generalised_name == x[i]), ]$ab
|
|
||||||
if (length(found) > 0) {
|
|
||||||
x_new[i] <- found[1L]
|
|
||||||
next
|
|
||||||
}
|
|
||||||
|
|
||||||
# exact AB code
|
|
||||||
found <- antibiotics[which(antibiotics$ab == x[i]), ]$ab
|
|
||||||
if (length(found) > 0) {
|
|
||||||
x_new[i] <- note_if_more_than_one_found(found, i, from_text)
|
|
||||||
next
|
|
||||||
}
|
|
||||||
|
|
||||||
# exact ATC code
|
|
||||||
found <- antibiotics[which(antibiotics$atc == x[i]), ]$ab
|
|
||||||
if (length(found) > 0) {
|
|
||||||
x_new[i] <- note_if_more_than_one_found(found, i, from_text)
|
|
||||||
next
|
|
||||||
}
|
|
||||||
|
|
||||||
# exact CID code
|
|
||||||
found <- antibiotics[which(antibiotics$cid == x[i]), ]$ab
|
|
||||||
if (length(found) > 0) {
|
|
||||||
x_new[i] <- note_if_more_than_one_found(found, i, from_text)
|
|
||||||
next
|
|
||||||
}
|
|
||||||
|
|
||||||
# exact LOINC code
|
# exact LOINC code
|
||||||
loinc_found <- unlist(lapply(AB_lookup$generalised_loinc,
|
loinc_found <- unlist(lapply(AB_lookup$generalised_loinc,
|
||||||
function(s) x[i] %in% s))
|
function(s) x[i] %in% s))
|
||||||
@@ -296,7 +271,7 @@ as.ab <- function(x, flag_multiple_results = TRUE, info = interactive(), ...) {
|
|||||||
x_new[i] <- note_if_more_than_one_found(found, i, from_text)
|
x_new[i] <- note_if_more_than_one_found(found, i, from_text)
|
||||||
next
|
next
|
||||||
}
|
}
|
||||||
|
|
||||||
# INITIAL SEARCH - More uncertain results ----
|
# INITIAL SEARCH - More uncertain results ----
|
||||||
|
|
||||||
if (initial_search == TRUE && fast_mode == FALSE) {
|
if (initial_search == TRUE && fast_mode == FALSE) {
|
||||||
@@ -325,9 +300,9 @@ as.ab <- function(x, flag_multiple_results = TRUE, info = interactive(), ...) {
|
|||||||
function(y) {
|
function(y) {
|
||||||
for (i in seq_len(length(y))) {
|
for (i in seq_len(length(y))) {
|
||||||
for (lang in LANGUAGES_SUPPORTED[LANGUAGES_SUPPORTED != "en"]) {
|
for (lang in LANGUAGES_SUPPORTED[LANGUAGES_SUPPORTED != "en"]) {
|
||||||
y[i] <- ifelse(tolower(y[i]) %in% tolower(translations_file[, lang, drop = TRUE]),
|
y[i] <- ifelse(tolower(y[i]) %in% tolower(TRANSLATIONS[, lang, drop = TRUE]),
|
||||||
translations_file[which(tolower(translations_file[, lang, drop = TRUE]) == tolower(y[i]) &
|
TRANSLATIONS[which(tolower(TRANSLATIONS[, lang, drop = TRUE]) == tolower(y[i]) &
|
||||||
!isFALSE(translations_file$fixed)), "pattern"],
|
!isFALSE(TRANSLATIONS$fixed)), "pattern"],
|
||||||
y[i])
|
y[i])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -461,7 +436,7 @@ as.ab <- function(x, flag_multiple_results = TRUE, info = interactive(), ...) {
|
|||||||
x_unknown <- c(x_unknown, x_bak[x[i] == x_bak_clean][1])
|
x_unknown <- c(x_unknown, x_bak[x[i] == x_bak_clean][1])
|
||||||
}
|
}
|
||||||
|
|
||||||
if (initial_search == TRUE) {
|
if (initial_search == TRUE & sum(already_known) < length(x)) {
|
||||||
close(progress)
|
close(progress)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -479,11 +454,8 @@ as.ab <- function(x, flag_multiple_results = TRUE, info = interactive(), ...) {
|
|||||||
vector_and(x_unknown), ".",
|
vector_and(x_unknown), ".",
|
||||||
call = FALSE)
|
call = FALSE)
|
||||||
}
|
}
|
||||||
|
|
||||||
x_result <- data.frame(x = x_bak_clean, stringsAsFactors = FALSE) %pm>%
|
x_result <- x_new[match(x_bak_clean, x)]
|
||||||
pm_left_join(data.frame(x = x, x_new = x_new, stringsAsFactors = FALSE), by = "x") %pm>%
|
|
||||||
pm_pull(x_new)
|
|
||||||
|
|
||||||
if (length(x_result) == 0) {
|
if (length(x_result) == 0) {
|
||||||
x_result <- NA_character_
|
x_result <- NA_character_
|
||||||
}
|
}
|
||||||
@@ -580,6 +552,15 @@ unique.ab <- function(x, incomparables = FALSE, ...) {
|
|||||||
y
|
y
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#' @method rep ab
|
||||||
|
#' @export
|
||||||
|
#' @noRd
|
||||||
|
rep.ab <- function(x, ...) {
|
||||||
|
y <- NextMethod()
|
||||||
|
attributes(y) <- attributes(x)
|
||||||
|
y
|
||||||
|
}
|
||||||
|
|
||||||
generalise_antibiotic_name <- function(x) {
|
generalise_antibiotic_name <- function(x) {
|
||||||
x <- toupper(x)
|
x <- toupper(x)
|
||||||
# remove suffices
|
# remove suffices
|
||||||
|
|||||||
@@ -23,22 +23,32 @@
|
|||||||
# how to conduct AMR data analysis: https://msberends.github.io/AMR/ #
|
# how to conduct AMR data analysis: https://msberends.github.io/AMR/ #
|
||||||
# ==================================================================== #
|
# ==================================================================== #
|
||||||
|
|
||||||
#' Antibiotic Class Selectors
|
#' Antibiotic Selectors
|
||||||
#'
|
#'
|
||||||
#' These functions help to filter and select columns with antibiotic test results that are of a specific antibiotic class, without the need to define the columns or antibiotic abbreviations. \strong{\Sexpr{ifelse(getRversion() < "3.2", paste0("NOTE: THESE FUNCTIONS DO NOT WORK ON YOUR CURRENT R VERSION. These functions require R version 3.2 or later - you have ", R.version.string, "."), "")}}
|
#' These functions allow for filtering rows and selecting columns based on antibiotic test results that are of a specific antibiotic class or group, without the need to define the columns or antibiotic abbreviations. In short, if you have a column name that resembles an antimicrobial agent, it will be picked up by any of these functions that matches its pharmaceutical class: "cefazolin", "CZO" and "J01DB04" will all be picked up by [cephalosporins()].
|
||||||
#' @inheritSection lifecycle Stable Lifecycle
|
#' @inheritSection lifecycle Stable Lifecycle
|
||||||
#' @param ab_class an antimicrobial class, such as `"carbapenems"`. The columns `group`, `atc_group1` and `atc_group2` of the [antibiotics] data set will be searched (case-insensitive) for this value.
|
#' @param ab_class an antimicrobial class or a part of it, such as `"carba"` and `"carbapenems"`. The columns `group`, `atc_group1` and `atc_group2` of the [antibiotics] data set will be searched (case-insensitive) for this value.
|
||||||
|
#' @param filter an [expression] to be evaluated in the [antibiotics] data set, such as `name %like% "trim"`
|
||||||
#' @param only_rsi_columns a [logical] to indicate whether only columns of class `<rsi>` must be selected (defaults to `FALSE`), see [as.rsi()]
|
#' @param only_rsi_columns a [logical] to indicate whether only columns of class `<rsi>` must be selected (defaults to `FALSE`), see [as.rsi()]
|
||||||
#' @details \strong{\Sexpr{ifelse(getRversion() < "3.2", paste0("NOTE: THESE FUNCTIONS DO NOT WORK ON YOUR CURRENT R VERSION. These functions require R version 3.2 or later - you have ", R.version.string, "."), "")}}
|
#' @param only_treatable a [logical] to indicate whether agents that are only for laboratory tests should be excluded (defaults to `TRUE`), such as gentamicin-high (`GEH`) and imipenem/EDTA (`IPE`)
|
||||||
|
#' @param ... ignored, only in place to allow future extensions
|
||||||
|
#' @details
|
||||||
|
#' These functions can be used in data set calls for selecting columns and filtering rows. They are heavily inspired by the [Tidyverse selection helpers][tidyselect::language] such as [`everything()`][tidyselect::everything()], but also work in base \R and not only in `dplyr` verbs. Nonetheless, they are very convenient to use with `dplyr` functions such as [`select()`][dplyr::select()], [`filter()`][dplyr::filter()] and [`summarise()`][dplyr::summarise()], see *Examples*.
|
||||||
#'
|
#'
|
||||||
|
#' All columns in the data in which these functions are called will be searched for known antibiotic names, abbreviations, brand names, and codes (ATC, EARS-Net, WHO, etc.) according to the [antibiotics] data set. This means that a selector such as [aminoglycosides()] will pick up column names like 'gen', 'genta', 'J01GB03', 'tobra', 'Tobracin', etc.
|
||||||
#'
|
#'
|
||||||
#' These functions can be used in data set calls for selecting columns and filtering rows, see *Examples*. They support base R, but work more convenient in dplyr functions such as [`select()`][dplyr::select()], [`filter()`][dplyr::filter()] and [`summarise()`][dplyr::summarise()].
|
#' The [ab_class()] function can be used to filter/select on a manually defined antibiotic class. It searches for results in the [antibiotics] data set within the columns `group`, `atc_group1` and `atc_group2`.
|
||||||
#'
|
#'
|
||||||
#' All columns in the data in which these functions are called will be searched for known antibiotic names, abbreviations, brand names, and codes (ATC, EARS-Net, WHO, etc.) in the [antibiotics] data set. This means that a selector like e.g. [aminoglycosides()] will pick up column names like 'gen', 'genta', 'J01GB03', 'tobra', 'Tobracin', etc.
|
#' The [ab_selector()] function can be used to internally filter the [antibiotics] data set on any results, see *Examples*. It allows for filtering on a (part of) a certain name, and/or a group name or even a minimum of DDDs for oral treatment. This function yields the highest flexibility, but is also the least user-friendly, since it requires a hard-coded filter to set.
|
||||||
#'
|
#'
|
||||||
#' The group of betalactams consists of all carbapenems, cephalosporins and penicillins.
|
#' The [administrable_per_os()] and [administrable_iv()] functions also rely on the [antibiotics] data set - antibiotic columns will be matched where a DDD (defined daily dose) for resp. oral and IV treatment is available in the [antibiotics] data set.
|
||||||
|
#'
|
||||||
|
#' @section Full list of supported (antibiotic) classes:
|
||||||
|
#'
|
||||||
|
#' `r paste0(" * ", na.omit(sapply(DEFINED_AB_GROUPS, function(ab) ifelse(tolower(gsub("^AB_", "", ab)) %in% ls(envir = asNamespace("AMR")), paste0("[", tolower(gsub("^AB_", "", ab)), "()] can select: \\cr ", vector_and(paste0(ab_name(eval(parse(text = ab), envir = asNamespace("AMR")), language = NULL, tolower = TRUE), " (", eval(parse(text = ab), envir = asNamespace("AMR")), ")"), quotes = FALSE, sort = TRUE)), character(0)), USE.NAMES = FALSE)), "\n", collapse = "")`
|
||||||
#' @rdname antibiotic_class_selectors
|
#' @rdname antibiotic_class_selectors
|
||||||
#' @name antibiotic_class_selectors
|
#' @name antibiotic_class_selectors
|
||||||
|
#' @return (internally) a [character] vector of column names, with additional class `"ab_selector"`
|
||||||
#' @export
|
#' @export
|
||||||
#' @inheritSection AMR Reference Data Publicly Available
|
#' @inheritSection AMR Reference Data Publicly Available
|
||||||
#' @inheritSection AMR Read more on Our Website!
|
#' @inheritSection AMR Read more on Our Website!
|
||||||
@@ -46,7 +56,7 @@
|
|||||||
#' # `example_isolates` is a data set available in the AMR package.
|
#' # `example_isolates` is a data set available in the AMR package.
|
||||||
#' # See ?example_isolates.
|
#' # See ?example_isolates.
|
||||||
#'
|
#'
|
||||||
#' # Base R ------------------------------------------------------------------
|
#' # base R ------------------------------------------------------------------
|
||||||
#'
|
#'
|
||||||
#' # select columns 'IPM' (imipenem) and 'MEM' (meropenem)
|
#' # select columns 'IPM' (imipenem) and 'MEM' (meropenem)
|
||||||
#' example_isolates[, carbapenems()]
|
#' example_isolates[, carbapenems()]
|
||||||
@@ -54,6 +64,9 @@
|
|||||||
#' # select columns 'mo', 'AMK', 'GEN', 'KAN' and 'TOB'
|
#' # select columns 'mo', 'AMK', 'GEN', 'KAN' and 'TOB'
|
||||||
#' example_isolates[, c("mo", aminoglycosides())]
|
#' example_isolates[, c("mo", aminoglycosides())]
|
||||||
#'
|
#'
|
||||||
|
#' # select only antibiotic columns with DDDs for oral treatment
|
||||||
|
#' example_isolates[, administrable_per_os()]
|
||||||
|
#'
|
||||||
#' # filter using any() or all()
|
#' # filter using any() or all()
|
||||||
#' example_isolates[any(carbapenems() == "R"), ]
|
#' example_isolates[any(carbapenems() == "R"), ]
|
||||||
#' subset(example_isolates, any(carbapenems() == "R"))
|
#' subset(example_isolates, any(carbapenems() == "R"))
|
||||||
@@ -68,11 +81,37 @@
|
|||||||
#' # filter + select in one go: get penicillins in carbapenems-resistant strains
|
#' # filter + select in one go: get penicillins in carbapenems-resistant strains
|
||||||
#' example_isolates[any(carbapenems() == "R"), penicillins()]
|
#' example_isolates[any(carbapenems() == "R"), penicillins()]
|
||||||
#'
|
#'
|
||||||
|
#' # You can combine selectors with '&' to be more specific. For example,
|
||||||
|
#' # penicillins() would select benzylpenicillin ('peni G') and
|
||||||
|
#' # administrable_per_os() would select erythromycin. Yet, when combined these
|
||||||
|
#' # drugs are both omitted since benzylpenicillin is not administrable per os
|
||||||
|
#' # and erythromycin is not a penicillin:
|
||||||
|
#' example_isolates[, penicillins() & administrable_per_os()]
|
||||||
|
#'
|
||||||
|
#' # ab_selector() applies a filter in the `antibiotics` data set and is thus very
|
||||||
|
#' # flexible. For instance, to select antibiotic columns with an oral DDD of at
|
||||||
|
#' # least 1 gram:
|
||||||
|
#' example_isolates[, ab_selector(oral_ddd > 1 & oral_units == "g")]
|
||||||
#'
|
#'
|
||||||
#' # dplyr -------------------------------------------------------------------
|
#' # dplyr -------------------------------------------------------------------
|
||||||
#' \donttest{
|
#' \donttest{
|
||||||
#' if (require("dplyr")) {
|
#' if (require("dplyr")) {
|
||||||
#'
|
#'
|
||||||
|
#' # get AMR for all aminoglycosides e.g., per hospital:
|
||||||
|
#' example_isolates %>%
|
||||||
|
#' group_by(hospital_id) %>%
|
||||||
|
#' summarise(across(aminoglycosides(), resistance))
|
||||||
|
#'
|
||||||
|
#' # You can combine selectors with '&' to be more specific:
|
||||||
|
#' example_isolates %>%
|
||||||
|
#' select(penicillins() & administrable_per_os())
|
||||||
|
#'
|
||||||
|
#' # get susceptibility for antibiotics whose name contains "trim":
|
||||||
|
#' example_isolates %>%
|
||||||
|
#' filter(first_isolate()) %>%
|
||||||
|
#' group_by(hospital_id) %>%
|
||||||
|
#' summarise(across(ab_selector(name %like% "trim"), susceptibility))
|
||||||
|
#'
|
||||||
#' # this will select columns 'IPM' (imipenem) and 'MEM' (meropenem):
|
#' # this will select columns 'IPM' (imipenem) and 'MEM' (meropenem):
|
||||||
#' example_isolates %>%
|
#' example_isolates %>%
|
||||||
#' select(carbapenems())
|
#' select(carbapenems())
|
||||||
@@ -99,7 +138,6 @@
|
|||||||
#' example_isolates %>%
|
#' example_isolates %>%
|
||||||
#' select(mo, ab_class("mycobact"))
|
#' select(mo, ab_class("mycobact"))
|
||||||
#'
|
#'
|
||||||
#'
|
|
||||||
#' # get bug/drug combinations for only macrolides in Gram-positives:
|
#' # get bug/drug combinations for only macrolides in Gram-positives:
|
||||||
#' example_isolates %>%
|
#' example_isolates %>%
|
||||||
#' filter(mo_is_gram_positive()) %>%
|
#' filter(mo_is_gram_positive()) %>%
|
||||||
@@ -107,178 +145,379 @@
|
|||||||
#' bug_drug_combinations() %>%
|
#' bug_drug_combinations() %>%
|
||||||
#' format()
|
#' format()
|
||||||
#'
|
#'
|
||||||
#'
|
|
||||||
#' data.frame(some_column = "some_value",
|
#' data.frame(some_column = "some_value",
|
||||||
#' J01CA01 = "S") %>% # ATC code of ampicillin
|
#' J01CA01 = "S") %>% # ATC code of ampicillin
|
||||||
#' select(penicillins()) # only the 'J01CA01' column will be selected
|
#' select(penicillins()) # only the 'J01CA01' column will be selected
|
||||||
#'
|
#'
|
||||||
#'
|
#'
|
||||||
#' # with dplyr 1.0.0 and higher (that adds 'across()'), this is all equal:
|
#' # with dplyr 1.0.0 and higher (that adds 'across()'), this is all equal:
|
||||||
#' # (though the row names on the first are more correct)
|
|
||||||
#' example_isolates[carbapenems() == "R", ]
|
#' example_isolates[carbapenems() == "R", ]
|
||||||
#' example_isolates %>% filter(carbapenems() == "R")
|
#' example_isolates %>% filter(carbapenems() == "R")
|
||||||
#' example_isolates %>% filter(across(carbapenems(), ~.x == "R"))
|
#' example_isolates %>% filter(across(carbapenems(), ~.x == "R"))
|
||||||
#' }
|
#' }
|
||||||
#' }
|
#' }
|
||||||
ab_class <- function(ab_class,
|
ab_class <- function(ab_class,
|
||||||
only_rsi_columns = FALSE) {
|
only_rsi_columns = FALSE,
|
||||||
ab_selector(ab_class, function_name = "ab_class", only_rsi_columns = only_rsi_columns)
|
only_treatable = TRUE,
|
||||||
|
...) {
|
||||||
|
meet_criteria(ab_class, allow_class = "character", has_length = 1, allow_NULL = TRUE)
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
meet_criteria(only_treatable, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec(NULL, only_rsi_columns = only_rsi_columns, ab_class_args = ab_class, only_treatable = only_treatable)
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname antibiotic_class_selectors
|
#' @rdname antibiotic_class_selectors
|
||||||
#' @export
|
#' @export
|
||||||
aminoglycosides <- function(only_rsi_columns = FALSE) {
|
ab_selector <- function(filter,
|
||||||
ab_selector("aminoglycoside", function_name = "aminoglycosides", only_rsi_columns = only_rsi_columns)
|
only_rsi_columns = FALSE,
|
||||||
}
|
only_treatable = TRUE,
|
||||||
|
...) {
|
||||||
#' @rdname antibiotic_class_selectors
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
#' @export
|
meet_criteria(only_treatable, allow_class = "logical", has_length = 1)
|
||||||
betalactams <- function(only_rsi_columns = FALSE) {
|
|
||||||
ab_selector("carbapenem|cephalosporin|penicillin", function_name = "betalactams", only_rsi_columns = only_rsi_columns)
|
|
||||||
}
|
|
||||||
#' @rdname antibiotic_class_selectors
|
|
||||||
#' @export
|
|
||||||
carbapenems <- function(only_rsi_columns = FALSE) {
|
|
||||||
ab_selector("carbapenem", function_name = "carbapenems", only_rsi_columns = only_rsi_columns)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @rdname antibiotic_class_selectors
|
|
||||||
#' @export
|
|
||||||
cephalosporins <- function(only_rsi_columns = FALSE) {
|
|
||||||
ab_selector("cephalosporin", function_name = "cephalosporins", only_rsi_columns = only_rsi_columns)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @rdname antibiotic_class_selectors
|
|
||||||
#' @export
|
|
||||||
cephalosporins_1st <- function(only_rsi_columns = FALSE) {
|
|
||||||
ab_selector("cephalosporins.*1", function_name = "cephalosporins_1st", only_rsi_columns = only_rsi_columns)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @rdname antibiotic_class_selectors
|
|
||||||
#' @export
|
|
||||||
cephalosporins_2nd <- function(only_rsi_columns = FALSE) {
|
|
||||||
ab_selector("cephalosporins.*2", function_name = "cephalosporins_2nd", only_rsi_columns = only_rsi_columns)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @rdname antibiotic_class_selectors
|
|
||||||
#' @export
|
|
||||||
cephalosporins_3rd <- function(only_rsi_columns = FALSE) {
|
|
||||||
ab_selector("cephalosporins.*3", function_name = "cephalosporins_3rd", only_rsi_columns = only_rsi_columns)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @rdname antibiotic_class_selectors
|
|
||||||
#' @export
|
|
||||||
cephalosporins_4th <- function(only_rsi_columns = FALSE) {
|
|
||||||
ab_selector("cephalosporins.*4", function_name = "cephalosporins_4th", only_rsi_columns = only_rsi_columns)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @rdname antibiotic_class_selectors
|
|
||||||
#' @export
|
|
||||||
cephalosporins_5th <- function(only_rsi_columns = FALSE) {
|
|
||||||
ab_selector("cephalosporins.*5", function_name = "cephalosporins_5th", only_rsi_columns = only_rsi_columns)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @rdname antibiotic_class_selectors
|
|
||||||
#' @export
|
|
||||||
fluoroquinolones <- function(only_rsi_columns = FALSE) {
|
|
||||||
ab_selector("fluoroquinolone", function_name = "fluoroquinolones", only_rsi_columns = only_rsi_columns)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @rdname antibiotic_class_selectors
|
|
||||||
#' @export
|
|
||||||
glycopeptides <- function(only_rsi_columns = FALSE) {
|
|
||||||
ab_selector("glycopeptide", function_name = "glycopeptides", only_rsi_columns = only_rsi_columns)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @rdname antibiotic_class_selectors
|
|
||||||
#' @export
|
|
||||||
macrolides <- function(only_rsi_columns = FALSE) {
|
|
||||||
ab_selector("macrolide", function_name = "macrolides", only_rsi_columns = only_rsi_columns)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @rdname antibiotic_class_selectors
|
|
||||||
#' @export
|
|
||||||
oxazolidinones <- function(only_rsi_columns = FALSE) {
|
|
||||||
ab_selector("oxazolidinone", function_name = "oxazolidinones", only_rsi_columns = only_rsi_columns)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @rdname antibiotic_class_selectors
|
|
||||||
#' @export
|
|
||||||
penicillins <- function(only_rsi_columns = FALSE) {
|
|
||||||
ab_selector("penicillin", function_name = "penicillins", only_rsi_columns = only_rsi_columns)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @rdname antibiotic_class_selectors
|
|
||||||
#' @export
|
|
||||||
tetracyclines <- function(only_rsi_columns = FALSE) {
|
|
||||||
ab_selector("tetracycline", function_name = "tetracyclines", only_rsi_columns = only_rsi_columns)
|
|
||||||
}
|
|
||||||
|
|
||||||
ab_selector <- function(ab_class,
|
|
||||||
function_name,
|
|
||||||
only_rsi_columns) {
|
|
||||||
meet_criteria(ab_class, allow_class = "character", has_length = 1, .call_depth = 1)
|
|
||||||
meet_criteria(function_name, allow_class = "character", has_length = 1, .call_depth = 1)
|
|
||||||
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1, .call_depth = 1)
|
|
||||||
|
|
||||||
if (getRversion() < "3.2") {
|
# get_current_data() has to run each time, for cases where e.g., filter() and select() are used in same call
|
||||||
warning_("antibiotic class selectors such as ", function_name,
|
# but it only takes a couple of milliseconds
|
||||||
"() require R version 3.2 or later - you have ", R.version.string,
|
vars_df <- get_current_data(arg_name = NA, call = -2)
|
||||||
call = FALSE)
|
# to improve speed, get_column_abx() will only run once when e.g. in a select or group call
|
||||||
return(NULL)
|
ab_in_data <- get_column_abx(vars_df, info = FALSE, only_rsi_columns = only_rsi_columns, sort = FALSE)
|
||||||
}
|
call <- substitute(filter)
|
||||||
|
agents <- tryCatch(AMR::antibiotics[which(eval(call, envir = AMR::antibiotics)), "ab", drop = TRUE],
|
||||||
# to improve speed, get_current_data() and get_column_abx() only run once when e.g. in a select or group call
|
error = function(e) stop_(e$message, call = -5))
|
||||||
|
agents <- ab_in_data[ab_in_data %in% agents]
|
||||||
|
message_agent_names(function_name = "ab_selector",
|
||||||
|
agents = agents,
|
||||||
|
ab_group = NULL,
|
||||||
|
examples = "",
|
||||||
|
call = call)
|
||||||
|
structure(unname(agents),
|
||||||
|
class = c("ab_selector", "character"))
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
administrable_per_os <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
# get_current_data() has to run each time, for cases where e.g., filter() and select() are used in same call
|
||||||
|
# but it only takes a couple of milliseconds
|
||||||
|
vars_df <- get_current_data(arg_name = NA, call = -2)
|
||||||
|
# to improve speed, get_column_abx() will only run once when e.g. in a select or group call
|
||||||
|
ab_in_data <- get_column_abx(vars_df, info = FALSE, only_rsi_columns = only_rsi_columns, sort = FALSE)
|
||||||
|
agents_all <- antibiotics[which(!is.na(antibiotics$oral_ddd)), "ab", drop = TRUE]
|
||||||
|
agents <- antibiotics[which(antibiotics$ab %in% ab_in_data & !is.na(antibiotics$oral_ddd)), "ab", drop = TRUE]
|
||||||
|
agents <- ab_in_data[ab_in_data %in% agents]
|
||||||
|
message_agent_names(function_name = "administrable_per_os",
|
||||||
|
agents = agents,
|
||||||
|
ab_group = "administrable_per_os",
|
||||||
|
examples = paste0(" (such as ",
|
||||||
|
vector_or(ab_name(sample(agents_all,
|
||||||
|
size = min(5, length(agents_all)),
|
||||||
|
replace = FALSE),
|
||||||
|
tolower = TRUE,
|
||||||
|
language = NULL),
|
||||||
|
quotes = FALSE),
|
||||||
|
")"))
|
||||||
|
structure(unname(agents),
|
||||||
|
class = c("ab_selector", "character"))
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
administrable_iv <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
# get_current_data() has to run each time, for cases where e.g., filter() and select() are used in same call
|
||||||
|
# but it only takes a couple of milliseconds
|
||||||
|
vars_df <- get_current_data(arg_name = NA, call = -2)
|
||||||
|
# to improve speed, get_column_abx() will only run once when e.g. in a select or group call
|
||||||
|
ab_in_data <- get_column_abx(vars_df, info = FALSE, only_rsi_columns = only_rsi_columns, sort = FALSE)
|
||||||
|
agents_all <- antibiotics[which(!is.na(antibiotics$iv_ddd)), "ab", drop = TRUE]
|
||||||
|
agents <- antibiotics[which(antibiotics$ab %in% ab_in_data & !is.na(antibiotics$iv_ddd)), "ab", drop = TRUE]
|
||||||
|
agents <- ab_in_data[ab_in_data %in% agents]
|
||||||
|
message_agent_names(function_name = "administrable_iv",
|
||||||
|
agents = agents,
|
||||||
|
ab_group = "administrable_iv",
|
||||||
|
examples = "")
|
||||||
|
structure(unname(agents),
|
||||||
|
class = c("ab_selector", "character"))
|
||||||
|
}
|
||||||
|
|
||||||
|
# nolint start
|
||||||
|
# #' @rdname antibiotic_class_selectors
|
||||||
|
# #' @export
|
||||||
|
# not_intrinsic_resistant <- function(mo, ..., only_rsi_columns = FALSE, ...) {
|
||||||
|
# meet_criteria(mo, allow_class = c("mo", "data.frame", "list", "character", "numeric", "integer", "factor"), has_length = 1, allow_NA = FALSE)
|
||||||
|
# meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
#
|
||||||
|
# x <- as.mo(mo, ...)
|
||||||
|
# wont_work <- intrinsic_resistant[which(intrinsic_resistant$microorganism == mo_name(x, language = NULL)),
|
||||||
|
# "antibiotic",
|
||||||
|
# drop = TRUE]
|
||||||
|
#
|
||||||
|
# # get_current_data() has to run each time, for cases where e.g., filter() and select() are used in same call
|
||||||
|
# # but it only takes a couple of milliseconds
|
||||||
|
# vars_df <- get_current_data(arg_name = NA, call = -2)
|
||||||
|
# # to improve speed, get_column_abx() will only run once when e.g. in a select or group call
|
||||||
|
# ab_in_data <- get_column_abx(vars_df, info = FALSE, only_rsi_columns = only_rsi_columns, sort = FALSE)
|
||||||
|
#
|
||||||
|
# agents <- ab_in_data[!names(ab_in_data) %in% as.character(as.ab(wont_work))]
|
||||||
|
#
|
||||||
|
# # show used version number once per session (pkg_env will reload every session)
|
||||||
|
# if (message_not_thrown_before("intrinsic_resistant_version.ab", entire_session = TRUE)) {
|
||||||
|
# message_("Determining intrinsic resistance based on ",
|
||||||
|
# format_eucast_version_nr(3.2, markdown = FALSE), ". ",
|
||||||
|
# font_red("This note will be shown once per session."))
|
||||||
|
# }
|
||||||
|
#
|
||||||
|
# message_agent_names(function_name = "not_intrinsic_resistant",
|
||||||
|
# agents = ab_in_data,
|
||||||
|
# ab_group = NULL,
|
||||||
|
# examples = "",
|
||||||
|
# call = mo_name(x, language = NULL))
|
||||||
|
#
|
||||||
|
# agents
|
||||||
|
# }
|
||||||
|
# nolint end
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
aminoglycosides <- function(only_rsi_columns = FALSE, only_treatable = TRUE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
meet_criteria(only_treatable, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("aminoglycosides", only_rsi_columns = only_rsi_columns, only_treatable = only_treatable)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
aminopenicillins <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("aminopenicillins", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
antifungals <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("antifungals", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
antimycobacterials <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("antimycobacterials", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
betalactams <- function(only_rsi_columns = FALSE, only_treatable = TRUE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
meet_criteria(only_treatable, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("betalactams", only_rsi_columns = only_rsi_columns, only_treatable = only_treatable)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
carbapenems <- function(only_rsi_columns = FALSE, only_treatable = TRUE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
meet_criteria(only_treatable, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("carbapenems", only_rsi_columns = only_rsi_columns, only_treatable = only_treatable)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
cephalosporins <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("cephalosporins", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
cephalosporins_1st <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("cephalosporins_1st", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
cephalosporins_2nd <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("cephalosporins_2nd", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
cephalosporins_3rd <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("cephalosporins_3rd", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
cephalosporins_4th <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("cephalosporins_4th", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
cephalosporins_5th <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("cephalosporins_5th", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
fluoroquinolones <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("fluoroquinolones", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
glycopeptides <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("glycopeptides", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
lincosamides <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("lincosamides", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
lipoglycopeptides <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("lipoglycopeptides", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
macrolides <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("macrolides", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
oxazolidinones <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("oxazolidinones", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
penicillins <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("penicillins", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
polymyxins <- function(only_rsi_columns = FALSE, only_treatable = TRUE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
meet_criteria(only_treatable, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("polymyxins", only_rsi_columns = only_rsi_columns, only_treatable = only_treatable)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
streptogramins <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("streptogramins", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
quinolones <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("quinolones", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
tetracyclines <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("tetracyclines", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
trimethoprims <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("trimethoprims", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname antibiotic_class_selectors
|
||||||
|
#' @export
|
||||||
|
ureidopenicillins <- function(only_rsi_columns = FALSE, ...) {
|
||||||
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
ab_select_exec("ureidopenicillins", only_rsi_columns = only_rsi_columns)
|
||||||
|
}
|
||||||
|
|
||||||
|
ab_select_exec <- function(function_name,
|
||||||
|
only_rsi_columns = FALSE,
|
||||||
|
only_treatable = FALSE,
|
||||||
|
ab_class_args = NULL) {
|
||||||
|
# get_current_data() has to run each time, for cases where e.g., filter() and select() are used in same call
|
||||||
|
# but it only takes a couple of milliseconds
|
||||||
vars_df <- get_current_data(arg_name = NA, call = -3)
|
vars_df <- get_current_data(arg_name = NA, call = -3)
|
||||||
|
# to improve speed, get_column_abx() will only run once when e.g. in a select or group call
|
||||||
ab_in_data <- get_column_abx(vars_df, info = FALSE, only_rsi_columns = only_rsi_columns, sort = FALSE)
|
ab_in_data <- get_column_abx(vars_df, info = FALSE, only_rsi_columns = only_rsi_columns, sort = FALSE)
|
||||||
|
|
||||||
|
# untreatable drugs
|
||||||
|
untreatable <- antibiotics[which(antibiotics$name %like% "-high|EDTA|polysorbate"), "ab", drop = TRUE]
|
||||||
|
if (only_treatable == TRUE & any(untreatable %in% names(ab_in_data))) {
|
||||||
|
if (message_not_thrown_before(paste0("ab_class.untreatable.", function_name), entire_session = TRUE)) {
|
||||||
|
warning_("Some agents in `", function_name, "()` were ignored since they cannot be used for treating patients: ",
|
||||||
|
vector_and(ab_name(names(ab_in_data)[names(ab_in_data) %in% untreatable],
|
||||||
|
language = NULL,
|
||||||
|
tolower = TRUE),
|
||||||
|
quotes = FALSE,
|
||||||
|
sort = TRUE), ". They can be included using `", function_name, "(only_treatable = FALSE)`. ",
|
||||||
|
"This warning will be shown once per session.",
|
||||||
|
call = FALSE)
|
||||||
|
}
|
||||||
|
ab_in_data <- ab_in_data[!names(ab_in_data) %in% untreatable]
|
||||||
|
}
|
||||||
|
|
||||||
if (length(ab_in_data) == 0) {
|
if (length(ab_in_data) == 0) {
|
||||||
message_("No antimicrobial agents found.")
|
message_("No antimicrobial agents found in the data.")
|
||||||
return(NULL)
|
return(NULL)
|
||||||
}
|
}
|
||||||
|
|
||||||
ab_reference <- subset(antibiotics,
|
if (is.null(ab_class_args)) {
|
||||||
group %like% ab_class |
|
# their upper case equivalent are vectors with class <ab>, created in data-raw/_internals.R
|
||||||
atc_group1 %like% ab_class |
|
# carbapenems() gets its codes from AMR:::AB_CARBAPENEMS
|
||||||
atc_group2 %like% ab_class)
|
abx <- get(paste0("AB_", toupper(function_name)), envir = asNamespace("AMR"))
|
||||||
ab_group <- find_ab_group(ab_class)
|
ab_group <- function_name
|
||||||
if (ab_group == "") {
|
examples <- paste0(" (such as ", vector_or(ab_name(sample(abx, size = min(2, length(abx)), replace = FALSE),
|
||||||
ab_group <- paste0("'", ab_class, "'")
|
tolower = TRUE,
|
||||||
examples <- ""
|
language = NULL),
|
||||||
|
quotes = FALSE), ")")
|
||||||
} else {
|
} else {
|
||||||
examples <- paste0(" (such as ", find_ab_names(ab_class, 2), ")")
|
# this for the 'manual' ab_class() function
|
||||||
}
|
abx <- subset(AB_lookup,
|
||||||
# get the columns with a group names in the chosen ab class
|
group %like% ab_class_args |
|
||||||
agents <- ab_in_data[names(ab_in_data) %in% ab_reference$ab]
|
atc_group1 %like% ab_class_args |
|
||||||
|
atc_group2 %like% ab_class_args)$ab
|
||||||
if (message_not_thrown_before(function_name)) {
|
ab_group <- find_ab_group(ab_class_args)
|
||||||
if (length(agents) == 0) {
|
function_name <- "ab_class"
|
||||||
message_("No antimicrobial agents of class ", ab_group, " found", examples, ".")
|
examples <- paste0(" (such as ", find_ab_names(ab_class_args, 2), ")")
|
||||||
} else {
|
|
||||||
agents_formatted <- paste0("'", font_bold(agents, collapse = NULL), "'")
|
|
||||||
agents_names <- ab_name(names(agents), tolower = TRUE, language = NULL)
|
|
||||||
need_name <- tolower(gsub("[^a-zA-Z]", "", agents)) != tolower(gsub("[^a-zA-Z]", "", agents_names))
|
|
||||||
agents_formatted[need_name] <- paste0(agents_formatted[need_name],
|
|
||||||
" (", agents_names[need_name], ")")
|
|
||||||
message_("For `", function_name, "(", ifelse(function_name == "ab_class", paste0("\"", ab_class, "\""), ""), ")` using ",
|
|
||||||
ifelse(length(agents) == 1, "column: ", "columns: "),
|
|
||||||
vector_and(agents_formatted, quotes = FALSE))
|
|
||||||
}
|
|
||||||
remember_thrown_message(function_name)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!is.null(attributes(vars_df)$type) &&
|
# get the columns with a group names in the chosen ab class
|
||||||
attributes(vars_df)$type %in% c("dplyr_cur_data_all", "base_R") &&
|
agents <- ab_in_data[names(ab_in_data) %in% abx]
|
||||||
!any(as.character(sys.calls()) %like% paste0("(across|if_any|if_all)\\((c\\()?[a-z(), ]*", function_name))) {
|
|
||||||
structure(unname(agents),
|
message_agent_names(function_name = function_name,
|
||||||
class = c("ab_selector", "character"))
|
agents = agents,
|
||||||
} else {
|
ab_group = ab_group,
|
||||||
# don't return with "ab_selector" class if method is a dplyr selector,
|
examples = examples,
|
||||||
# dplyr::select() will complain:
|
ab_class_args = ab_class_args)
|
||||||
# > Subscript has the wrong type `ab_selector`.
|
|
||||||
# > It must be numeric or character.
|
structure(unname(agents),
|
||||||
unname(agents)
|
class = c("ab_selector", "character"))
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @method c ab_selector
|
#' @method c ab_selector
|
||||||
@@ -316,7 +555,6 @@ all_any_ab_selector <- function(type, ..., na.rm = TRUE) {
|
|||||||
#' @export
|
#' @export
|
||||||
#' @noRd
|
#' @noRd
|
||||||
all.ab_selector <- function(..., na.rm = FALSE) {
|
all.ab_selector <- function(..., na.rm = FALSE) {
|
||||||
# this is all() for
|
|
||||||
all_any_ab_selector("all", ..., na.rm = na.rm)
|
all_any_ab_selector("all", ..., na.rm = na.rm)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -362,7 +600,6 @@ any.ab_selector_any_all <- function(..., na.rm = FALSE) {
|
|||||||
`==.ab_selector` <- function(e1, e2) {
|
`==.ab_selector` <- function(e1, e2) {
|
||||||
calls <- as.character(match.call())
|
calls <- as.character(match.call())
|
||||||
fn_name <- calls[2]
|
fn_name <- calls[2]
|
||||||
# keep only the ... in c(...)
|
|
||||||
fn_name <- gsub("^(c\\()(.*)(\\))$", "\\2", fn_name)
|
fn_name <- gsub("^(c\\()(.*)(\\))$", "\\2", fn_name)
|
||||||
if (is_any(fn_name)) {
|
if (is_any(fn_name)) {
|
||||||
type <- "any"
|
type <- "any"
|
||||||
@@ -385,7 +622,6 @@ any.ab_selector_any_all <- function(..., na.rm = FALSE) {
|
|||||||
`!=.ab_selector` <- function(e1, e2) {
|
`!=.ab_selector` <- function(e1, e2) {
|
||||||
calls <- as.character(match.call())
|
calls <- as.character(match.call())
|
||||||
fn_name <- calls[2]
|
fn_name <- calls[2]
|
||||||
# keep only the ... in c(...)
|
|
||||||
fn_name <- gsub("^(c\\()(.*)(\\))$", "\\2", fn_name)
|
fn_name <- gsub("^(c\\()(.*)(\\))$", "\\2", fn_name)
|
||||||
if (is_any(fn_name)) {
|
if (is_any(fn_name)) {
|
||||||
type <- "any"
|
type <- "any"
|
||||||
@@ -405,6 +641,25 @@ any.ab_selector_any_all <- function(..., na.rm = FALSE) {
|
|||||||
class = c("ab_selector_any_all", "logical"))
|
class = c("ab_selector_any_all", "logical"))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#' @method & ab_selector
|
||||||
|
#' @export
|
||||||
|
#' @noRd
|
||||||
|
`&.ab_selector` <- function(e1, e2) {
|
||||||
|
# this is only required for base R, since tidyselect has already implemented this
|
||||||
|
# e.g., for: example_isolates[, penicillins() & administrable_per_os()]
|
||||||
|
structure(intersect(unclass(e1), unclass(e2)),
|
||||||
|
class = c("ab_selector", "character"))
|
||||||
|
}
|
||||||
|
#' @method | ab_selector
|
||||||
|
#' @export
|
||||||
|
#' @noRd
|
||||||
|
`|.ab_selector` <- function(e1, e2) {
|
||||||
|
# this is only required for base R, since tidyselect has already implemented this
|
||||||
|
# e.g., for: example_isolates[, penicillins() | administrable_per_os()]
|
||||||
|
structure(union(unclass(e1), unclass(e2)),
|
||||||
|
class = c("ab_selector", "character"))
|
||||||
|
}
|
||||||
|
|
||||||
is_any <- function(el1) {
|
is_any <- function(el1) {
|
||||||
syscall <- paste0(trimws(deparse(sys.calls()[[1]])), collapse = " ")
|
syscall <- paste0(trimws(deparse(sys.calls()[[1]])), collapse = " ")
|
||||||
el1 <- gsub("(.*),.*", "\\1", el1)
|
el1 <- gsub("(.*),.*", "\\1", el1)
|
||||||
@@ -416,30 +671,17 @@ is_all <- function(el1) {
|
|||||||
syscall %like% paste0("[^_a-zA-Z0-9]all\\(", "(c\\()?", el1)
|
syscall %like% paste0("[^_a-zA-Z0-9]all\\(", "(c\\()?", el1)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
find_ab_group <- function(ab_class_args) {
|
||||||
find_ab_group <- function(ab_class) {
|
ab_class_args <- gsub("[^a-zA-Z0-9]", ".*", ab_class_args)
|
||||||
ab_class[ab_class == "carbapenem|cephalosporin|penicillin"] <- "betalactam"
|
AB_lookup %pm>%
|
||||||
ab_class <- gsub("[^a-zA-Z0-9]", ".*", ab_class)
|
subset(group %like% ab_class_args |
|
||||||
ifelse(ab_class %in% c("aminoglycoside",
|
atc_group1 %like% ab_class_args |
|
||||||
"betalactam",
|
atc_group2 %like% ab_class_args) %pm>%
|
||||||
"carbapenem",
|
pm_pull(group) %pm>%
|
||||||
"cephalosporin",
|
unique() %pm>%
|
||||||
"fluoroquinolone",
|
tolower() %pm>%
|
||||||
"glycopeptide",
|
sort() %pm>%
|
||||||
"macrolide",
|
paste(collapse = "/")
|
||||||
"oxazolidinone",
|
|
||||||
"tetracycline"),
|
|
||||||
paste0(ab_class, "s"),
|
|
||||||
antibiotics %pm>%
|
|
||||||
subset(group %like% ab_class |
|
|
||||||
atc_group1 %like% ab_class |
|
|
||||||
atc_group2 %like% ab_class) %pm>%
|
|
||||||
pm_pull(group) %pm>%
|
|
||||||
unique() %pm>%
|
|
||||||
tolower() %pm>%
|
|
||||||
sort() %pm>%
|
|
||||||
paste(collapse = "/")
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
find_ab_names <- function(ab_group, n = 3) {
|
find_ab_names <- function(ab_group, n = 3) {
|
||||||
@@ -457,8 +699,41 @@ find_ab_names <- function(ab_group, n = 3) {
|
|||||||
antibiotics$atc_group2 %like% ab_group) &
|
antibiotics$atc_group2 %like% ab_group) &
|
||||||
antibiotics$ab %unlike% "[0-9]$"), ]$name
|
antibiotics$ab %unlike% "[0-9]$"), ]$name
|
||||||
}
|
}
|
||||||
|
if (length(drugs) == 0) {
|
||||||
|
return("??")
|
||||||
|
}
|
||||||
vector_or(ab_name(sample(drugs, size = min(n, length(drugs)), replace = FALSE),
|
vector_or(ab_name(sample(drugs, size = min(n, length(drugs)), replace = FALSE),
|
||||||
tolower = TRUE,
|
tolower = TRUE,
|
||||||
language = NULL),
|
language = NULL),
|
||||||
quotes = FALSE)
|
quotes = FALSE)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
message_agent_names <- function(function_name, agents, ab_group = NULL, examples = "", ab_class_args = NULL, call = NULL) {
|
||||||
|
if (message_not_thrown_before(paste0(function_name, ".", paste(sort(agents), collapse = "|")))) {
|
||||||
|
if (length(agents) == 0) {
|
||||||
|
if (is.null(ab_group)) {
|
||||||
|
message_("For `", function_name, "()` no antimicrobial agents found", examples, ".")
|
||||||
|
} else if (ab_group == "administrable_per_os") {
|
||||||
|
message_("No orally administrable agents found", examples, ".")
|
||||||
|
} else if (ab_group == "administrable_iv") {
|
||||||
|
message_("No IV administrable agents found", examples, ".")
|
||||||
|
} else {
|
||||||
|
message_("No antimicrobial agents of class '", ab_group, "' found", examples, ".")
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
agents_formatted <- paste0("'", font_bold(agents, collapse = NULL), "'")
|
||||||
|
agents_names <- ab_name(names(agents), tolower = TRUE, language = NULL)
|
||||||
|
need_name <- generalise_antibiotic_name(agents) != generalise_antibiotic_name(agents_names)
|
||||||
|
agents_formatted[need_name] <- paste0(agents_formatted[need_name], " (", agents_names[need_name], ")")
|
||||||
|
message_("For `", function_name, "(",
|
||||||
|
ifelse(function_name == "ab_class",
|
||||||
|
paste0("\"", ab_class_args, "\""),
|
||||||
|
ifelse(!is.null(call),
|
||||||
|
paste0(deparse(call), collapse = " "),
|
||||||
|
"")),
|
||||||
|
")` using ",
|
||||||
|
ifelse(length(agents) == 1, "column ", "columns "),
|
||||||
|
vector_and(agents_formatted, quotes = FALSE, sort = FALSE))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -29,22 +29,27 @@
|
|||||||
#' @inheritSection lifecycle Stable Lifecycle
|
#' @inheritSection lifecycle Stable Lifecycle
|
||||||
#' @param x any (vector of) text that can be coerced to a valid antibiotic code with [as.ab()]
|
#' @param x any (vector of) text that can be coerced to a valid antibiotic code with [as.ab()]
|
||||||
#' @param tolower a [logical] to indicate whether the first [character] of every output should be transformed to a lower case [character]. This will lead to e.g. "polymyxin B" and not "polymyxin b".
|
#' @param tolower a [logical] to indicate whether the first [character] of every output should be transformed to a lower case [character]. This will lead to e.g. "polymyxin B" and not "polymyxin b".
|
||||||
#' @param property one of the column names of one of the [antibiotics] data set
|
#' @param property one of the column names of one of the [antibiotics] data set: `vector_or(colnames(antibiotics), sort = FALSE)`.
|
||||||
#' @param language language of the returned text, defaults to system language (see [get_locale()]) and can also be set with `getOption("AMR_locale")`. Use `language = NULL` or `language = ""` to prevent translation.
|
#' @param language language of the returned text, defaults to system language (see [get_locale()]) and can also be set with `getOption("AMR_locale")`. Use `language = NULL` or `language = ""` to prevent translation.
|
||||||
#' @param administration way of administration, either `"oral"` or `"iv"`
|
#' @param administration way of administration, either `"oral"` or `"iv"`
|
||||||
#' @param units a [logical] to indicate whether the units instead of the DDDs itself must be returned, see *Examples*
|
|
||||||
#' @param open browse the URL using [utils::browseURL()]
|
#' @param open browse the URL using [utils::browseURL()]
|
||||||
#' @param ... other arguments passed on to [as.ab()]
|
#' @param ... other arguments passed on to [as.ab()]
|
||||||
|
#' @param data a [data.frame] of which the columns need to be renamed
|
||||||
|
#' @param snake_case a [logical] to indicate whether the names should be in so-called [snake case](https://en.wikipedia.org/wiki/Snake_case): in lower case and all spaces/slashes replaced with an underscore (`_`)
|
||||||
|
#' @param only_first a [logical] to indicate whether only the first ATC code must be returned, with giving preference to J0-codes (i.e., the antimicrobial drug group)
|
||||||
#' @details All output [will be translated][translate] where possible.
|
#' @details All output [will be translated][translate] where possible.
|
||||||
#'
|
#'
|
||||||
#' The function [ab_url()] will return the direct URL to the official WHO website. A warning will be returned if the required ATC code is not available.
|
#' The function [ab_url()] will return the direct URL to the official WHO website. A warning will be returned if the required ATC code is not available.
|
||||||
|
#'
|
||||||
|
#' The function [set_ab_names()] is a special column renaming function for [data.frame]s. It renames columns names that resemble antimicrobial drugs. It always makes sure that the new column names are unique. If `property = "atc"` is set, preference is given to ATC codes from the J-group.
|
||||||
#' @inheritSection as.ab Source
|
#' @inheritSection as.ab Source
|
||||||
#' @rdname ab_property
|
#' @rdname ab_property
|
||||||
#' @name ab_property
|
#' @name ab_property
|
||||||
#' @return
|
#' @return
|
||||||
#' - An [integer] in case of [ab_cid()]
|
#' - An [integer] in case of [ab_cid()]
|
||||||
#' - A named [list] in case of [ab_info()] and multiple [ab_synonyms()]/[ab_tradenames()]
|
#' - A named [list] in case of [ab_info()] and multiple [ab_atc()]/[ab_synonyms()]/[ab_tradenames()]
|
||||||
#' - A [double] in case of [ab_ddd()]
|
#' - A [double] in case of [ab_ddd()]
|
||||||
|
#' - A [data.frame] in case of [set_ab_names()]
|
||||||
#' - A [character] in all other cases
|
#' - A [character] in all other cases
|
||||||
#' @export
|
#' @export
|
||||||
#' @seealso [antibiotics]
|
#' @seealso [antibiotics]
|
||||||
@@ -53,7 +58,7 @@
|
|||||||
#' @examples
|
#' @examples
|
||||||
#' # all properties:
|
#' # all properties:
|
||||||
#' ab_name("AMX") # "Amoxicillin"
|
#' ab_name("AMX") # "Amoxicillin"
|
||||||
#' ab_atc("AMX") # J01CA04 (ATC code from the WHO)
|
#' ab_atc("AMX") # "J01CA04" (ATC code from the WHO)
|
||||||
#' ab_cid("AMX") # 33613 (Compound ID from PubChem)
|
#' ab_cid("AMX") # 33613 (Compound ID from PubChem)
|
||||||
#' ab_synonyms("AMX") # a list with brand names of amoxicillin
|
#' ab_synonyms("AMX") # a list with brand names of amoxicillin
|
||||||
#' ab_tradenames("AMX") # same
|
#' ab_tradenames("AMX") # same
|
||||||
@@ -68,10 +73,10 @@
|
|||||||
#' tolower = TRUE) # "amoxicillin/clavulanic acid" "polymyxin B"
|
#' tolower = TRUE) # "amoxicillin/clavulanic acid" "polymyxin B"
|
||||||
#'
|
#'
|
||||||
#' # defined daily doses (DDD)
|
#' # defined daily doses (DDD)
|
||||||
#' ab_ddd("AMX", "oral") # 1
|
#' ab_ddd("AMX", "oral") # 1.5
|
||||||
#' ab_ddd("AMX", "oral", units = TRUE) # "g"
|
#' ab_ddd_units("AMX", "oral") # "g"
|
||||||
#' ab_ddd("AMX", "iv") # 1
|
#' ab_ddd("AMX", "iv") # 3
|
||||||
#' ab_ddd("AMX", "iv", units = TRUE) # "g"
|
#' ab_ddd_units("AMX", "iv") # "g"
|
||||||
#'
|
#'
|
||||||
#' ab_info("AMX") # all properties as a list
|
#' ab_info("AMX") # all properties as a list
|
||||||
#'
|
#'
|
||||||
@@ -88,6 +93,19 @@
|
|||||||
#' ab_atc("cephtriaxone")
|
#' ab_atc("cephtriaxone")
|
||||||
#' ab_atc("cephthriaxone")
|
#' ab_atc("cephthriaxone")
|
||||||
#' ab_atc("seephthriaaksone")
|
#' ab_atc("seephthriaaksone")
|
||||||
|
#'
|
||||||
|
#' # use set_ab_names() for renaming columns
|
||||||
|
#' colnames(example_isolates)
|
||||||
|
#' colnames(set_ab_names(example_isolates))
|
||||||
|
#' \donttest{
|
||||||
|
#' if (require("dplyr")) {
|
||||||
|
#' example_isolates %>%
|
||||||
|
#' set_ab_names()
|
||||||
|
#' # set_ab_names() works with any AB property:
|
||||||
|
#' example_isolates %>%
|
||||||
|
#' set_ab_names("atc")
|
||||||
|
#' }
|
||||||
|
#' }
|
||||||
ab_name <- function(x, language = get_locale(), tolower = FALSE, ...) {
|
ab_name <- function(x, language = get_locale(), tolower = FALSE, ...) {
|
||||||
meet_criteria(x, allow_NA = TRUE)
|
meet_criteria(x, allow_NA = TRUE)
|
||||||
meet_criteria(language, has_length = 1, is_in = c(LANGUAGES_SUPPORTED, ""), allow_NULL = TRUE, allow_NA = TRUE)
|
meet_criteria(language, has_length = 1, is_in = c(LANGUAGES_SUPPORTED, ""), allow_NULL = TRUE, allow_NA = TRUE)
|
||||||
@@ -105,9 +123,63 @@ ab_name <- function(x, language = get_locale(), tolower = FALSE, ...) {
|
|||||||
#' @rdname ab_property
|
#' @rdname ab_property
|
||||||
#' @aliases ATC
|
#' @aliases ATC
|
||||||
#' @export
|
#' @export
|
||||||
ab_atc <- function(x, ...) {
|
set_ab_names <- function(data, property = "name", language = get_locale(), snake_case = property == "name") {
|
||||||
meet_criteria(x, allow_NA = TRUE)
|
meet_criteria(data, allow_class = "data.frame")
|
||||||
ab_validate(x = x, property = "atc", ...)
|
meet_criteria(property, is_in = colnames(antibiotics), has_length = 1, ignore.case = TRUE)
|
||||||
|
meet_criteria(language, has_length = 1, is_in = c(LANGUAGES_SUPPORTED, ""), allow_NULL = TRUE, allow_NA = TRUE)
|
||||||
|
meet_criteria(snake_case, allow_class = "logical", has_length = 1)
|
||||||
|
|
||||||
|
x_deparsed <- deparse(substitute(data))
|
||||||
|
if (length(x_deparsed) > 1 || any(x_deparsed %unlike% "[a-z]+")) {
|
||||||
|
x_deparsed <- "your_data"
|
||||||
|
}
|
||||||
|
|
||||||
|
property <- tolower(property)
|
||||||
|
|
||||||
|
columns <- get_column_abx(data, info = FALSE, only_rsi_columns = FALSE, sort = FALSE)
|
||||||
|
if (length(columns) == 0) {
|
||||||
|
message_("No columns with antibiotic results found for `set_ab_names()`, leaving names unchanged.")
|
||||||
|
return(data)
|
||||||
|
}
|
||||||
|
x <- vapply(FUN.VALUE = character(1),
|
||||||
|
ab_property(columns, property = property, language = language),
|
||||||
|
function(x) {
|
||||||
|
if (property == "atc") {
|
||||||
|
# try to get the J-group
|
||||||
|
if (any(x %like% "^J")) {
|
||||||
|
x[x %like% "^J"][1L]
|
||||||
|
} else {
|
||||||
|
as.character(x[1L])
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
as.character(x[1L])
|
||||||
|
}
|
||||||
|
})
|
||||||
|
if (any(x %in% c("", NA))) {
|
||||||
|
warning_("No ", property, " found for column(s): ", vector_and(columns[x %in% c("", NA)], sort = FALSE), call = FALSE)
|
||||||
|
x[x %in% c("", NA)] <- columns[x %in% c("", NA)]
|
||||||
|
}
|
||||||
|
|
||||||
|
if (snake_case == TRUE) {
|
||||||
|
x <- tolower(gsub("[^a-zA-Z0-9]+", "_", x))
|
||||||
|
}
|
||||||
|
|
||||||
|
if (any(duplicated(x))) {
|
||||||
|
# very hacky way of adding the index to each duplicate
|
||||||
|
# so "Amoxicillin", "Amoxicillin", "Amoxicillin"
|
||||||
|
# will be "Amoxicillin", "Amoxicillin_2", "Amoxicillin_3"
|
||||||
|
invisible(lapply(unique(x),
|
||||||
|
function(u) {
|
||||||
|
dups <- which(x == u)
|
||||||
|
if (length(dups) > 1) {
|
||||||
|
# there are duplicates
|
||||||
|
dup_add_int <- dups[2:length(dups)]
|
||||||
|
x[dup_add_int] <<- paste0(x[dup_add_int], "_", c(2:length(dups)))
|
||||||
|
}
|
||||||
|
}))
|
||||||
|
}
|
||||||
|
colnames(data)[colnames(data) %in% columns] <- x
|
||||||
|
data
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname ab_property
|
#' @rdname ab_property
|
||||||
@@ -145,6 +217,36 @@ ab_group <- function(x, language = get_locale(), ...) {
|
|||||||
translate_AMR(ab_validate(x = x, property = "group", ...), language = language, only_affect_ab_names = TRUE)
|
translate_AMR(ab_validate(x = x, property = "group", ...), language = language, only_affect_ab_names = TRUE)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#' @rdname ab_property
|
||||||
|
#' @aliases ATC
|
||||||
|
#' @export
|
||||||
|
ab_atc <- function(x, only_first = FALSE, ...) {
|
||||||
|
meet_criteria(x, allow_NA = TRUE)
|
||||||
|
meet_criteria(only_first, allow_class = "logical", has_length = 1)
|
||||||
|
|
||||||
|
atcs <- ab_validate(x = x, property = "atc", ...)
|
||||||
|
|
||||||
|
if (only_first == TRUE) {
|
||||||
|
atcs <- vapply(FUN.VALUE = character(1),
|
||||||
|
# get only the first ATC code
|
||||||
|
atcs,
|
||||||
|
function(x) {
|
||||||
|
# try to get the J-group
|
||||||
|
if (any(x %like% "^J")) {
|
||||||
|
x[x %like% "^J"][1L]
|
||||||
|
} else {
|
||||||
|
as.character(x[1L])
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else if (length(atcs) == 1) {
|
||||||
|
atcs <- unname(unlist(atcs))
|
||||||
|
} else {
|
||||||
|
names(atcs) <- x
|
||||||
|
}
|
||||||
|
|
||||||
|
atcs
|
||||||
|
}
|
||||||
|
|
||||||
#' @rdname ab_property
|
#' @rdname ab_property
|
||||||
#' @export
|
#' @export
|
||||||
ab_atc_group1 <- function(x, language = get_locale(), ...) {
|
ab_atc_group1 <- function(x, language = get_locale(), ...) {
|
||||||
@@ -176,18 +278,48 @@ ab_loinc <- function(x, ...) {
|
|||||||
|
|
||||||
#' @rdname ab_property
|
#' @rdname ab_property
|
||||||
#' @export
|
#' @export
|
||||||
ab_ddd <- function(x, administration = "oral", units = FALSE, ...) {
|
ab_ddd <- function(x, administration = "oral", ...) {
|
||||||
meet_criteria(x, allow_NA = TRUE)
|
meet_criteria(x, allow_NA = TRUE)
|
||||||
meet_criteria(administration, is_in = c("oral", "iv"), has_length = 1)
|
meet_criteria(administration, is_in = c("oral", "iv"), has_length = 1)
|
||||||
meet_criteria(units, allow_class = "logical", has_length = 1)
|
|
||||||
|
x <- as.ab(x, ...)
|
||||||
ddd_prop <- administration
|
ddd_prop <- administration
|
||||||
if (units == TRUE) {
|
# old behaviour
|
||||||
|
units <- list(...)$units
|
||||||
|
if (!is.null(units) && isTRUE(units)) {
|
||||||
|
if (message_not_thrown_before("ab_ddd", entire_session = TRUE)) {
|
||||||
|
warning_("Using `ab_ddd(..., units = TRUE)` is deprecated, use `ab_ddd_units()` to retrieve units instead. ",
|
||||||
|
"This warning will be shown once per session.", call = FALSE)
|
||||||
|
}
|
||||||
ddd_prop <- paste0(ddd_prop, "_units")
|
ddd_prop <- paste0(ddd_prop, "_units")
|
||||||
} else {
|
} else {
|
||||||
ddd_prop <- paste0(ddd_prop, "_ddd")
|
ddd_prop <- paste0(ddd_prop, "_ddd")
|
||||||
}
|
}
|
||||||
ab_validate(x = x, property = ddd_prop, ...)
|
out <- ab_validate(x = x, property = ddd_prop)
|
||||||
|
|
||||||
|
if (any(ab_name(x, language = NULL) %like% "/" & is.na(out))) {
|
||||||
|
warning_("DDDs of some combined products are available for different dose combinations and not (yet) part of the AMR package. ",
|
||||||
|
"Please refer to the WHOCC website:\n",
|
||||||
|
"www.whocc.no/ddd/list_of_ddds_combined_products/", call = FALSE)
|
||||||
|
}
|
||||||
|
out
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @rdname ab_property
|
||||||
|
#' @export
|
||||||
|
ab_ddd_units <- function(x, administration = "oral", ...) {
|
||||||
|
meet_criteria(x, allow_NA = TRUE)
|
||||||
|
meet_criteria(administration, is_in = c("oral", "iv"), has_length = 1)
|
||||||
|
|
||||||
|
x <- as.ab(x, ...)
|
||||||
|
if (any(ab_name(x, language = NULL) %like% "/")) {
|
||||||
|
warning_("DDDs of combined products are available for different dose combinations and not (yet) part of the AMR package. ",
|
||||||
|
"Please refer to the WHOCC website:\n",
|
||||||
|
"www.whocc.no/ddd/list_of_ddds_combined_products/", call = FALSE)
|
||||||
|
}
|
||||||
|
|
||||||
|
ddd_prop <- paste0(administration, "_units")
|
||||||
|
ab_validate(x = x, property = ddd_prop)
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname ab_property
|
#' @rdname ab_property
|
||||||
@@ -198,17 +330,18 @@ ab_info <- function(x, language = get_locale(), ...) {
|
|||||||
|
|
||||||
x <- as.ab(x, ...)
|
x <- as.ab(x, ...)
|
||||||
list(ab = as.character(x),
|
list(ab = as.character(x),
|
||||||
atc = ab_atc(x),
|
cid = ab_cid(x),
|
||||||
cid = ab_cid(x),
|
name = ab_name(x, language = language),
|
||||||
name = ab_name(x, language = language),
|
group = ab_group(x, language = language),
|
||||||
group = ab_group(x, language = language),
|
atc = ab_atc(x),
|
||||||
atc_group1 = ab_atc_group1(x, language = language),
|
atc_group1 = ab_atc_group1(x, language = language),
|
||||||
atc_group2 = ab_atc_group2(x, language = language),
|
atc_group2 = ab_atc_group2(x, language = language),
|
||||||
tradenames = ab_tradenames(x),
|
tradenames = ab_tradenames(x),
|
||||||
ddd = list(oral = list(amount = ab_ddd(x, administration = "oral", units = FALSE),
|
loinc = ab_loinc(x),
|
||||||
units = ab_ddd(x, administration = "oral", units = TRUE)),
|
ddd = list(oral = list(amount = ab_ddd(x, administration = "oral"),
|
||||||
iv = list(amount = ab_ddd(x, administration = "iv", units = FALSE),
|
units = ab_ddd_units(x, administration = "oral")),
|
||||||
units = ab_ddd(x, administration = "iv", units = TRUE))))
|
iv = list(amount = ab_ddd(x, administration = "iv"),
|
||||||
|
units = ab_ddd_units(x, administration = "iv"))))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -218,12 +351,13 @@ ab_url <- function(x, open = FALSE, ...) {
|
|||||||
meet_criteria(x, allow_NA = TRUE)
|
meet_criteria(x, allow_NA = TRUE)
|
||||||
meet_criteria(open, allow_class = "logical", has_length = 1)
|
meet_criteria(open, allow_class = "logical", has_length = 1)
|
||||||
|
|
||||||
ab <- as.ab(x = x, ... = ...)
|
ab <- as.ab(x = x, ...)
|
||||||
u <- paste0("https://www.whocc.no/atc_ddd_index/?code=", ab_atc(ab), "&showdescription=no")
|
atcs <- ab_atc(ab, only_first = TRUE)
|
||||||
u[is.na(ab_atc(ab))] <- NA_character_
|
u <- paste0("https://www.whocc.no/atc_ddd_index/?code=", atcs, "&showdescription=no")
|
||||||
|
u[is.na(atcs)] <- NA_character_
|
||||||
names(u) <- ab_name(ab)
|
names(u) <- ab_name(ab)
|
||||||
|
|
||||||
NAs <- ab_name(ab, tolower = TRUE, language = NULL)[!is.na(ab) & is.na(ab_atc(ab))]
|
NAs <- ab_name(ab, tolower = TRUE, language = NULL)[!is.na(ab) & is.na(atcs)]
|
||||||
if (length(NAs) > 0) {
|
if (length(NAs) > 0) {
|
||||||
warning_("No ATC code available for ", vector_and(NAs, quotes = FALSE), ".")
|
warning_("No ATC code available for ", vector_and(NAs, quotes = FALSE), ".")
|
||||||
}
|
}
|
||||||
@@ -252,16 +386,22 @@ ab_validate <- function(x, property, ...) {
|
|||||||
|
|
||||||
check_dataset_integrity()
|
check_dataset_integrity()
|
||||||
|
|
||||||
# try to catch an error when inputting an invalid argument
|
if (tryCatch(all(x[!is.na(x)] %in% AB_lookup$ab), error = function(e) FALSE)) {
|
||||||
# so the 'call.' can be set to FALSE
|
# special case for ab_* functions where class is already <ab>
|
||||||
tryCatch(x[1L] %in% antibiotics[1, property],
|
x <- AB_lookup[match(x, AB_lookup$ab), property, drop = TRUE]
|
||||||
error = function(e) stop(e$message, call. = FALSE))
|
|
||||||
x_bak <- x
|
} else {
|
||||||
if (!all(x %in% antibiotics[, property])) {
|
# try to catch an error when inputting an invalid argument
|
||||||
x <- data.frame(ab = as.ab(x, ...), stringsAsFactors = FALSE) %pm>%
|
# so the 'call.' can be set to FALSE
|
||||||
pm_left_join(antibiotics, by = "ab") %pm>%
|
tryCatch(x[1L] %in% antibiotics[1, property],
|
||||||
pm_pull(property)
|
error = function(e) stop(e$message, call. = FALSE))
|
||||||
|
|
||||||
|
if (!all(x %in% AB_lookup[, property])) {
|
||||||
|
x <- as.ab(x, ...)
|
||||||
|
x <- AB_lookup[match(x, AB_lookup$ab), property, drop = TRUE]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (property == "ab") {
|
if (property == "ab") {
|
||||||
return(set_clean_class(x, new_class = c("ab", "character")))
|
return(set_clean_class(x, new_class = c("ab", "character")))
|
||||||
} else if (property == "cid") {
|
} else if (property == "cid") {
|
||||||
@@ -269,7 +409,7 @@ ab_validate <- function(x, property, ...) {
|
|||||||
} else if (property %like% "ddd") {
|
} else if (property %like% "ddd") {
|
||||||
return(as.double(x))
|
return(as.double(x))
|
||||||
} else {
|
} else {
|
||||||
x[is.na(x) & !is.na(x_bak)] <- NA
|
x[is.na(x)] <- NA
|
||||||
return(x)
|
return(x)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -54,14 +54,14 @@
|
|||||||
#' @section Reference Data Publicly Available:
|
#' @section Reference Data Publicly Available:
|
||||||
#' All reference data sets (about microorganisms, antibiotics, R/SI interpretation, EUCAST rules, etc.) in this `AMR` package are publicly and freely available. We continually export our data sets to formats for use in R, SPSS, SAS, Stata and Excel. We also supply flat files that are machine-readable and suitable for input in any software program, such as laboratory information systems. Please find [all download links on our website](https://msberends.github.io/AMR/articles/datasets.html), which is automatically updated with every code change.
|
#' All reference data sets (about microorganisms, antibiotics, R/SI interpretation, EUCAST rules, etc.) in this `AMR` package are publicly and freely available. We continually export our data sets to formats for use in R, SPSS, SAS, Stata and Excel. We also supply flat files that are machine-readable and suitable for input in any software program, such as laboratory information systems. Please find [all download links on our website](https://msberends.github.io/AMR/articles/datasets.html), which is automatically updated with every code change.
|
||||||
#' @section Read more on Our Website!:
|
#' @section Read more on Our Website!:
|
||||||
#' On our website <https://msberends.github.io/AMR/> you can find [a comprehensive tutorial](https://msberends.github.io/AMR/articles/AMR.html) about how to conduct AMR data analysis, the [complete documentation of all functions](https://msberends.github.io/AMR/reference/) and [an example analysis using WHONET data](https://msberends.github.io/AMR/articles/WHONET.html). As we would like to better understand the backgrounds and needs of our users, please [participate in our survey](https://msberends.github.io/AMR/survey.html)!
|
#' On our website <https://msberends.github.io/AMR/> you can find [a comprehensive tutorial](https://msberends.github.io/AMR/articles/AMR.html) about how to conduct AMR data analysis, the [complete documentation of all functions](https://msberends.github.io/AMR/reference/) and [an example analysis using WHONET data](https://msberends.github.io/AMR/articles/WHONET.html).
|
||||||
#' @section Contact Us:
|
#' @section Contact Us:
|
||||||
#' For suggestions, comments or questions, please contact us at:
|
#' For suggestions, comments or questions, please contact us at:
|
||||||
#'
|
#'
|
||||||
#' Matthijs S. Berends \cr
|
#' Matthijs S. Berends \cr
|
||||||
#' m.s.berends \[at\] umcg \[dot\] nl \cr
|
#' m.s.berends \[at\] umcg \[dot\] nl \cr
|
||||||
#' University of Groningen
|
#' University of Groningen
|
||||||
#' Department of Medical Microbiology
|
#' Department of Medical Microbiology and Infection Prevention \cr
|
||||||
#' University Medical Center Groningen \cr
|
#' University Medical Center Groningen \cr
|
||||||
#' Post Office Box 30001 \cr
|
#' Post Office Box 30001 \cr
|
||||||
#' 9700 RB Groningen \cr
|
#' 9700 RB Groningen \cr
|
||||||
|
|||||||
@@ -25,9 +25,9 @@
|
|||||||
|
|
||||||
#' Get ATC Properties from WHOCC Website
|
#' Get ATC Properties from WHOCC Website
|
||||||
#'
|
#'
|
||||||
#' Gets data from the WHO to determine properties of an ATC (e.g. an antibiotic), such as the name, defined daily dose (DDD) or standard unit.
|
#' Gets data from the WHOCC website to determine properties of an Anatomical Therapeutic Chemical (ATC) (e.g. an antibiotic), such as the name, defined daily dose (DDD) or standard unit.
|
||||||
#' @inheritSection lifecycle Stable Lifecycle
|
#' @inheritSection lifecycle Stable Lifecycle
|
||||||
#' @param atc_code a [character] or [character] vector with ATC code(s) of antibiotic(s)
|
#' @param atc_code a [character] (vector) with ATC code(s) of antibiotics, will be coerced with [as.ab()] and [ab_atc()] internally if not a valid ATC code
|
||||||
#' @param property property of an ATC code. Valid values are `"ATC"`, `"Name"`, `"DDD"`, `"U"` (`"unit"`), `"Adm.R"`, `"Note"` and `groups`. For this last option, all hierarchical groups of an ATC code will be returned, see *Examples*.
|
#' @param property property of an ATC code. Valid values are `"ATC"`, `"Name"`, `"DDD"`, `"U"` (`"unit"`), `"Adm.R"`, `"Note"` and `groups`. For this last option, all hierarchical groups of an ATC code will be returned, see *Examples*.
|
||||||
#' @param administration type of administration when using `property = "Adm.R"`, see *Details*
|
#' @param administration type of administration when using `property = "Adm.R"`, see *Details*
|
||||||
#' @param url url of website of the WHOCC. The sign `%s` can be used as a placeholder for ATC codes.
|
#' @param url url of website of the WHOCC. The sign `%s` can be used as a placeholder for ATC codes.
|
||||||
@@ -68,6 +68,7 @@
|
|||||||
#' if (requireNamespace("curl") && requireNamespace("rvest") && requireNamespace("xml2")) {
|
#' if (requireNamespace("curl") && requireNamespace("rvest") && requireNamespace("xml2")) {
|
||||||
#' # oral DDD (Defined Daily Dose) of amoxicillin
|
#' # oral DDD (Defined Daily Dose) of amoxicillin
|
||||||
#' atc_online_property("J01CA04", "DDD", "O")
|
#' atc_online_property("J01CA04", "DDD", "O")
|
||||||
|
#' atc_online_ddd(ab_atc("amox"))
|
||||||
#'
|
#'
|
||||||
#' # parenteral DDD (Defined Daily Dose) of amoxicillin
|
#' # parenteral DDD (Defined Daily Dose) of amoxicillin
|
||||||
#' atc_online_property("J01CA04", "DDD", "P")
|
#' atc_online_property("J01CA04", "DDD", "P")
|
||||||
@@ -81,7 +82,7 @@ atc_online_property <- function(atc_code,
|
|||||||
url = "https://www.whocc.no/atc_ddd_index/?code=%s&showdescription=no",
|
url = "https://www.whocc.no/atc_ddd_index/?code=%s&showdescription=no",
|
||||||
url_vet = "https://www.whocc.no/atcvet/atcvet_index/?code=%s&showdescription=no") {
|
url_vet = "https://www.whocc.no/atcvet/atcvet_index/?code=%s&showdescription=no") {
|
||||||
meet_criteria(atc_code, allow_class = "character")
|
meet_criteria(atc_code, allow_class = "character")
|
||||||
meet_criteria(property, allow_class = "character", has_length = 1, is_in = c("ATC", "Name", "DDD", "U", "Adm.R", "Note", "groups"), ignore.case = TRUE)
|
meet_criteria(property, allow_class = "character", has_length = 1, is_in = c("ATC", "Name", "DDD", "U", "unit", "Adm.R", "Note", "groups"), ignore.case = TRUE)
|
||||||
meet_criteria(administration, allow_class = "character", has_length = 1)
|
meet_criteria(administration, allow_class = "character", has_length = 1)
|
||||||
meet_criteria(url, allow_class = "character", has_length = 1, looks_like = "https?://")
|
meet_criteria(url, allow_class = "character", has_length = 1, looks_like = "https?://")
|
||||||
meet_criteria(url_vet, allow_class = "character", has_length = 1, looks_like = "https?://")
|
meet_criteria(url_vet, allow_class = "character", has_length = 1, looks_like = "https?://")
|
||||||
@@ -97,8 +98,8 @@ atc_online_property <- function(atc_code,
|
|||||||
|
|
||||||
check_dataset_integrity()
|
check_dataset_integrity()
|
||||||
|
|
||||||
if (!all(atc_code %in% antibiotics)) {
|
if (!all(atc_code %in% unlist(antibiotics$atc))) {
|
||||||
atc_code <- as.character(ab_atc(atc_code))
|
atc_code <- as.character(ab_atc(atc_code, only_first = TRUE))
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!has_internet()) {
|
if (!has_internet()) {
|
||||||
@@ -108,12 +109,11 @@ atc_online_property <- function(atc_code,
|
|||||||
return(rep(NA, length(atc_code)))
|
return(rep(NA, length(atc_code)))
|
||||||
}
|
}
|
||||||
|
|
||||||
# also allow unit as property
|
|
||||||
if (property %like% "unit") {
|
|
||||||
property <- "U"
|
|
||||||
}
|
|
||||||
|
|
||||||
property <- tolower(property)
|
property <- tolower(property)
|
||||||
|
# also allow unit as property
|
||||||
|
if (property == "unit") {
|
||||||
|
property <- "u"
|
||||||
|
}
|
||||||
if (property == "ddd") {
|
if (property == "ddd") {
|
||||||
returnvalue <- rep(NA_real_, length(atc_code))
|
returnvalue <- rep(NA_real_, length(atc_code))
|
||||||
} else if (property == "groups") {
|
} else if (property == "groups") {
|
||||||
@@ -206,3 +206,10 @@ atc_online_ddd <- function(atc_code, ...) {
|
|||||||
meet_criteria(atc_code, allow_class = "character")
|
meet_criteria(atc_code, allow_class = "character")
|
||||||
atc_online_property(atc_code = atc_code, property = "ddd", ...)
|
atc_online_property(atc_code = atc_code, property = "ddd", ...)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#' @rdname atc_online
|
||||||
|
#' @export
|
||||||
|
atc_online_ddd_units <- function(atc_code, ...) {
|
||||||
|
meet_criteria(atc_code, allow_class = "character")
|
||||||
|
atc_online_property(atc_code = atc_code, property = "unit", ...)
|
||||||
|
}
|
||||||
|
|||||||
@@ -25,13 +25,13 @@
|
|||||||
|
|
||||||
#' Determine Bug-Drug Combinations
|
#' Determine Bug-Drug Combinations
|
||||||
#'
|
#'
|
||||||
#' Determine antimicrobial resistance (AMR) of all bug-drug combinations in your data set where at least 30 (default) isolates are available per species. Use [format()] on the result to prettify it to a publicable/printable format, see *Examples*.
|
#' Determine antimicrobial resistance (AMR) of all bug-drug combinations in your data set where at least 30 (default) isolates are available per species. Use [format()] on the result to prettify it to a publishable/printable format, see *Examples*.
|
||||||
#' @inheritSection lifecycle Stable Lifecycle
|
#' @inheritSection lifecycle Stable Lifecycle
|
||||||
#' @inheritParams eucast_rules
|
#' @inheritParams eucast_rules
|
||||||
#' @param combine_IR a [logical] to indicate whether values R and I should be summed
|
#' @param combine_IR a [logical] to indicate whether values R and I should be summed
|
||||||
#' @param add_ab_group a [logical] to indicate where the group of the antimicrobials must be included as a first column
|
#' @param add_ab_group a [logical] to indicate where the group of the antimicrobials must be included as a first column
|
||||||
#' @param remove_intrinsic_resistant [logical] to indicate that rows and columns with 100% resistance for all tested antimicrobials must be removed from the table
|
#' @param remove_intrinsic_resistant [logical] to indicate that rows and columns with 100% resistance for all tested antimicrobials must be removed from the table
|
||||||
#' @param FUN the function to call on the `mo` column to transform the microorganism IDs, defaults to [mo_shortname()]
|
#' @param FUN the function to call on the `mo` column to transform the microorganism codes, defaults to [mo_shortname()]
|
||||||
#' @param translate_ab a [character] of length 1 containing column names of the [antibiotics] data set
|
#' @param translate_ab a [character] of length 1 containing column names of the [antibiotics] data set
|
||||||
#' @param ... arguments passed on to `FUN`
|
#' @param ... arguments passed on to `FUN`
|
||||||
#' @inheritParams rsi_df
|
#' @inheritParams rsi_df
|
||||||
@@ -74,42 +74,87 @@ bug_drug_combinations <- function(x,
|
|||||||
stop_ifnot(col_mo %in% colnames(x), "column '", col_mo, "' (`col_mo`) not found")
|
stop_ifnot(col_mo %in% colnames(x), "column '", col_mo, "' (`col_mo`) not found")
|
||||||
}
|
}
|
||||||
|
|
||||||
x_class <- class(x)
|
x.bak <- x
|
||||||
x <- as.data.frame(x, stringsAsFactors = FALSE)
|
x <- as.data.frame(x, stringsAsFactors = FALSE)
|
||||||
x[, col_mo] <- FUN(x[, col_mo, drop = TRUE], ...)
|
x[, col_mo] <- FUN(x[, col_mo, drop = TRUE], ...)
|
||||||
x <- x[, c(col_mo, names(which(vapply(FUN.VALUE = logical(1), x, is.rsi)))), drop = FALSE]
|
|
||||||
|
|
||||||
unique_mo <- sort(unique(x[, col_mo, drop = TRUE]))
|
unique_mo <- sort(unique(x[, col_mo, drop = TRUE]))
|
||||||
|
|
||||||
out <- data.frame(mo = character(0),
|
# select only groups and antibiotics
|
||||||
ab = character(0),
|
if (is_null_or_grouped_tbl(x.bak)) {
|
||||||
S = integer(0),
|
data_has_groups <- TRUE
|
||||||
I = integer(0),
|
groups <- setdiff(names(attributes(x.bak)$groups), ".rows")
|
||||||
R = integer(0),
|
x <- x[, c(groups, col_mo, colnames(x)[vapply(FUN.VALUE = logical(1), x, is.rsi)]), drop = FALSE]
|
||||||
total = integer(0),
|
} else {
|
||||||
stringsAsFactors = FALSE)
|
data_has_groups <- FALSE
|
||||||
|
x <- x[, c(col_mo, names(which(vapply(FUN.VALUE = logical(1), x, is.rsi)))), drop = FALSE]
|
||||||
for (i in seq_len(length(unique_mo))) {
|
|
||||||
# filter on MO group and only select R/SI columns
|
|
||||||
x_mo_filter <- x[which(x[, col_mo, drop = TRUE] == unique_mo[i]), names(which(vapply(FUN.VALUE = logical(1), x, is.rsi))), drop = FALSE]
|
|
||||||
# turn and merge everything
|
|
||||||
pivot <- lapply(x_mo_filter, function(x) {
|
|
||||||
m <- as.matrix(table(x))
|
|
||||||
data.frame(S = m["S", ], I = m["I", ], R = m["R", ], stringsAsFactors = FALSE)
|
|
||||||
})
|
|
||||||
merged <- do.call(rbind, pivot)
|
|
||||||
out_group <- data.frame(mo = unique_mo[i],
|
|
||||||
ab = rownames(merged),
|
|
||||||
S = merged$S,
|
|
||||||
I = merged$I,
|
|
||||||
R = merged$R,
|
|
||||||
total = merged$S + merged$I + merged$R,
|
|
||||||
stringsAsFactors = FALSE)
|
|
||||||
out <- rbind(out, out_group, stringsAsFactors = FALSE)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
set_clean_class(out,
|
run_it <- function(x) {
|
||||||
new_class = c("bug_drug_combinations", x_class))
|
out <- data.frame(mo = character(0),
|
||||||
|
ab = character(0),
|
||||||
|
S = integer(0),
|
||||||
|
I = integer(0),
|
||||||
|
R = integer(0),
|
||||||
|
total = integer(0),
|
||||||
|
stringsAsFactors = FALSE)
|
||||||
|
if (data_has_groups) {
|
||||||
|
group_values <- unique(x[, which(colnames(x) %in% groups), drop = FALSE])
|
||||||
|
rownames(group_values) <- NULL
|
||||||
|
x <- x[, which(!colnames(x) %in% groups), drop = FALSE]
|
||||||
|
}
|
||||||
|
|
||||||
|
for (i in seq_len(length(unique_mo))) {
|
||||||
|
# filter on MO group and only select R/SI columns
|
||||||
|
x_mo_filter <- x[which(x[, col_mo, drop = TRUE] == unique_mo[i]), names(which(vapply(FUN.VALUE = logical(1), x, is.rsi))), drop = FALSE]
|
||||||
|
# turn and merge everything
|
||||||
|
pivot <- lapply(x_mo_filter, function(x) {
|
||||||
|
m <- as.matrix(table(x))
|
||||||
|
data.frame(S = m["S", ], I = m["I", ], R = m["R", ], stringsAsFactors = FALSE)
|
||||||
|
})
|
||||||
|
merged <- do.call(rbind, pivot)
|
||||||
|
out_group <- data.frame(mo = rep(unique_mo[i], NROW(merged)),
|
||||||
|
ab = rownames(merged),
|
||||||
|
S = merged$S,
|
||||||
|
I = merged$I,
|
||||||
|
R = merged$R,
|
||||||
|
total = merged$S + merged$I + merged$R,
|
||||||
|
stringsAsFactors = FALSE)
|
||||||
|
if (data_has_groups) {
|
||||||
|
if (nrow(group_values) < nrow(out_group)) {
|
||||||
|
# repeat group_values for the number of rows in out_group
|
||||||
|
repeated <- rep(seq_len(nrow(group_values)),
|
||||||
|
each = nrow(out_group) / nrow(group_values))
|
||||||
|
group_values <- group_values[repeated, , drop = FALSE]
|
||||||
|
}
|
||||||
|
out_group <- cbind(group_values, out_group)
|
||||||
|
}
|
||||||
|
out <- rbind(out, out_group, stringsAsFactors = FALSE)
|
||||||
|
}
|
||||||
|
out
|
||||||
|
}
|
||||||
|
# based on pm_apply_grouped_function
|
||||||
|
apply_group <- function(.data, fn, groups, drop = FALSE, ...) {
|
||||||
|
grouped <- pm_split_into_groups(.data, groups, drop)
|
||||||
|
res <- do.call(rbind, unname(lapply(grouped, fn, ...)))
|
||||||
|
if (any(groups %in% colnames(res))) {
|
||||||
|
class(res) <- c("grouped_data", class(res))
|
||||||
|
res <- pm_set_groups(res, groups[groups %in% colnames(res)])
|
||||||
|
}
|
||||||
|
res
|
||||||
|
}
|
||||||
|
|
||||||
|
if (data_has_groups) {
|
||||||
|
out <- apply_group(x, "run_it", groups)
|
||||||
|
rownames(out) <- NULL
|
||||||
|
set_clean_class(out,
|
||||||
|
new_class = c("grouped", "bug_drug_combinations", "data.frame"))
|
||||||
|
} else {
|
||||||
|
out <- run_it(x)
|
||||||
|
rownames(out) <- NULL
|
||||||
|
set_clean_class(out,
|
||||||
|
new_class = c("bug_drug_combinations", "data.frame"))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @method format bug_drug_combinations
|
#' @method format bug_drug_combinations
|
||||||
@@ -137,6 +182,21 @@ format.bug_drug_combinations <- function(x,
|
|||||||
meet_criteria(decimal.mark, allow_class = "character", has_length = 1)
|
meet_criteria(decimal.mark, allow_class = "character", has_length = 1)
|
||||||
meet_criteria(big.mark, allow_class = "character", has_length = 1)
|
meet_criteria(big.mark, allow_class = "character", has_length = 1)
|
||||||
|
|
||||||
|
if (inherits(x, "grouped")) {
|
||||||
|
# bug_drug_combinations() has been run on groups, so de-group here
|
||||||
|
warning_("formatting the output of `bug_drug_combinations()` does not support grouped variables, they are ignored", call = FALSE)
|
||||||
|
idx <- split(seq_len(nrow(x)), paste0(x$mo, "%%", x$ab))
|
||||||
|
x <- data.frame(mo = gsub("(.*)%%(.*)", "\\1", names(idx)),
|
||||||
|
ab = gsub("(.*)%%(.*)", "\\2", names(idx)),
|
||||||
|
S = sapply(idx, function(i) sum(y$S[i], na.rm = TRUE)),
|
||||||
|
I = sapply(idx, function(i) sum(y$I[i], na.rm = TRUE)),
|
||||||
|
R = sapply(idx, function(i) sum(y$R[i], na.rm = TRUE)),
|
||||||
|
total = sapply(idx, function(i) sum(y$S[i], na.rm = TRUE) +
|
||||||
|
sum(y$I[i], na.rm = TRUE) +
|
||||||
|
sum(y$R[i], na.rm = TRUE)),
|
||||||
|
stringsAsFactors = FALSE)
|
||||||
|
}
|
||||||
|
|
||||||
x <- as.data.frame(x, stringsAsFactors = FALSE)
|
x <- as.data.frame(x, stringsAsFactors = FALSE)
|
||||||
x <- subset(x, total >= minimum)
|
x <- subset(x, total >= minimum)
|
||||||
|
|
||||||
@@ -158,7 +218,7 @@ format.bug_drug_combinations <- function(x,
|
|||||||
ab_txt[i] <- gsub("group", ab_group(ab[i], language = language), ab_txt[i])
|
ab_txt[i] <- gsub("group", ab_group(ab[i], language = language), ab_txt[i])
|
||||||
ab_txt[i] <- gsub("atc_group1", ab_atc_group1(ab[i], language = language), ab_txt[i])
|
ab_txt[i] <- gsub("atc_group1", ab_atc_group1(ab[i], language = language), ab_txt[i])
|
||||||
ab_txt[i] <- gsub("atc_group2", ab_atc_group2(ab[i], language = language), ab_txt[i])
|
ab_txt[i] <- gsub("atc_group2", ab_atc_group2(ab[i], language = language), ab_txt[i])
|
||||||
ab_txt[i] <- gsub("atc", ab_atc(ab[i]), ab_txt[i])
|
ab_txt[i] <- gsub("atc", ab_atc(ab[i], only_first = TRUE), ab_txt[i])
|
||||||
ab_txt[i] <- gsub("name", ab_name(ab[i], language = language), ab_txt[i])
|
ab_txt[i] <- gsub("name", ab_name(ab[i], language = language), ab_txt[i])
|
||||||
ab_txt[i]
|
ab_txt[i]
|
||||||
}
|
}
|
||||||
@@ -249,7 +309,9 @@ format.bug_drug_combinations <- function(x,
|
|||||||
print.bug_drug_combinations <- function(x, ...) {
|
print.bug_drug_combinations <- function(x, ...) {
|
||||||
x_class <- class(x)
|
x_class <- class(x)
|
||||||
print(set_clean_class(x,
|
print(set_clean_class(x,
|
||||||
new_class = x_class[x_class != "bug_drug_combinations"]),
|
new_class = x_class[!x_class %in% c("bug_drug_combinations", "grouped")]),
|
||||||
...)
|
...)
|
||||||
message_("Use 'format()' on this result to get a publishable/printable format.", as_note = FALSE)
|
message_("Use 'format()' on this result to get a publishable/printable format.",
|
||||||
|
ifelse(inherits(x, "grouped"), " Note: The grouping variable(s) will be ignored.", ""),
|
||||||
|
as_note = FALSE)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -82,6 +82,12 @@
|
|||||||
#' n1 = count_all(CIP), # the actual total; sum of all three
|
#' n1 = count_all(CIP), # the actual total; sum of all three
|
||||||
#' n2 = n_rsi(CIP), # same - analogous to n_distinct
|
#' n2 = n_rsi(CIP), # same - analogous to n_distinct
|
||||||
#' total = n()) # NOT the number of tested isolates!
|
#' total = n()) # NOT the number of tested isolates!
|
||||||
|
#'
|
||||||
|
#' # Number of available isolates for a whole antibiotic class
|
||||||
|
#' # (i.e., in this data set columns GEN, TOB, AMK, KAN)
|
||||||
|
#' example_isolates %>%
|
||||||
|
#' group_by(hospital_id) %>%
|
||||||
|
#' summarise(across(aminoglycosides(), n_rsi))
|
||||||
#'
|
#'
|
||||||
#' # Count co-resistance between amoxicillin/clav acid and gentamicin,
|
#' # Count co-resistance between amoxicillin/clav acid and gentamicin,
|
||||||
#' # so we can see that combination therapy does a lot more than mono therapy.
|
#' # so we can see that combination therapy does a lot more than mono therapy.
|
||||||
@@ -108,81 +114,95 @@
|
|||||||
#' }
|
#' }
|
||||||
#' }
|
#' }
|
||||||
count_resistant <- function(..., only_all_tested = FALSE) {
|
count_resistant <- function(..., only_all_tested = FALSE) {
|
||||||
rsi_calc(...,
|
tryCatch(
|
||||||
ab_result = "R",
|
rsi_calc(...,
|
||||||
only_all_tested = only_all_tested,
|
ab_result = "R",
|
||||||
only_count = TRUE)
|
only_all_tested = only_all_tested,
|
||||||
|
only_count = TRUE),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname count
|
#' @rdname count
|
||||||
#' @export
|
#' @export
|
||||||
count_susceptible <- function(..., only_all_tested = FALSE) {
|
count_susceptible <- function(..., only_all_tested = FALSE) {
|
||||||
rsi_calc(...,
|
tryCatch(
|
||||||
ab_result = c("S", "I"),
|
rsi_calc(...,
|
||||||
only_all_tested = only_all_tested,
|
ab_result = c("S", "I"),
|
||||||
only_count = TRUE)
|
only_all_tested = only_all_tested,
|
||||||
|
only_count = TRUE),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname count
|
#' @rdname count
|
||||||
#' @export
|
#' @export
|
||||||
count_R <- function(..., only_all_tested = FALSE) {
|
count_R <- function(..., only_all_tested = FALSE) {
|
||||||
rsi_calc(...,
|
tryCatch(
|
||||||
ab_result = "R",
|
rsi_calc(...,
|
||||||
only_all_tested = only_all_tested,
|
ab_result = "R",
|
||||||
only_count = TRUE)
|
only_all_tested = only_all_tested,
|
||||||
|
only_count = TRUE),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname count
|
#' @rdname count
|
||||||
#' @export
|
#' @export
|
||||||
count_IR <- function(..., only_all_tested = FALSE) {
|
count_IR <- function(..., only_all_tested = FALSE) {
|
||||||
if (message_not_thrown_before("count_IR")) {
|
if (message_not_thrown_before("count_IR", entire_session = TRUE)) {
|
||||||
warning_("Using count_IR() is discouraged; use count_resistant() instead to not consider \"I\" being resistant.", call = FALSE)
|
message_("Using `count_IR()` is discouraged; use `count_resistant()` instead to not consider \"I\" being resistant. This note will be shown once for this session.", as_note = FALSE)
|
||||||
remember_thrown_message("count_IR")
|
|
||||||
}
|
}
|
||||||
rsi_calc(...,
|
tryCatch(
|
||||||
ab_result = c("I", "R"),
|
rsi_calc(...,
|
||||||
only_all_tested = only_all_tested,
|
ab_result = c("I", "R"),
|
||||||
only_count = TRUE)
|
only_all_tested = only_all_tested,
|
||||||
|
only_count = TRUE),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname count
|
#' @rdname count
|
||||||
#' @export
|
#' @export
|
||||||
count_I <- function(..., only_all_tested = FALSE) {
|
count_I <- function(..., only_all_tested = FALSE) {
|
||||||
rsi_calc(...,
|
tryCatch(
|
||||||
ab_result = "I",
|
rsi_calc(...,
|
||||||
only_all_tested = only_all_tested,
|
ab_result = "I",
|
||||||
only_count = TRUE)
|
only_all_tested = only_all_tested,
|
||||||
|
only_count = TRUE),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname count
|
#' @rdname count
|
||||||
#' @export
|
#' @export
|
||||||
count_SI <- function(..., only_all_tested = FALSE) {
|
count_SI <- function(..., only_all_tested = FALSE) {
|
||||||
rsi_calc(...,
|
tryCatch(
|
||||||
ab_result = c("S", "I"),
|
rsi_calc(...,
|
||||||
only_all_tested = only_all_tested,
|
ab_result = c("S", "I"),
|
||||||
only_count = TRUE)
|
only_all_tested = only_all_tested,
|
||||||
|
only_count = TRUE),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname count
|
#' @rdname count
|
||||||
#' @export
|
#' @export
|
||||||
count_S <- function(..., only_all_tested = FALSE) {
|
count_S <- function(..., only_all_tested = FALSE) {
|
||||||
if (message_not_thrown_before("count_S")) {
|
if (message_not_thrown_before("count_S", entire_session = TRUE)) {
|
||||||
warning_("Using count_S() is discouraged; use count_susceptible() instead to also consider \"I\" being susceptible.", call = FALSE)
|
message_("Using `count_S()` is discouraged; use `count_susceptible()` instead to also consider \"I\" being susceptible. This note will be shown once for this session.", as_note = FALSE)
|
||||||
remember_thrown_message("count_S")
|
|
||||||
}
|
}
|
||||||
rsi_calc(...,
|
tryCatch(
|
||||||
ab_result = "S",
|
rsi_calc(...,
|
||||||
only_all_tested = only_all_tested,
|
ab_result = "S",
|
||||||
only_count = TRUE)
|
only_all_tested = only_all_tested,
|
||||||
|
only_count = TRUE),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname count
|
#' @rdname count
|
||||||
#' @export
|
#' @export
|
||||||
count_all <- function(..., only_all_tested = FALSE) {
|
count_all <- function(..., only_all_tested = FALSE) {
|
||||||
rsi_calc(...,
|
tryCatch(
|
||||||
ab_result = c("S", "I", "R"),
|
rsi_calc(...,
|
||||||
only_all_tested = only_all_tested,
|
ab_result = c("S", "I", "R"),
|
||||||
only_count = TRUE)
|
only_all_tested = only_all_tested,
|
||||||
|
only_count = TRUE),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname count
|
#' @rdname count
|
||||||
@@ -196,11 +216,13 @@ count_df <- function(data,
|
|||||||
language = get_locale(),
|
language = get_locale(),
|
||||||
combine_SI = TRUE,
|
combine_SI = TRUE,
|
||||||
combine_IR = FALSE) {
|
combine_IR = FALSE) {
|
||||||
rsi_calc_df(type = "count",
|
tryCatch(
|
||||||
data = data,
|
rsi_calc_df(type = "count",
|
||||||
translate_ab = translate_ab,
|
data = data,
|
||||||
language = language,
|
translate_ab = translate_ab,
|
||||||
combine_SI = combine_SI,
|
language = language,
|
||||||
combine_IR = combine_IR,
|
combine_SI = combine_SI,
|
||||||
combine_SI_missing = missing(combine_SI))
|
combine_IR = combine_IR,
|
||||||
|
combine_SI_missing = missing(combine_SI)),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -89,9 +89,9 @@
|
|||||||
#'
|
#'
|
||||||
#' ### Usage of antibiotic group names
|
#' ### Usage of antibiotic group names
|
||||||
#'
|
#'
|
||||||
#' It is possible to define antibiotic groups instead of single antibiotics for the rule consequence, the part *after* the tilde. In above examples, the antibiotic group `aminopenicillins` is used to include ampicillin and amoxicillin. The following groups are allowed (case-insensitive). Within parentheses are the antibiotic agents that will be matched when running the rule.
|
#' It is possible to define antibiotic groups instead of single antibiotics for the rule consequence, the part *after* the tilde. In above examples, the antibiotic group `aminopenicillins` is used to include ampicillin and amoxicillin. The following groups are allowed (case-insensitive). Within parentheses are the agents that will be matched when running the rule.
|
||||||
#'
|
#'
|
||||||
#' `r paste0(" * ", sapply(DEFINED_AB_GROUPS, function(x) paste0("``", tolower(x), "``\\cr(", paste0(sort(ab_name(eval(parse(text = x), envir = asNamespace("AMR")), language = NULL, tolower = TRUE)), collapse = ", "), ")"), USE.NAMES = FALSE), "\n", collapse = "")`
|
#' `r paste0(" * ", sapply(DEFINED_AB_GROUPS, function(x) paste0("``", tolower(gsub("^AB_", "", x)), "``\\cr(", vector_and(ab_name(eval(parse(text = x), envir = asNamespace("AMR")), language = NULL, tolower = TRUE), quotes = FALSE), ")"), USE.NAMES = FALSE), "\n", collapse = "")`
|
||||||
#' @returns A [list] containing the custom rules
|
#' @returns A [list] containing the custom rules
|
||||||
#' @inheritSection AMR Read more on Our Website!
|
#' @inheritSection AMR Read more on Our Website!
|
||||||
#' @export
|
#' @export
|
||||||
@@ -140,12 +140,12 @@ custom_eucast_rules <- function(...) {
|
|||||||
stop_ifnot(deparse(result) %like% "==",
|
stop_ifnot(deparse(result) %like% "==",
|
||||||
"the result of rule ", i, " (the part after the `~`) must contain `==`, such as in `... ~ ampicillin == \"R\"`, see `?custom_eucast_rules`")
|
"the result of rule ", i, " (the part after the `~`) must contain `==`, such as in `... ~ ampicillin == \"R\"`, see `?custom_eucast_rules`")
|
||||||
result_group <- as.character(result)[[2]]
|
result_group <- as.character(result)[[2]]
|
||||||
if (paste0(toupper(result_group), "S") %in% DEFINED_AB_GROUPS) {
|
if (paste0("AB_", toupper(result_group), "S") %in% DEFINED_AB_GROUPS) {
|
||||||
# support for e.g. 'aminopenicillin' if user meant 'aminopenicillins'
|
# support for e.g. 'aminopenicillin' if user meant 'aminopenicillins'
|
||||||
result_group <- paste0(result_group, "s")
|
result_group <- paste0(result_group, "s")
|
||||||
}
|
}
|
||||||
if (toupper(result_group) %in% DEFINED_AB_GROUPS) {
|
if (paste0("AB_", toupper(result_group)) %in% DEFINED_AB_GROUPS) {
|
||||||
result_group <- eval(parse(text = toupper(result_group)), envir = asNamespace("AMR"))
|
result_group <- eval(parse(text = paste0("AB_", toupper(result_group))), envir = asNamespace("AMR"))
|
||||||
} else {
|
} else {
|
||||||
result_group <- tryCatch(
|
result_group <- tryCatch(
|
||||||
suppressWarnings(as.ab(result_group,
|
suppressWarnings(as.ab(result_group,
|
||||||
@@ -157,7 +157,7 @@ custom_eucast_rules <- function(...) {
|
|||||||
stop_if(any(is.na(result_group)),
|
stop_if(any(is.na(result_group)),
|
||||||
"this result of rule ", i, " could not be translated to a single antimicrobial agent/group: \"",
|
"this result of rule ", i, " could not be translated to a single antimicrobial agent/group: \"",
|
||||||
as.character(result)[[2]], "\".\n\nThe input can be a name or code of an antimicrobial agent, or be one of: ",
|
as.character(result)[[2]], "\".\n\nThe input can be a name or code of an antimicrobial agent, or be one of: ",
|
||||||
vector_or(tolower(DEFINED_AB_GROUPS), quotes = FALSE), ".")
|
vector_or(tolower(gsub("AB_", "", DEFINED_AB_GROUPS)), quotes = FALSE), ".")
|
||||||
result_value <- as.character(result)[[3]]
|
result_value <- as.character(result)[[3]]
|
||||||
result_value[result_value == "NA"] <- NA
|
result_value[result_value == "NA"] <- NA
|
||||||
stop_ifnot(result_value %in% c("R", "S", "I", NA),
|
stop_ifnot(result_value %in% c("R", "S", "I", NA),
|
||||||
|
|||||||
@@ -23,28 +23,28 @@
|
|||||||
# how to conduct AMR data analysis: https://msberends.github.io/AMR/ #
|
# how to conduct AMR data analysis: https://msberends.github.io/AMR/ #
|
||||||
# ==================================================================== #
|
# ==================================================================== #
|
||||||
|
|
||||||
#' Data Sets with `r format(nrow(antibiotics) + nrow(antivirals), big.mark = ",")` Antimicrobials
|
#' Data Sets with `r format(nrow(antibiotics) + nrow(antivirals), big.mark = ",")` Antimicrobial Drugs
|
||||||
#'
|
#'
|
||||||
#' Two data sets containing all antibiotics/antimycotics and antivirals. Use [as.ab()] or one of the [`ab_*`][ab_property()] functions to retrieve values from the [antibiotics] data set. Three identifiers are included in this data set: an antibiotic ID (`ab`, primarily used in this package) as defined by WHONET/EARS-Net, an ATC code (`atc`) as defined by the WHO, and a Compound ID (`cid`) as found in PubChem. Other properties in this data set are derived from one or more of these codes.
|
#' Two data sets containing all antibiotics/antimycotics and antivirals. Use [as.ab()] or one of the [`ab_*`][ab_property()] functions to retrieve values from the [antibiotics] data set. Three identifiers are included in this data set: an antibiotic ID (`ab`, primarily used in this package) as defined by WHONET/EARS-Net, an ATC code (`atc`) as defined by the WHO, and a Compound ID (`cid`) as found in PubChem. Other properties in this data set are derived from one or more of these codes. Note that some drugs have multiple ATC codes.
|
||||||
#' @format
|
#' @format
|
||||||
#' ## For the [antibiotics] data set: a [data.frame] with `r nrow(antibiotics)` observations and `r ncol(antibiotics)` variables:
|
#' ## For the [antibiotics] data set: a [data.frame] with `r nrow(antibiotics)` observations and `r ncol(antibiotics)` variables:
|
||||||
#' - `ab`\cr Antibiotic ID as used in this package (such as `AMC`), using the official EARS-Net (European Antimicrobial Resistance Surveillance Network) codes where available
|
#' - `ab`\cr Antibiotic ID as used in this package (such as `AMC`), using the official EARS-Net (European Antimicrobial Resistance Surveillance Network) codes where available
|
||||||
#' - `atc`\cr ATC code (Anatomical Therapeutic Chemical) as defined by the WHOCC, like `J01CR02`
|
|
||||||
#' - `cid`\cr Compound ID as found in PubChem
|
#' - `cid`\cr Compound ID as found in PubChem
|
||||||
#' - `name`\cr Official name as used by WHONET/EARS-Net or the WHO
|
#' - `name`\cr Official name as used by WHONET/EARS-Net or the WHO
|
||||||
#' - `group`\cr A short and concise group name, based on WHONET and WHOCC definitions
|
#' - `group`\cr A short and concise group name, based on WHONET and WHOCC definitions
|
||||||
|
#' - `atc`\cr ATC codes (Anatomical Therapeutic Chemical) as defined by the WHOCC, like `J01CR02`
|
||||||
#' - `atc_group1`\cr Official pharmacological subgroup (3rd level ATC code) as defined by the WHOCC, like `"Macrolides, lincosamides and streptogramins"`
|
#' - `atc_group1`\cr Official pharmacological subgroup (3rd level ATC code) as defined by the WHOCC, like `"Macrolides, lincosamides and streptogramins"`
|
||||||
#' - `atc_group2`\cr Official chemical subgroup (4th level ATC code) as defined by the WHOCC, like `"Macrolides"`
|
#' - `atc_group2`\cr Official chemical subgroup (4th level ATC code) as defined by the WHOCC, like `"Macrolides"`
|
||||||
#' - `abbr`\cr List of abbreviations as used in many countries, also for antibiotic susceptibility testing (AST)
|
#' - `abbr`\cr List of abbreviations as used in many countries, also for antibiotic susceptibility testing (AST)
|
||||||
#' - `synonyms`\cr Synonyms (often trade names) of a drug, as found in PubChem based on their compound ID
|
#' - `synonyms`\cr Synonyms (often trade names) of a drug, as found in PubChem based on their compound ID
|
||||||
#' - `oral_ddd`\cr Defined Daily Dose (DDD), oral treatment
|
#' - `oral_ddd`\cr Defined Daily Dose (DDD), oral treatment, currently available for `r sum(!is.na(antibiotics$oral_ddd))` drugs
|
||||||
#' - `oral_units`\cr Units of `oral_ddd`
|
#' - `oral_units`\cr Units of `oral_ddd`
|
||||||
#' - `iv_ddd`\cr Defined Daily Dose (DDD), parenteral treatment
|
#' - `iv_ddd`\cr Defined Daily Dose (DDD), parenteral (intravenous) treatment, currently available for `r sum(!is.na(antibiotics$iv_ddd))` drugs
|
||||||
#' - `iv_units`\cr Units of `iv_ddd`
|
#' - `iv_units`\cr Units of `iv_ddd`
|
||||||
#' - `loinc`\cr All LOINC codes (Logical Observation Identifiers Names and Codes) associated with the name of the antimicrobial agent. Use [ab_loinc()] to retrieve them quickly, see [ab_property()].
|
#' - `loinc`\cr All LOINC codes (Logical Observation Identifiers Names and Codes) associated with the name of the antimicrobial agent. Use [ab_loinc()] to retrieve them quickly, see [ab_property()].
|
||||||
#'
|
#'
|
||||||
#' ## For the [antivirals] data set: a [data.frame] with `r nrow(antivirals)` observations and `r ncol(antivirals)` variables:
|
#' ## For the [antivirals] data set: a [data.frame] with `r nrow(antivirals)` observations and `r ncol(antivirals)` variables:
|
||||||
#' - `atc`\cr ATC code (Anatomical Therapeutic Chemical) as defined by the WHOCC
|
#' - `atc`\cr ATC codes (Anatomical Therapeutic Chemical) as defined by the WHOCC
|
||||||
#' - `cid`\cr Compound ID as found in PubChem
|
#' - `cid`\cr Compound ID as found in PubChem
|
||||||
#' - `name`\cr Official name as used by WHONET/EARS-Net or the WHO
|
#' - `name`\cr Official name as used by WHONET/EARS-Net or the WHO
|
||||||
#' - `atc_group`\cr Official pharmacological subgroup (3rd level ATC code) as defined by the WHOCC
|
#' - `atc_group`\cr Official pharmacological subgroup (3rd level ATC code) as defined by the WHOCC
|
||||||
@@ -55,7 +55,7 @@
|
|||||||
#' - `iv_units`\cr Units of `iv_ddd`
|
#' - `iv_units`\cr Units of `iv_ddd`
|
||||||
#' @details Properties that are based on an ATC code are only available when an ATC is available. These properties are: `atc_group1`, `atc_group2`, `oral_ddd`, `oral_units`, `iv_ddd` and `iv_units`.
|
#' @details Properties that are based on an ATC code are only available when an ATC is available. These properties are: `atc_group1`, `atc_group2`, `oral_ddd`, `oral_units`, `iv_ddd` and `iv_units`.
|
||||||
#'
|
#'
|
||||||
#' Synonyms (i.e. trade names) are derived from the Compound ID (`cid`) and consequently only available where a CID is available.
|
#' Synonyms (i.e. trade names) were derived from the Compound ID (`cid`) and consequently only available where a CID is available.
|
||||||
#'
|
#'
|
||||||
#' ## Direct download
|
#' ## Direct download
|
||||||
#' These data sets are available as 'flat files' for use even without \R - you can find the files here:
|
#' These data sets are available as 'flat files' for use even without \R - you can find the files here:
|
||||||
@@ -239,7 +239,7 @@
|
|||||||
|
|
||||||
#' Data Set for R/SI Interpretation
|
#' Data Set for R/SI Interpretation
|
||||||
#'
|
#'
|
||||||
#' Data set to interpret MIC and disk diffusion to R/SI values. Included guidelines are CLSI (`r min(as.integer(gsub("[^0-9]", "", subset(rsi_translation, guideline %like% "CLSI")$guideline)))`-`r max(as.integer(gsub("[^0-9]", "", subset(rsi_translation, guideline %like% "CLSI")$guideline)))`) and EUCAST (`r min(as.integer(gsub("[^0-9]", "", subset(rsi_translation, guideline %like% "EUCAST")$guideline)))`-`r max(as.integer(gsub("[^0-9]", "", subset(rsi_translation, guideline %like% "EUCAST")$guideline)))`). Use [as.rsi()] to transform MICs or disks measurements to R/SI values.
|
#' Data set containing reference data to interpret MIC and disk diffusion to R/SI values, according to international guidelines. Currently implemented guidelines are EUCAST (`r min(as.integer(gsub("[^0-9]", "", subset(rsi_translation, guideline %like% "EUCAST")$guideline)))`-`r max(as.integer(gsub("[^0-9]", "", subset(rsi_translation, guideline %like% "EUCAST")$guideline)))`) and CLSI (`r min(as.integer(gsub("[^0-9]", "", subset(rsi_translation, guideline %like% "CLSI")$guideline)))`-`r max(as.integer(gsub("[^0-9]", "", subset(rsi_translation, guideline %like% "CLSI")$guideline)))`). Use [as.rsi()] to transform MICs or disks measurements to R/SI values.
|
||||||
#' @format A [data.frame] with `r format(nrow(rsi_translation), big.mark = ",")` observations and `r ncol(rsi_translation)` variables:
|
#' @format A [data.frame] with `r format(nrow(rsi_translation), big.mark = ",")` observations and `r ncol(rsi_translation)` variables:
|
||||||
#' - `guideline`\cr Name of the guideline
|
#' - `guideline`\cr Name of the guideline
|
||||||
#' - `method`\cr Either `r vector_or(rsi_translation$method)`
|
#' - `method`\cr Either `r vector_or(rsi_translation$method)`
|
||||||
|
|||||||
@@ -26,477 +26,9 @@
|
|||||||
#' Deprecated Functions
|
#' Deprecated Functions
|
||||||
#'
|
#'
|
||||||
#' These functions are so-called '[Deprecated]'. **They will be removed in a future release.** Using the functions will give a warning with the name of the function it has been replaced by (if there is one).
|
#' These functions are so-called '[Deprecated]'. **They will be removed in a future release.** Using the functions will give a warning with the name of the function it has been replaced by (if there is one).
|
||||||
#' @details All antibiotic class selectors (such as [carbapenems()], [aminoglycosides()]) can now be used for filtering as well, making all their accompanying `filter_*()` functions redundant (such as [filter_carbapenems()], [filter_aminoglycosides()]).
|
|
||||||
#' @inheritSection lifecycle Retired Lifecycle
|
#' @inheritSection lifecycle Retired Lifecycle
|
||||||
#' @inheritSection AMR Read more on Our Website!
|
#' @inheritSection AMR Read more on Our Website!
|
||||||
#' @keywords internal
|
#' @keywords internal
|
||||||
#' @name AMR-deprecated
|
#' @name AMR-deprecated
|
||||||
#' @export
|
# @export
|
||||||
p_symbol <- function(p, emptychar = " ") {
|
NULL
|
||||||
.Deprecated(package = "AMR", new = "cleaner::p_symbol")
|
|
||||||
|
|
||||||
p <- as.double(p)
|
|
||||||
s <- rep(NA_character_, length(p))
|
|
||||||
|
|
||||||
s[p <= 1] <- emptychar
|
|
||||||
s[p <= 0.100] <- "."
|
|
||||||
s[p <= 0.050] <- "*"
|
|
||||||
s[p <= 0.010] <- "**"
|
|
||||||
s[p <= 0.001] <- "***"
|
|
||||||
|
|
||||||
s
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_first_weighted_isolate <- function(x = NULL,
|
|
||||||
col_date = NULL,
|
|
||||||
col_patient_id = NULL,
|
|
||||||
col_mo = NULL,
|
|
||||||
...) {
|
|
||||||
|
|
||||||
.Deprecated(old = "filter_first_weighted_isolate()",
|
|
||||||
new = "filter_first_isolate()",
|
|
||||||
package = "AMR")
|
|
||||||
|
|
||||||
if (is_null_or_grouped_tbl(x)) {
|
|
||||||
# when `x` is left blank, auto determine it (get_current_data() also contains dplyr::cur_data_all())
|
|
||||||
# is also fix for using a grouped df as input (a dot as first argument)
|
|
||||||
x <- tryCatch(get_current_data(arg_name = "x", call = -2), error = function(e) x)
|
|
||||||
}
|
|
||||||
meet_criteria(x, allow_class = "data.frame") # also checks dimensions to be >0
|
|
||||||
meet_criteria(col_date, allow_class = "character", has_length = 1, allow_NULL = TRUE, is_in = colnames(x))
|
|
||||||
meet_criteria(col_patient_id, allow_class = "character", has_length = 1, allow_NULL = TRUE, is_in = colnames(x))
|
|
||||||
meet_criteria(col_mo, allow_class = "character", has_length = 1, allow_NULL = TRUE, is_in = colnames(x))
|
|
||||||
|
|
||||||
filter_first_isolate(x = x, col_date = col_date, col_patient_id = col_patient_id, col_mo = col_mo, ...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
key_antibiotics <- function(x = NULL,
|
|
||||||
col_mo = NULL,
|
|
||||||
universal_1 = guess_ab_col(x, "amoxicillin"),
|
|
||||||
universal_2 = guess_ab_col(x, "amoxicillin/clavulanic acid"),
|
|
||||||
universal_3 = guess_ab_col(x, "cefuroxime"),
|
|
||||||
universal_4 = guess_ab_col(x, "piperacillin/tazobactam"),
|
|
||||||
universal_5 = guess_ab_col(x, "ciprofloxacin"),
|
|
||||||
universal_6 = guess_ab_col(x, "trimethoprim/sulfamethoxazole"),
|
|
||||||
GramPos_1 = guess_ab_col(x, "vancomycin"),
|
|
||||||
GramPos_2 = guess_ab_col(x, "teicoplanin"),
|
|
||||||
GramPos_3 = guess_ab_col(x, "tetracycline"),
|
|
||||||
GramPos_4 = guess_ab_col(x, "erythromycin"),
|
|
||||||
GramPos_5 = guess_ab_col(x, "oxacillin"),
|
|
||||||
GramPos_6 = guess_ab_col(x, "rifampin"),
|
|
||||||
GramNeg_1 = guess_ab_col(x, "gentamicin"),
|
|
||||||
GramNeg_2 = guess_ab_col(x, "tobramycin"),
|
|
||||||
GramNeg_3 = guess_ab_col(x, "colistin"),
|
|
||||||
GramNeg_4 = guess_ab_col(x, "cefotaxime"),
|
|
||||||
GramNeg_5 = guess_ab_col(x, "ceftazidime"),
|
|
||||||
GramNeg_6 = guess_ab_col(x, "meropenem"),
|
|
||||||
warnings = TRUE,
|
|
||||||
...) {
|
|
||||||
|
|
||||||
.Deprecated(old = "key_antibiotics()",
|
|
||||||
new = "key_antimicrobials()",
|
|
||||||
package = "AMR")
|
|
||||||
|
|
||||||
if (is_null_or_grouped_tbl(x)) {
|
|
||||||
# when `x` is left blank, auto determine it (get_current_data() also contains dplyr::cur_data_all())
|
|
||||||
# is also fix for using a grouped df as input (a dot as first argument)
|
|
||||||
x <- tryCatch(get_current_data(arg_name = "x", call = -2), error = function(e) x)
|
|
||||||
}
|
|
||||||
|
|
||||||
key_antimicrobials(x = x,
|
|
||||||
col_mo = col_mo,
|
|
||||||
universal = c(universal_1, universal_2, universal_3, universal_4, universal_5, universal_6),
|
|
||||||
gram_negative = c(GramNeg_1, GramNeg_2, GramNeg_3, GramNeg_4, GramNeg_5, GramNeg_6),
|
|
||||||
gram_positive = c(GramPos_1, GramPos_2, GramPos_3, GramPos_4, GramPos_5, GramPos_6),
|
|
||||||
antifungal = NULL,
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
key_antibiotics_equal <- function(y,
|
|
||||||
z,
|
|
||||||
type = "keyantimicrobials",
|
|
||||||
ignore_I = TRUE,
|
|
||||||
points_threshold = 2,
|
|
||||||
info = FALSE,
|
|
||||||
na.rm = TRUE,
|
|
||||||
...) {
|
|
||||||
|
|
||||||
.Deprecated(old = "key_antibiotics_equal()",
|
|
||||||
new = "antimicrobials_equal()",
|
|
||||||
package = "AMR")
|
|
||||||
|
|
||||||
antimicrobials_equal(y = y,
|
|
||||||
z = z,
|
|
||||||
type = type,
|
|
||||||
ignore_I = ignore_I,
|
|
||||||
points_threshold = points_threshold,
|
|
||||||
info = info)
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_ab_class <- function(x,
|
|
||||||
ab_class,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
|
|
||||||
.call_depth <- list(...)$`.call_depth`
|
|
||||||
if (is.null(.call_depth)) {
|
|
||||||
.call_depth <- 0
|
|
||||||
}
|
|
||||||
.x_name <- list(...)$`.x_name`
|
|
||||||
if (is.null(.x_name)) {
|
|
||||||
.x_name <- deparse(substitute(x))
|
|
||||||
}
|
|
||||||
.fn <- list(...)$`.fn`
|
|
||||||
if (is.null(.fn)) {
|
|
||||||
.fn <- "filter_ab_class"
|
|
||||||
}
|
|
||||||
.fn_old <- .fn
|
|
||||||
# new way: using the ab selectors
|
|
||||||
.fn <- gsub("filter_", "", .fn, fixed = TRUE)
|
|
||||||
.fn <- gsub("^([1-5][a-z]+)_cephalosporins", "cephalosporins_\\1", .fn)
|
|
||||||
|
|
||||||
if (missing(x) || is_null_or_grouped_tbl(x)) {
|
|
||||||
# when `x` is left blank, auto determine it (get_current_data() also contains dplyr::cur_data_all())
|
|
||||||
# is also fix for using a grouped df as input (a dot as first argument)
|
|
||||||
x <- get_current_data(arg_name = "x", call = -2 - .call_depth)
|
|
||||||
.x_name <- "your_data"
|
|
||||||
}
|
|
||||||
meet_criteria(x, allow_class = "data.frame", .call_depth = .call_depth)
|
|
||||||
meet_criteria(ab_class, allow_class = "character", has_length = 1, .call_depth = .call_depth)
|
|
||||||
if (!is.null(result)) {
|
|
||||||
# make result = "SI" works too:
|
|
||||||
result <- toupper(unlist(strsplit(result, "")))
|
|
||||||
}
|
|
||||||
meet_criteria(result, allow_class = "character", has_length = c(1, 2, 3), is_in = c("S", "I", "R"), allow_NULL = TRUE, .call_depth = .call_depth)
|
|
||||||
meet_criteria(scope, allow_class = "character", has_length = 1, is_in = c("all", "any"), .call_depth = .call_depth)
|
|
||||||
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1, .call_depth = .call_depth)
|
|
||||||
|
|
||||||
if (is.null(result)) {
|
|
||||||
result <- c("S", "I", "R")
|
|
||||||
}
|
|
||||||
|
|
||||||
# get e.g. carbapenems() from filter_carbapenems()
|
|
||||||
fn <- get(.fn, envir = asNamespace("AMR"))
|
|
||||||
if (scope == "any") {
|
|
||||||
scope_fn <- any
|
|
||||||
} else {
|
|
||||||
scope_fn <- all
|
|
||||||
}
|
|
||||||
|
|
||||||
# be nice here, be VERY extensive about how the AB selectors have taken over this function
|
|
||||||
deprecated_fn <- paste0(.fn, "(", ifelse(.fn == "ab_class", paste0("\"", ab_class, "\""), ""), ")",
|
|
||||||
ifelse(length(result) > 1,
|
|
||||||
paste0(", c(", paste0("\"", result, "\"", collapse = ", "), ")"),
|
|
||||||
ifelse(is.null(result),
|
|
||||||
"",
|
|
||||||
paste0(" == \"", result, "\""))))
|
|
||||||
if (.x_name == ".") {
|
|
||||||
.x_name <- "your_data"
|
|
||||||
}
|
|
||||||
warning_(paste0("`", .fn_old, "()` is deprecated. Use the antibiotic selector `", .fn, "()` instead.\n",
|
|
||||||
"In dplyr:\n",
|
|
||||||
" - ", .x_name, " %>% filter(", scope, "(", deprecated_fn, "))\n",
|
|
||||||
ifelse(length(result) > 1,
|
|
||||||
paste0(" - ", .x_name, " %>% filter(", scope, "(",
|
|
||||||
.fn, "(", ifelse(.fn == "ab_class", paste0("\"", ab_class, "\""), ""), ") == \"R\"))\n"),
|
|
||||||
""),
|
|
||||||
"In base R:\n",
|
|
||||||
" - ", .x_name, "[", scope, "(", deprecated_fn, "), ]\n",
|
|
||||||
ifelse(length(result) > 1,
|
|
||||||
paste0(" - ", .x_name, "[", scope, "(",
|
|
||||||
.fn, "(", ifelse(.fn == "ab_class", paste0("\"", ab_class, "\""), ""), ") == \"R\"), ]\n"),
|
|
||||||
""),
|
|
||||||
" - subset(", .x_name, ", ", scope, "(", deprecated_fn, "))",
|
|
||||||
ifelse(length(result) > 1,
|
|
||||||
paste0("\n - subset(", .x_name, ", ", scope, "(",
|
|
||||||
.fn, "(", ifelse(.fn == "ab_class", paste0("\"", ab_class, "\""), ""), ") == \"R\"))"),
|
|
||||||
"")),
|
|
||||||
call = FALSE)
|
|
||||||
|
|
||||||
if (.fn == "ab_class") {
|
|
||||||
subset(x, scope_fn(fn(ab_class = ab_class), result))
|
|
||||||
} else {
|
|
||||||
subset(x, scope_fn(fn(), result))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_aminoglycosides <- function(x,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
filter_ab_class(x = x,
|
|
||||||
ab_class = "aminoglycoside",
|
|
||||||
result = result,
|
|
||||||
scope = scope,
|
|
||||||
only_rsi_columns = only_rsi_columns,
|
|
||||||
.call_depth = 1,
|
|
||||||
.fn = "filter_aminoglycosides",
|
|
||||||
.x_name = deparse(substitute(x)),
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_betalactams <- function(x,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
filter_ab_class(x = x,
|
|
||||||
ab_class = "carbapenem|cephalosporin|penicillin",
|
|
||||||
result = result,
|
|
||||||
scope = scope,
|
|
||||||
only_rsi_columns = only_rsi_columns,
|
|
||||||
.call_depth = 1,
|
|
||||||
.fn = "filter_betalactams",
|
|
||||||
.x_name = deparse(substitute(x)),
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_carbapenems <- function(x,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
filter_ab_class(x = x,
|
|
||||||
ab_class = "carbapenem",
|
|
||||||
result = result,
|
|
||||||
scope = scope,
|
|
||||||
only_rsi_columns = only_rsi_columns,
|
|
||||||
.call_depth = 1,
|
|
||||||
.fn = "filter_carbapenems",
|
|
||||||
.x_name = deparse(substitute(x)),
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_cephalosporins <- function(x,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
filter_ab_class(x = x,
|
|
||||||
ab_class = "cephalosporin",
|
|
||||||
result = result,
|
|
||||||
scope = scope,
|
|
||||||
only_rsi_columns = only_rsi_columns,
|
|
||||||
.call_depth = 1,
|
|
||||||
.fn = "filter_cephalosporins",
|
|
||||||
.x_name = deparse(substitute(x)),
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_1st_cephalosporins <- function(x,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
filter_ab_class(x = x,
|
|
||||||
ab_class = "cephalosporins (1st gen.)",
|
|
||||||
result = result,
|
|
||||||
scope = scope,
|
|
||||||
only_rsi_columns = only_rsi_columns,
|
|
||||||
.call_depth = 1,
|
|
||||||
.fn = "filter_1st_cephalosporins",
|
|
||||||
.x_name = deparse(substitute(x)),
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_2nd_cephalosporins <- function(x,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
filter_ab_class(x = x,
|
|
||||||
ab_class = "cephalosporins (2nd gen.)",
|
|
||||||
result = result,
|
|
||||||
scope = scope,
|
|
||||||
only_rsi_columns = only_rsi_columns,
|
|
||||||
.call_depth = 1,
|
|
||||||
.fn = "filter_2nd_cephalosporins",
|
|
||||||
.x_name = deparse(substitute(x)),
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_3rd_cephalosporins <- function(x,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
filter_ab_class(x = x,
|
|
||||||
ab_class = "cephalosporins (3rd gen.)",
|
|
||||||
result = result,
|
|
||||||
scope = scope,
|
|
||||||
only_rsi_columns = only_rsi_columns,
|
|
||||||
.call_depth = 1,
|
|
||||||
.fn = "filter_3rd_cephalosporins",
|
|
||||||
.x_name = deparse(substitute(x)),
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_4th_cephalosporins <- function(x,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
filter_ab_class(x = x,
|
|
||||||
ab_class = "cephalosporins (4th gen.)",
|
|
||||||
result = result,
|
|
||||||
scope = scope,
|
|
||||||
only_rsi_columns = only_rsi_columns,
|
|
||||||
.call_depth = 1,
|
|
||||||
.fn = "filter_4th_cephalosporins",
|
|
||||||
.x_name = deparse(substitute(x)),
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_5th_cephalosporins <- function(x,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
filter_ab_class(x = x,
|
|
||||||
ab_class = "cephalosporins (5th gen.)",
|
|
||||||
result = result,
|
|
||||||
scope = scope,
|
|
||||||
only_rsi_columns = only_rsi_columns,
|
|
||||||
.call_depth = 1,
|
|
||||||
.fn = "filter_5th_cephalosporins",
|
|
||||||
.x_name = deparse(substitute(x)),
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_fluoroquinolones <- function(x,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
filter_ab_class(x = x,
|
|
||||||
ab_class = "fluoroquinolone",
|
|
||||||
result = result,
|
|
||||||
scope = scope,
|
|
||||||
only_rsi_columns = only_rsi_columns,
|
|
||||||
.call_depth = 1,
|
|
||||||
.fn = "filter_fluoroquinolones",
|
|
||||||
.x_name = deparse(substitute(x)),
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_glycopeptides <- function(x,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
filter_ab_class(x = x,
|
|
||||||
ab_class = "glycopeptide",
|
|
||||||
result = result,
|
|
||||||
scope = scope,
|
|
||||||
only_rsi_columns = only_rsi_columns,
|
|
||||||
.call_depth = 1,
|
|
||||||
.fn = "filter_glycopeptides",
|
|
||||||
.x_name = deparse(substitute(x)),
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_macrolides <- function(x,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
filter_ab_class(x = x,
|
|
||||||
ab_class = "macrolide",
|
|
||||||
result = result,
|
|
||||||
scope = scope,
|
|
||||||
only_rsi_columns = only_rsi_columns,
|
|
||||||
.call_depth = 1,
|
|
||||||
.fn = "filter_macrolides",
|
|
||||||
.x_name = deparse(substitute(x)),
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_oxazolidinones <- function(x,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
filter_ab_class(x = x,
|
|
||||||
ab_class = "oxazolidinone",
|
|
||||||
result = result,
|
|
||||||
scope = scope,
|
|
||||||
only_rsi_columns = only_rsi_columns,
|
|
||||||
.call_depth = 1,
|
|
||||||
.fn = "filter_oxazolidinones",
|
|
||||||
.x_name = deparse(substitute(x)),
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_penicillins <- function(x,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
filter_ab_class(x = x,
|
|
||||||
ab_class = "penicillin",
|
|
||||||
result = result,
|
|
||||||
scope = scope,
|
|
||||||
only_rsi_columns = only_rsi_columns,
|
|
||||||
.call_depth = 1,
|
|
||||||
.fn = "filter_penicillins",
|
|
||||||
.x_name = deparse(substitute(x)),
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @name AMR-deprecated
|
|
||||||
#' @export
|
|
||||||
filter_tetracyclines <- function(x,
|
|
||||||
result = NULL,
|
|
||||||
scope = "any",
|
|
||||||
only_rsi_columns = FALSE,
|
|
||||||
...) {
|
|
||||||
filter_ab_class(x = x,
|
|
||||||
ab_class = "tetracycline",
|
|
||||||
result = result,
|
|
||||||
scope = scope,
|
|
||||||
only_rsi_columns = only_rsi_columns,
|
|
||||||
.call_depth = 1,
|
|
||||||
.fn = "filter_tetracyclines",
|
|
||||||
.x_name = deparse(substitute(x)),
|
|
||||||
...)
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -195,6 +195,15 @@ unique.disk <- function(x, incomparables = FALSE, ...) {
|
|||||||
y
|
y
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#' @method rep disk
|
||||||
|
#' @export
|
||||||
|
#' @noRd
|
||||||
|
rep.disk <- function(x, ...) {
|
||||||
|
y <- NextMethod()
|
||||||
|
attributes(y) <- attributes(x)
|
||||||
|
y
|
||||||
|
}
|
||||||
|
|
||||||
# will be exported using s3_register() in R/zzz.R
|
# will be exported using s3_register() in R/zzz.R
|
||||||
get_skimmers.disk <- function(column) {
|
get_skimmers.disk <- function(column) {
|
||||||
skimr::sfl(
|
skimr::sfl(
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ format_eucast_version_nr <- function(version, markdown = TRUE) {
|
|||||||
#' @param verbose a [logical] to turn Verbose mode on and off (default is off). In Verbose mode, the function does not apply rules to the data, but instead returns a data set in logbook form with extensive info about which rows and columns would be effected and in which way. Using Verbose mode takes a lot more time.
|
#' @param verbose a [logical] to turn Verbose mode on and off (default is off). In Verbose mode, the function does not apply rules to the data, but instead returns a data set in logbook form with extensive info about which rows and columns would be effected and in which way. Using Verbose mode takes a lot more time.
|
||||||
#' @param version_breakpoints the version number to use for the EUCAST Clinical Breakpoints guideline. Can be either `r vector_or(names(EUCAST_VERSION_BREAKPOINTS), reverse = TRUE)`.
|
#' @param version_breakpoints the version number to use for the EUCAST Clinical Breakpoints guideline. Can be either `r vector_or(names(EUCAST_VERSION_BREAKPOINTS), reverse = TRUE)`.
|
||||||
#' @param version_expertrules the version number to use for the EUCAST Expert Rules and Intrinsic Resistance guideline. Can be either `r vector_or(names(EUCAST_VERSION_EXPERT_RULES), reverse = TRUE)`.
|
#' @param version_expertrules the version number to use for the EUCAST Expert Rules and Intrinsic Resistance guideline. Can be either `r vector_or(names(EUCAST_VERSION_EXPERT_RULES), reverse = TRUE)`.
|
||||||
#' @param ampc_cephalosporin_resistance a [character] value that should be applied to cefotaxime, ceftriaxone and ceftazidime for AmpC de-repressed cephalosporin-resistant mutants, defaults to `NA`. Currently only works when `version_expertrules` is `3.2`; '*EUCAST Expert Rules v3.2 on Enterobacterales*' states that results of cefotaxime, ceftriaxone and ceftazidime should be reported with a note, or results should be suppressed (emptied) for these three agents. A value of `NA` (the default) for this argument will remove results for these three agents, while e.g. a value of `"R"` will make the results for these agents resistant. Use `NULL` or `FALSE` to not alter results for these three agents of AmpC de-repressed cephalosporin-resistant mutants. Using `TRUE` is equal to using `"R"`. \cr For *EUCAST Expert Rules* v3.2, this rule applies to: `r vector_and(gsub("[^a-zA-Z ]+", "", unlist(strsplit(eucast_rules_file[which(eucast_rules_file$reference.version == 3.2 & eucast_rules_file$reference.rule %like% "ampc"), "this_value"][1], "|", fixed = TRUE))), quotes = "*")`.
|
#' @param ampc_cephalosporin_resistance a [character] value that should be applied to cefotaxime, ceftriaxone and ceftazidime for AmpC de-repressed cephalosporin-resistant mutants, defaults to `NA`. Currently only works when `version_expertrules` is `3.2`; '*EUCAST Expert Rules v3.2 on Enterobacterales*' states that results of cefotaxime, ceftriaxone and ceftazidime should be reported with a note, or results should be suppressed (emptied) for these three agents. A value of `NA` (the default) for this argument will remove results for these three agents, while e.g. a value of `"R"` will make the results for these agents resistant. Use `NULL` or `FALSE` to not alter results for these three agents of AmpC de-repressed cephalosporin-resistant mutants. Using `TRUE` is equal to using `"R"`. \cr For *EUCAST Expert Rules* v3.2, this rule applies to: `r vector_and(gsub("[^a-zA-Z ]+", "", unlist(strsplit(EUCAST_RULES_DF[which(EUCAST_RULES_DF$reference.version == 3.2 & EUCAST_RULES_DF$reference.rule %like% "ampc"), "this_value"][1], "|", fixed = TRUE))), quotes = "*")`.
|
||||||
#' @param ... column name of an antibiotic, see section *Antibiotics* below
|
#' @param ... column name of an antibiotic, see section *Antibiotics* below
|
||||||
#' @param ab any (vector of) text that can be coerced to a valid antibiotic code with [as.ab()]
|
#' @param ab any (vector of) text that can be coerced to a valid antibiotic code with [as.ab()]
|
||||||
#' @param administration route of administration, either `r vector_or(dosage$administration)`
|
#' @param administration route of administration, either `r vector_or(dosage$administration)`
|
||||||
@@ -320,9 +320,9 @@ eucast_rules <- function(x,
|
|||||||
x <- trimws(unique(toupper(unlist(strsplit(x, ",")))))
|
x <- trimws(unique(toupper(unlist(strsplit(x, ",")))))
|
||||||
x_new <- character()
|
x_new <- character()
|
||||||
for (val in x) {
|
for (val in x) {
|
||||||
if (val %in% ls(envir = asNamespace("AMR"))) {
|
if (paste0("AB_", val) %in% ls(envir = asNamespace("AMR"))) {
|
||||||
# antibiotic group names, as defined in data-raw/_internals.R, such as `CARBAPENEMS`
|
# antibiotic group names, as defined in data-raw/_internals.R, such as `AB_CARBAPENEMS`
|
||||||
val <- eval(parse(text = val), envir = asNamespace("AMR"))
|
val <- eval(parse(text = paste0("AB_", val)), envir = asNamespace("AMR"))
|
||||||
} else if (val %in% AB_lookup$ab) {
|
} else if (val %in% AB_lookup$ab) {
|
||||||
# separate drugs, such as `AMX`
|
# separate drugs, such as `AMX`
|
||||||
val <- as.ab(val)
|
val <- as.ab(val)
|
||||||
@@ -561,11 +561,11 @@ eucast_rules <- function(x,
|
|||||||
# Official EUCAST rules ---------------------------------------------------
|
# Official EUCAST rules ---------------------------------------------------
|
||||||
eucast_notification_shown <- FALSE
|
eucast_notification_shown <- FALSE
|
||||||
if (!is.null(list(...)$eucast_rules_df)) {
|
if (!is.null(list(...)$eucast_rules_df)) {
|
||||||
# this allows: eucast_rules(x, eucast_rules_df = AMR:::eucast_rules_file %>% filter(is.na(have_these_values)))
|
# this allows: eucast_rules(x, eucast_rules_df = AMR:::EUCAST_RULES_DF %>% filter(is.na(have_these_values)))
|
||||||
eucast_rules_df <- list(...)$eucast_rules_df
|
eucast_rules_df <- list(...)$eucast_rules_df
|
||||||
} else {
|
} else {
|
||||||
# otherwise internal data file, created in data-raw/_internals.R
|
# otherwise internal data file, created in data-raw/_internals.R
|
||||||
eucast_rules_df <- eucast_rules_file
|
eucast_rules_df <- EUCAST_RULES_DF
|
||||||
}
|
}
|
||||||
|
|
||||||
# filter on user-set guideline versions ----
|
# filter on user-set guideline versions ----
|
||||||
@@ -1072,7 +1072,6 @@ eucast_dosage <- function(ab, administration = "iv", version_breakpoints = 11.0)
|
|||||||
message_("Dosages for antimicrobial drugs, as meant for ",
|
message_("Dosages for antimicrobial drugs, as meant for ",
|
||||||
format_eucast_version_nr(version_breakpoints, markdown = FALSE), ". ",
|
format_eucast_version_nr(version_breakpoints, markdown = FALSE), ". ",
|
||||||
font_red("This note will be shown once per session."))
|
font_red("This note will be shown once per session."))
|
||||||
remember_thrown_message(paste0("eucast_dosage_v", gsub("[^0-9]", "", version_breakpoints)), entire_session = TRUE)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ab <- as.ab(ab)
|
ab <- as.ab(ab)
|
||||||
|
|||||||
@@ -23,9 +23,9 @@
|
|||||||
# how to conduct AMR data analysis: https://msberends.github.io/AMR/ #
|
# how to conduct AMR data analysis: https://msberends.github.io/AMR/ #
|
||||||
# ==================================================================== #
|
# ==================================================================== #
|
||||||
|
|
||||||
#' Determine First (Weighted) Isolates
|
#' Determine First Isolates
|
||||||
#'
|
#'
|
||||||
#' Determine first (weighted) isolates of all microorganisms of every patient per episode and (if needed) per specimen type. These functions support all four methods as summarised by Hindler *et al.* in 2007 (\doi{10.1086/511864}). To determine patient episodes not necessarily based on microorganisms, use [is_new_episode()] that also supports grouping with the `dplyr` package.
|
#' Determine first isolates of all microorganisms of every patient per episode and (if needed) per specimen type. These functions support all four methods as summarised by Hindler *et al.* in 2007 (\doi{10.1086/511864}). To determine patient episodes not necessarily based on microorganisms, use [is_new_episode()] that also supports grouping with the `dplyr` package.
|
||||||
#' @inheritSection lifecycle Stable Lifecycle
|
#' @inheritSection lifecycle Stable Lifecycle
|
||||||
#' @param x a [data.frame] containing isolates. Can be left blank for automatic determination, see *Examples*.
|
#' @param x a [data.frame] containing isolates. Can be left blank for automatic determination, see *Examples*.
|
||||||
#' @param col_date column name of the result date (or date that is was received on the lab), defaults to the first column with a date class
|
#' @param col_date column name of the result date (or date that is was received on the lab), defaults to the first column with a date class
|
||||||
@@ -34,7 +34,7 @@
|
|||||||
#' @param col_testcode column name of the test codes. Use `col_testcode = NULL` to **not** exclude certain test codes (such as test codes for screening). In that case `testcodes_exclude` will be ignored.
|
#' @param col_testcode column name of the test codes. Use `col_testcode = NULL` to **not** exclude certain test codes (such as test codes for screening). In that case `testcodes_exclude` will be ignored.
|
||||||
#' @param col_specimen column name of the specimen type or group
|
#' @param col_specimen column name of the specimen type or group
|
||||||
#' @param col_icu column name of the logicals (`TRUE`/`FALSE`) whether a ward or department is an Intensive Care Unit (ICU)
|
#' @param col_icu column name of the logicals (`TRUE`/`FALSE`) whether a ward or department is an Intensive Care Unit (ICU)
|
||||||
#' @param col_keyantimicrobials (only useful when `method = "phenotype-based"`) column name of the key antimicrobials to determine first (weighted) isolates, see [key_antimicrobials()]. Defaults to the first column that starts with 'key' followed by 'ab' or 'antibiotics' or 'antimicrobials' (case insensitive). Use `col_keyantimicrobials = FALSE` to prevent this. Can also be the output of [key_antimicrobials()].
|
#' @param col_keyantimicrobials (only useful when `method = "phenotype-based"`) column name of the key antimicrobials to determine first isolates, see [key_antimicrobials()]. Defaults to the first column that starts with 'key' followed by 'ab' or 'antibiotics' or 'antimicrobials' (case insensitive). Use `col_keyantimicrobials = FALSE` to prevent this. Can also be the output of [key_antimicrobials()].
|
||||||
#' @param episode_days episode in days after which a genus/species combination will be determined as 'first isolate' again. The default of 365 days is based on the guideline by CLSI, see *Source*.
|
#' @param episode_days episode in days after which a genus/species combination will be determined as 'first isolate' again. The default of 365 days is based on the guideline by CLSI, see *Source*.
|
||||||
#' @param testcodes_exclude a [character] vector with test codes that should be excluded (case-insensitive)
|
#' @param testcodes_exclude a [character] vector with test codes that should be excluded (case-insensitive)
|
||||||
#' @param icu_exclude a [logical] to indicate whether ICU isolates should be excluded (rows with value `TRUE` in the column set with `col_icu`)
|
#' @param icu_exclude a [logical] to indicate whether ICU isolates should be excluded (rows with value `TRUE` in the column set with `col_icu`)
|
||||||
@@ -102,9 +102,9 @@
|
|||||||
#'
|
#'
|
||||||
#' This is a more reliable method, since it also *weighs* the antibiogram (antimicrobial test results) yielding so-called 'first weighted isolates'. There are two different methods to weigh the antibiogram:
|
#' This is a more reliable method, since it also *weighs* the antibiogram (antimicrobial test results) yielding so-called 'first weighted isolates'. There are two different methods to weigh the antibiogram:
|
||||||
#'
|
#'
|
||||||
#' 1. Using `type = "points"` and argument `points_threshold`
|
#' 1. Using `type = "points"` and argument `points_threshold` (default)
|
||||||
#'
|
#'
|
||||||
#' This method weighs *all* antimicrobial agents available in the data set. Any difference from I to S or R (or vice versa) counts as 0.5 points, a difference from S to R (or vice versa) counts as 1 point. When the sum of points exceeds `points_threshold`, which defaults to `2`, an isolate will be selected as a first weighted isolate.
|
#' This method weighs *all* antimicrobial agents available in the data set. Any difference from I to S or R (or vice versa) counts as `0.5` points, a difference from S to R (or vice versa) counts as `1` point. When the sum of points exceeds `points_threshold`, which defaults to `2`, an isolate will be selected as a first weighted isolate.
|
||||||
#'
|
#'
|
||||||
#' All antimicrobials are internally selected using the [all_antimicrobials()] function. The output of this function does not need to be passed to the [first_isolate()] function.
|
#' All antimicrobials are internally selected using the [all_antimicrobials()] function. The output of this function does not need to be passed to the [first_isolate()] function.
|
||||||
#'
|
#'
|
||||||
@@ -131,11 +131,8 @@
|
|||||||
#' # `example_isolates` is a data set available in the AMR package.
|
#' # `example_isolates` is a data set available in the AMR package.
|
||||||
#' # See ?example_isolates.
|
#' # See ?example_isolates.
|
||||||
#'
|
#'
|
||||||
#' example_isolates[first_isolate(example_isolates), ]
|
|
||||||
#' \donttest{
|
|
||||||
#' # faster way, only works in R 3.2 and later:
|
|
||||||
#' example_isolates[first_isolate(), ]
|
#' example_isolates[first_isolate(), ]
|
||||||
#'
|
#' \donttest{
|
||||||
#' # get all first Gram-negatives
|
#' # get all first Gram-negatives
|
||||||
#' example_isolates[which(first_isolate() & mo_is_gram_negative()), ]
|
#' example_isolates[which(first_isolate() & mo_is_gram_negative()), ]
|
||||||
#'
|
#'
|
||||||
@@ -221,7 +218,7 @@ first_isolate <- function(x = NULL,
|
|||||||
meet_criteria(col_icu, allow_class = "character", has_length = 1, allow_NULL = TRUE, is_in = colnames(x))
|
meet_criteria(col_icu, allow_class = "character", has_length = 1, allow_NULL = TRUE, is_in = colnames(x))
|
||||||
# method
|
# method
|
||||||
method <- coerce_method(method)
|
method <- coerce_method(method)
|
||||||
meet_criteria(method, allow_class = "character", has_length = 1, is_in = c("phenotype-based", "episode-based", "patient-based", "isolate-based", "p", "e", "i"))
|
meet_criteria(method, allow_class = "character", has_length = 1, is_in = c("phenotype-based", "episode-based", "patient-based", "isolate-based"))
|
||||||
# key antimicrobials
|
# key antimicrobials
|
||||||
if (length(col_keyantimicrobials) > 1) {
|
if (length(col_keyantimicrobials) > 1) {
|
||||||
meet_criteria(col_keyantimicrobials, allow_class = "character", has_length = nrow(x))
|
meet_criteria(col_keyantimicrobials, allow_class = "character", has_length = nrow(x))
|
||||||
@@ -259,15 +256,14 @@ first_isolate <- function(x = NULL,
|
|||||||
method <- "episode-based"
|
method <- "episode-based"
|
||||||
}
|
}
|
||||||
if (info == TRUE & message_not_thrown_before("first_isolate.method")) {
|
if (info == TRUE & message_not_thrown_before("first_isolate.method")) {
|
||||||
message_(paste0("Determining first isolates using the '", font_bold(method), "' method",
|
message_(paste0("Determining first isolates ",
|
||||||
ifelse(method %in% c("episode-based", "phenotype-based"),
|
ifelse(method %in% c("episode-based", "phenotype-based"),
|
||||||
ifelse(is.infinite(episode_days),
|
ifelse(is.infinite(episode_days),
|
||||||
" without a specified episode length",
|
"without a specified episode length",
|
||||||
paste(" and an episode length of", episode_days, "days")),
|
paste("using an episode length of", episode_days, "days")),
|
||||||
"")),
|
"")),
|
||||||
as_note = FALSE,
|
as_note = FALSE,
|
||||||
add_fn = font_black)
|
add_fn = font_black)
|
||||||
remember_thrown_message("first_isolate.method")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# try to find columns based on type
|
# try to find columns based on type
|
||||||
@@ -364,10 +360,9 @@ first_isolate <- function(x = NULL,
|
|||||||
}
|
}
|
||||||
# remove testcodes
|
# remove testcodes
|
||||||
if (!is.null(testcodes_exclude) & info == TRUE & message_not_thrown_before("first_isolate.excludingtestcodes")) {
|
if (!is.null(testcodes_exclude) & info == TRUE & message_not_thrown_before("first_isolate.excludingtestcodes")) {
|
||||||
message_("Excluding test codes: ", toString(paste0("'", testcodes_exclude, "'")),
|
message_("Excluding test codes: ", vector_and(testcodes_exclude, quotes = TRUE),
|
||||||
add_fn = font_black,
|
add_fn = font_black,
|
||||||
as_note = FALSE)
|
as_note = FALSE)
|
||||||
remember_thrown_message("first_isolate.excludingtestcodes")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (is.null(col_specimen)) {
|
if (is.null(col_specimen)) {
|
||||||
@@ -381,7 +376,6 @@ first_isolate <- function(x = NULL,
|
|||||||
message_("Excluding other than specimen group '", specimen_group, "'",
|
message_("Excluding other than specimen group '", specimen_group, "'",
|
||||||
add_fn = font_black,
|
add_fn = font_black,
|
||||||
as_note = FALSE)
|
as_note = FALSE)
|
||||||
remember_thrown_message("first_isolate.excludingspecimen")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!is.null(col_keyantimicrobials)) {
|
if (!is.null(col_keyantimicrobials)) {
|
||||||
@@ -460,9 +454,7 @@ first_isolate <- function(x = NULL,
|
|||||||
episode_days = episode_days),
|
episode_days = episode_days),
|
||||||
use.names = FALSE)
|
use.names = FALSE)
|
||||||
|
|
||||||
weighted.notice <- ""
|
|
||||||
if (!is.null(col_keyantimicrobials)) {
|
if (!is.null(col_keyantimicrobials)) {
|
||||||
weighted.notice <- "weighted "
|
|
||||||
if (info == TRUE & message_not_thrown_before("first_isolate.type")) {
|
if (info == TRUE & message_not_thrown_before("first_isolate.type")) {
|
||||||
if (type == "keyantimicrobials") {
|
if (type == "keyantimicrobials") {
|
||||||
message_("Basing inclusion on key antimicrobials, ",
|
message_("Basing inclusion on key antimicrobials, ",
|
||||||
@@ -472,12 +464,11 @@ first_isolate <- function(x = NULL,
|
|||||||
as_note = FALSE)
|
as_note = FALSE)
|
||||||
}
|
}
|
||||||
if (type == "points") {
|
if (type == "points") {
|
||||||
message_("Basing inclusion on all antimicrobial results, using a points threshold of "
|
message_("Basing inclusion on all antimicrobial results, using a points threshold of ",
|
||||||
, points_threshold,
|
points_threshold,
|
||||||
add_fn = font_black,
|
add_fn = font_black,
|
||||||
as_note = FALSE)
|
as_note = FALSE)
|
||||||
}
|
}
|
||||||
remember_thrown_message("first_isolate.type")
|
|
||||||
}
|
}
|
||||||
type_param <- type
|
type_param <- type
|
||||||
|
|
||||||
@@ -590,16 +581,16 @@ first_isolate <- function(x = NULL,
|
|||||||
}
|
}
|
||||||
# mark up number of found
|
# mark up number of found
|
||||||
n_found <- format(n_found, big.mark = big.mark, decimal.mark = decimal.mark)
|
n_found <- format(n_found, big.mark = big.mark, decimal.mark = decimal.mark)
|
||||||
if (p_found_total != p_found_scope) {
|
message_(paste0("=> Found ",
|
||||||
msg_txt <- paste0("=> Found ",
|
font_bold(paste0(n_found,
|
||||||
font_bold(paste0(n_found, " first ", weighted.notice, "isolates")),
|
ifelse(method == "isolate-based", "", paste0(" '", method, "'")),
|
||||||
" (", method, ", ", p_found_scope, " within scope and ", p_found_total, " of total where a microbial ID was available)")
|
" first isolates")),
|
||||||
} else {
|
" (",
|
||||||
msg_txt <- paste0("=> Found ",
|
ifelse(p_found_total != p_found_scope,
|
||||||
font_bold(paste0(n_found, " first ", weighted.notice, "isolates")),
|
paste0(p_found_scope, " within scope and "),
|
||||||
" (", method, ", ", p_found_total, " of total where a microbial ID was available)")
|
""),
|
||||||
}
|
p_found_total, " of total where a microbial ID was available)"),
|
||||||
message_(msg_txt, add_fn = font_black, as_note = FALSE)
|
add_fn = font_black, as_note = FALSE)
|
||||||
}
|
}
|
||||||
|
|
||||||
x$newvar_first_isolate
|
x$newvar_first_isolate
|
||||||
@@ -626,7 +617,7 @@ filter_first_isolate <- function(x = NULL,
|
|||||||
meet_criteria(col_mo, allow_class = "character", has_length = 1, allow_NULL = TRUE, is_in = colnames(x))
|
meet_criteria(col_mo, allow_class = "character", has_length = 1, allow_NULL = TRUE, is_in = colnames(x))
|
||||||
meet_criteria(episode_days, allow_class = c("numeric", "integer"), has_length = 1, is_positive = TRUE, is_finite = FALSE)
|
meet_criteria(episode_days, allow_class = c("numeric", "integer"), has_length = 1, is_positive = TRUE, is_finite = FALSE)
|
||||||
method <- coerce_method(method)
|
method <- coerce_method(method)
|
||||||
meet_criteria(method, allow_class = "character", has_length = 1, is_in = c("phenotype-based", "episode-based", "patient-based", "isolate-based", "p", "e", "i"))
|
meet_criteria(method, allow_class = "character", has_length = 1, is_in = c("phenotype-based", "episode-based", "patient-based", "isolate-based"))
|
||||||
|
|
||||||
subset(x, first_isolate(x = x,
|
subset(x, first_isolate(x = x,
|
||||||
col_date = col_date,
|
col_date = col_date,
|
||||||
@@ -644,7 +635,7 @@ coerce_method <- function(method) {
|
|||||||
method <- tolower(as.character(method[1L]))
|
method <- tolower(as.character(method[1L]))
|
||||||
method[method %like% "^(p$|pheno)"] <- "phenotype-based"
|
method[method %like% "^(p$|pheno)"] <- "phenotype-based"
|
||||||
method[method %like% "^(e$|episode)"] <- "episode-based"
|
method[method %like% "^(e$|episode)"] <- "episode-based"
|
||||||
method[method %like% "^patient"] <- "patient-based"
|
method[method %like% "^pat"] <- "patient-based"
|
||||||
method[method %like% "^(i$|iso)"] <- "isolate-based"
|
method[method %like% "^(i$|iso)"] <- "isolate-based"
|
||||||
method
|
method
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -123,8 +123,7 @@
|
|||||||
#' mo == as.mo("E. coli")) %>%
|
#' mo == as.mo("E. coli")) %>%
|
||||||
#' # age_groups() is also a function in this AMR package:
|
#' # age_groups() is also a function in this AMR package:
|
||||||
#' group_by(age_group = age_groups(age)) %>%
|
#' group_by(age_group = age_groups(age)) %>%
|
||||||
#' select(age_group,
|
#' select(age_group, CIP) %>%
|
||||||
#' CIP) %>%
|
|
||||||
#' ggplot_rsi(x = "age_group")
|
#' ggplot_rsi(x = "age_group")
|
||||||
#'
|
#'
|
||||||
#' # a shorter version which also adjusts data label colours:
|
#' # a shorter version which also adjusts data label colours:
|
||||||
@@ -135,6 +134,8 @@
|
|||||||
#'
|
#'
|
||||||
#' # it also supports groups (don't forget to use the group var on `x` or `facet`):
|
#' # it also supports groups (don't forget to use the group var on `x` or `facet`):
|
||||||
#' example_isolates %>%
|
#' example_isolates %>%
|
||||||
|
#' filter(mo_is_gram_negative()) %>%
|
||||||
|
#' # select only UTI-specific drugs
|
||||||
#' select(hospital_id, AMX, NIT, FOS, TMP, CIP) %>%
|
#' select(hospital_id, AMX, NIT, FOS, TMP, CIP) %>%
|
||||||
#' group_by(hospital_id) %>%
|
#' group_by(hospital_id) %>%
|
||||||
#' ggplot_rsi(x = "hospital_id",
|
#' ggplot_rsi(x = "hospital_id",
|
||||||
@@ -370,7 +371,6 @@ scale_rsi_colours <- function(...,
|
|||||||
aesthetics = "fill") {
|
aesthetics = "fill") {
|
||||||
stop_ifnot_installed("ggplot2")
|
stop_ifnot_installed("ggplot2")
|
||||||
meet_criteria(aesthetics, allow_class = "character", is_in = c("alpha", "colour", "color", "fill", "linetype", "shape", "size"))
|
meet_criteria(aesthetics, allow_class = "character", is_in = c("alpha", "colour", "color", "fill", "linetype", "shape", "size"))
|
||||||
|
|
||||||
# behaviour until AMR pkg v1.5.0 and also when coming from ggplot_rsi()
|
# behaviour until AMR pkg v1.5.0 and also when coming from ggplot_rsi()
|
||||||
if ("colours" %in% names(list(...))) {
|
if ("colours" %in% names(list(...))) {
|
||||||
original_cols <- c(S = "#3CAEA3",
|
original_cols <- c(S = "#3CAEA3",
|
||||||
@@ -379,22 +379,25 @@ scale_rsi_colours <- function(...,
|
|||||||
IR = "#ED553B",
|
IR = "#ED553B",
|
||||||
R = "#ED553B")
|
R = "#ED553B")
|
||||||
colours <- replace(original_cols, names(list(...)$colours), list(...)$colours)
|
colours <- replace(original_cols, names(list(...)$colours), list(...)$colours)
|
||||||
return(ggplot2::scale_fill_manual(values = colours))
|
# limits = force is needed in ggplot2 3.3.4 and 3.3.5, see here;
|
||||||
|
# https://github.com/tidyverse/ggplot2/issues/4511#issuecomment-866185530
|
||||||
|
return(ggplot2::scale_fill_manual(values = colours, limits = force))
|
||||||
}
|
}
|
||||||
if (identical(unlist(list(...)), FALSE)) {
|
if (identical(unlist(list(...)), FALSE)) {
|
||||||
return(invisible())
|
return(invisible())
|
||||||
}
|
}
|
||||||
|
|
||||||
names_susceptible <- c("S", "SI", "IS", "S+I", "I+S", "susceptible", "Susceptible",
|
names_susceptible <- c("S", "SI", "IS", "S+I", "I+S", "susceptible", "Susceptible",
|
||||||
unique(translations_file[which(translations_file$pattern == "Susceptible"),
|
unique(TRANSLATIONS[which(TRANSLATIONS$pattern == "Susceptible"),
|
||||||
"replacement", drop = TRUE]))
|
"replacement", drop = TRUE]))
|
||||||
names_incr_exposure <- c("I", "intermediate", "increased exposure", "incr. exposure", "Increased exposure", "Incr. exposure",
|
names_incr_exposure <- c("I", "intermediate", "increased exposure", "incr. exposure",
|
||||||
unique(translations_file[which(translations_file$pattern == "Intermediate"),
|
"Increased exposure", "Incr. exposure", "Susceptible, incr. exp.",
|
||||||
|
unique(TRANSLATIONS[which(TRANSLATIONS$pattern == "Intermediate"),
|
||||||
"replacement", drop = TRUE]),
|
"replacement", drop = TRUE]),
|
||||||
unique(translations_file[which(translations_file$pattern == "Incr. exposure"),
|
unique(TRANSLATIONS[which(TRANSLATIONS$pattern == "Susceptible, incr. exp."),
|
||||||
"replacement", drop = TRUE]))
|
"replacement", drop = TRUE]))
|
||||||
names_resistant <- c("R", "IR", "RI", "R+I", "I+R", "resistant", "Resistant",
|
names_resistant <- c("R", "IR", "RI", "R+I", "I+R", "resistant", "Resistant",
|
||||||
unique(translations_file[which(translations_file$pattern == "Resistant"),
|
unique(TRANSLATIONS[which(TRANSLATIONS$pattern == "Resistant"),
|
||||||
"replacement", drop = TRUE]))
|
"replacement", drop = TRUE]))
|
||||||
|
|
||||||
susceptible <- rep("#3CAEA3", length(names_susceptible))
|
susceptible <- rep("#3CAEA3", length(names_susceptible))
|
||||||
@@ -411,7 +414,9 @@ scale_rsi_colours <- function(...,
|
|||||||
dots[dots == "I"] <- "#F6D55C"
|
dots[dots == "I"] <- "#F6D55C"
|
||||||
dots[dots == "R"] <- "#ED553B"
|
dots[dots == "R"] <- "#ED553B"
|
||||||
cols <- replace(original_cols, names(dots), dots)
|
cols <- replace(original_cols, names(dots), dots)
|
||||||
ggplot2::scale_discrete_manual(aesthetics = aesthetics, values = cols)
|
# limits = force is needed in ggplot2 3.3.4 and 3.3.5, see here;
|
||||||
|
# https://github.com/tidyverse/ggplot2/issues/4511#issuecomment-866185530
|
||||||
|
ggplot2::scale_discrete_manual(aesthetics = aesthetics, values = cols, limits = force)
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname ggplot_rsi
|
#' @rdname ggplot_rsi
|
||||||
|
|||||||
@@ -97,16 +97,39 @@ guess_ab_col <- function(x = NULL, search_string = NULL, verbose = FALSE, only_r
|
|||||||
}
|
}
|
||||||
|
|
||||||
get_column_abx <- function(x,
|
get_column_abx <- function(x,
|
||||||
|
...,
|
||||||
soft_dependencies = NULL,
|
soft_dependencies = NULL,
|
||||||
hard_dependencies = NULL,
|
hard_dependencies = NULL,
|
||||||
verbose = FALSE,
|
verbose = FALSE,
|
||||||
info = TRUE,
|
info = TRUE,
|
||||||
only_rsi_columns = FALSE,
|
only_rsi_columns = FALSE,
|
||||||
sort = TRUE,
|
sort = TRUE,
|
||||||
...) {
|
reuse_previous_result = TRUE) {
|
||||||
|
|
||||||
# check if retrieved before, then get it from package environment
|
# check if retrieved before, then get it from package environment
|
||||||
if (identical(unique_call_id(entire_session = FALSE), pkg_env$get_column_abx.call)) {
|
if (isTRUE(reuse_previous_result) && identical(unique_call_id(entire_session = FALSE), pkg_env$get_column_abx.call)) {
|
||||||
|
# so within the same call, within the same environment, we got here again.
|
||||||
|
# but we could've come from another function within the same call, so now only check the columns that changed
|
||||||
|
|
||||||
|
# first remove the columns that are not existing anymore
|
||||||
|
previous <- pkg_env$get_column_abx.out
|
||||||
|
current <- previous[previous %in% colnames(x)]
|
||||||
|
|
||||||
|
# then compare columns in current call with columns in original call
|
||||||
|
new_cols <- colnames(x)[!colnames(x) %in% pkg_env$get_column_abx.checked_cols]
|
||||||
|
if (length(new_cols) > 0) {
|
||||||
|
# these columns did not exist in the last call, so add them
|
||||||
|
new_cols_rsi <- get_column_abx(x[, new_cols, drop = FALSE], reuse_previous_result = FALSE, info = FALSE, sort = FALSE)
|
||||||
|
current <- c(current, new_cols_rsi)
|
||||||
|
# order according to columns in current call
|
||||||
|
current <- current[match(colnames(x)[colnames(x) %in% current], current)]
|
||||||
|
}
|
||||||
|
|
||||||
|
# update pkg environment to improve speed on next run
|
||||||
|
pkg_env$get_column_abx.out <- current
|
||||||
|
pkg_env$get_column_abx.checked_cols <- colnames(x)
|
||||||
|
|
||||||
|
# and return right values
|
||||||
return(pkg_env$get_column_abx.out)
|
return(pkg_env$get_column_abx.out)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -123,6 +146,7 @@ get_column_abx <- function(x,
|
|||||||
}
|
}
|
||||||
|
|
||||||
x <- as.data.frame(x, stringsAsFactors = FALSE)
|
x <- as.data.frame(x, stringsAsFactors = FALSE)
|
||||||
|
x.bak <- x
|
||||||
if (only_rsi_columns == TRUE) {
|
if (only_rsi_columns == TRUE) {
|
||||||
x <- x[, which(is.rsi(x)), drop = FALSE]
|
x <- x[, which(is.rsi(x)), drop = FALSE]
|
||||||
}
|
}
|
||||||
@@ -155,7 +179,7 @@ get_column_abx <- function(x,
|
|||||||
} else {
|
} else {
|
||||||
return(NA_character_)
|
return(NA_character_)
|
||||||
}
|
}
|
||||||
})
|
}, USE.NAMES = FALSE)
|
||||||
|
|
||||||
x_columns <- x_columns[!is.na(x_columns)]
|
x_columns <- x_columns[!is.na(x_columns)]
|
||||||
x <- x[, x_columns, drop = FALSE] # without drop = FALSE, x will become a vector when x_columns is length 1
|
x <- x[, x_columns, drop = FALSE] # without drop = FALSE, x will become a vector when x_columns is length 1
|
||||||
@@ -163,62 +187,77 @@ get_column_abx <- function(x,
|
|||||||
abcode = suppressWarnings(as.ab(colnames(x), info = FALSE)),
|
abcode = suppressWarnings(as.ab(colnames(x), info = FALSE)),
|
||||||
stringsAsFactors = FALSE)
|
stringsAsFactors = FALSE)
|
||||||
df_trans <- df_trans[!is.na(df_trans$abcode), , drop = FALSE]
|
df_trans <- df_trans[!is.na(df_trans$abcode), , drop = FALSE]
|
||||||
x <- as.character(df_trans$colnames)
|
out <- as.character(df_trans$colnames)
|
||||||
names(x) <- df_trans$abcode
|
names(out) <- df_trans$abcode
|
||||||
|
|
||||||
# add from self-defined dots (...):
|
# add from self-defined dots (...):
|
||||||
# such as get_column_abx(example_isolates %>% rename(thisone = AMX), amox = "thisone")
|
# such as get_column_abx(example_isolates %>% rename(thisone = AMX), amox = "thisone")
|
||||||
|
all_okay <- TRUE
|
||||||
dots <- list(...)
|
dots <- list(...)
|
||||||
if (length(dots) > 0) {
|
if (length(dots) > 0) {
|
||||||
newnames <- suppressWarnings(as.ab(names(dots), info = FALSE))
|
newnames <- suppressWarnings(as.ab(names(dots), info = FALSE))
|
||||||
if (any(is.na(newnames))) {
|
if (any(is.na(newnames))) {
|
||||||
warning_("Invalid antibiotic reference(s): ", toString(names(dots)[is.na(newnames)]),
|
if (info == TRUE) {
|
||||||
|
message_(" WARNING", add_fn = list(font_yellow, font_bold), as_note = FALSE)
|
||||||
|
}
|
||||||
|
warning_("Invalid antibiotic reference(s): ", vector_and(names(dots)[is.na(newnames)], quotes = FALSE),
|
||||||
call = FALSE,
|
call = FALSE,
|
||||||
immediate = TRUE)
|
immediate = TRUE)
|
||||||
|
all_okay <- FALSE
|
||||||
|
}
|
||||||
|
unexisting_cols <- which(!vapply(FUN.VALUE = logical(1), dots, function(col) all(col %in% x_columns)))
|
||||||
|
if (length(unexisting_cols) > 0) {
|
||||||
|
if (info == TRUE) {
|
||||||
|
message_(" ERROR", add_fn = list(font_red, font_bold), as_note = FALSE)
|
||||||
|
}
|
||||||
|
stop_("Column(s) not found: ", vector_and(unlist(dots[[unexisting_cols]]), quotes = FALSE),
|
||||||
|
call = FALSE)
|
||||||
|
all_okay <- FALSE
|
||||||
}
|
}
|
||||||
# turn all NULLs to NAs
|
# turn all NULLs to NAs
|
||||||
dots <- unlist(lapply(dots, function(x) if (is.null(x)) NA else x))
|
dots <- unlist(lapply(dots, function(dot) if (is.null(dot)) NA else dot))
|
||||||
names(dots) <- newnames
|
names(dots) <- newnames
|
||||||
dots <- dots[!is.na(names(dots))]
|
dots <- dots[!is.na(names(dots))]
|
||||||
# merge, but overwrite automatically determined ones by 'dots'
|
# merge, but overwrite automatically determined ones by 'dots'
|
||||||
x <- c(x[!x %in% dots & !names(x) %in% names(dots)], dots)
|
out <- c(out[!out %in% dots & !names(out) %in% names(dots)], dots)
|
||||||
# delete NAs, this will make e.g. eucast_rules(... TMP = NULL) work to prevent TMP from being used
|
# delete NAs, this will make e.g. eucast_rules(... TMP = NULL) work to prevent TMP from being used
|
||||||
x <- x[!is.na(x)]
|
out <- out[!is.na(out)]
|
||||||
}
|
}
|
||||||
|
|
||||||
if (length(x) == 0) {
|
if (length(out) == 0) {
|
||||||
if (info == TRUE) {
|
if (info == TRUE & all_okay == TRUE) {
|
||||||
message_("No columns found.")
|
message_("No columns found.")
|
||||||
}
|
}
|
||||||
pkg_env$get_column_abx.call <- unique_call_id(entire_session = FALSE)
|
pkg_env$get_column_abx.call <- unique_call_id(entire_session = FALSE)
|
||||||
pkg_env$get_column_abx.out <- x
|
pkg_env$get_column_abx.checked_cols <- colnames(x.bak)
|
||||||
return(x)
|
pkg_env$get_column_abx.out <- out
|
||||||
|
return(out)
|
||||||
}
|
}
|
||||||
|
|
||||||
# sort on name
|
# sort on name
|
||||||
if (sort == TRUE) {
|
if (sort == TRUE) {
|
||||||
x <- x[order(names(x), x)]
|
out <- out[order(names(out), out)]
|
||||||
}
|
}
|
||||||
duplicates <- c(x[duplicated(x)], x[duplicated(names(x))])
|
duplicates <- c(out[duplicated(out)], out[duplicated(names(out))])
|
||||||
duplicates <- duplicates[unique(names(duplicates))]
|
duplicates <- duplicates[unique(names(duplicates))]
|
||||||
x <- c(x[!names(x) %in% names(duplicates)], duplicates)
|
out <- c(out[!names(out) %in% names(duplicates)], duplicates)
|
||||||
if (sort == TRUE) {
|
if (sort == TRUE) {
|
||||||
x <- x[order(names(x), x)]
|
out <- out[order(names(out), out)]
|
||||||
}
|
}
|
||||||
|
|
||||||
# succeeded with auto-guessing
|
# succeeded with auto-guessing
|
||||||
if (info == TRUE) {
|
if (info == TRUE & all_okay == TRUE) {
|
||||||
message_(" OK.", add_fn = list(font_green, font_bold), as_note = FALSE)
|
message_(" OK.", add_fn = list(font_green, font_bold), as_note = FALSE)
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i in seq_len(length(x))) {
|
for (i in seq_len(length(out))) {
|
||||||
if (info == TRUE & verbose == TRUE & !names(x[i]) %in% names(duplicates)) {
|
if (info == TRUE & verbose == TRUE & !names(out[i]) %in% names(duplicates)) {
|
||||||
message_("Using column '", font_bold(x[i]), "' as input for ", names(x)[i],
|
message_("Using column '", font_bold(out[i]), "' as input for ", names(out)[i],
|
||||||
" (", ab_name(names(x)[i], tolower = TRUE, language = NULL), ").")
|
" (", ab_name(names(out)[i], tolower = TRUE, language = NULL), ").")
|
||||||
}
|
}
|
||||||
if (info == TRUE & names(x[i]) %in% names(duplicates)) {
|
if (info == TRUE & names(out[i]) %in% names(duplicates)) {
|
||||||
warning_(paste0("Using column '", font_bold(x[i]), "' as input for ", names(x)[i],
|
warning_(paste0("Using column '", font_bold(out[i]), "' as input for ", names(out)[i],
|
||||||
" (", ab_name(names(x)[i], tolower = TRUE, language = NULL),
|
" (", ab_name(names(out)[i], tolower = TRUE, language = NULL),
|
||||||
"), although it was matched for multiple antibiotics or columns."),
|
"), although it was matched for multiple antibiotics or columns."),
|
||||||
add_fn = font_red,
|
add_fn = font_red,
|
||||||
call = FALSE,
|
call = FALSE,
|
||||||
@@ -228,18 +267,18 @@ get_column_abx <- function(x,
|
|||||||
|
|
||||||
if (!is.null(hard_dependencies)) {
|
if (!is.null(hard_dependencies)) {
|
||||||
hard_dependencies <- unique(hard_dependencies)
|
hard_dependencies <- unique(hard_dependencies)
|
||||||
if (!all(hard_dependencies %in% names(x))) {
|
if (!all(hard_dependencies %in% names(out))) {
|
||||||
# missing a hard dependency will return NA and consequently the data will not be analysed
|
# missing a hard dependency will return NA and consequently the data will not be analysed
|
||||||
missing <- hard_dependencies[!hard_dependencies %in% names(x)]
|
missing <- hard_dependencies[!hard_dependencies %in% names(out)]
|
||||||
generate_warning_abs_missing(missing, any = FALSE)
|
generate_warning_abs_missing(missing, any = FALSE)
|
||||||
return(NA)
|
return(NA)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!is.null(soft_dependencies)) {
|
if (!is.null(soft_dependencies)) {
|
||||||
soft_dependencies <- unique(soft_dependencies)
|
soft_dependencies <- unique(soft_dependencies)
|
||||||
if (info == TRUE & !all(soft_dependencies %in% names(x))) {
|
if (info == TRUE & !all(soft_dependencies %in% names(out))) {
|
||||||
# missing a soft dependency may lower the reliability
|
# missing a soft dependency may lower the reliability
|
||||||
missing <- soft_dependencies[!soft_dependencies %in% names(x)]
|
missing <- soft_dependencies[!soft_dependencies %in% names(out)]
|
||||||
missing_msg <- vector_and(paste0(ab_name(missing, tolower = TRUE, language = NULL),
|
missing_msg <- vector_and(paste0(ab_name(missing, tolower = TRUE, language = NULL),
|
||||||
" (", font_bold(missing, collapse = NULL), ")"),
|
" (", font_bold(missing, collapse = NULL), ")"),
|
||||||
quotes = FALSE)
|
quotes = FALSE)
|
||||||
@@ -249,8 +288,9 @@ get_column_abx <- function(x,
|
|||||||
}
|
}
|
||||||
|
|
||||||
pkg_env$get_column_abx.call <- unique_call_id(entire_session = FALSE)
|
pkg_env$get_column_abx.call <- unique_call_id(entire_session = FALSE)
|
||||||
pkg_env$get_column_abx.out <- x
|
pkg_env$get_column_abx.checked_cols <- colnames(x.bak)
|
||||||
x
|
pkg_env$get_column_abx.out <- out
|
||||||
|
out
|
||||||
}
|
}
|
||||||
|
|
||||||
generate_warning_abs_missing <- function(missing, any = FALSE) {
|
generate_warning_abs_missing <- function(missing, any = FALSE) {
|
||||||
|
|||||||
@@ -44,11 +44,11 @@
|
|||||||
#' cat(italicise_taxonomy("An overview of S. aureus isolates", type = "ansi"))
|
#' cat(italicise_taxonomy("An overview of S. aureus isolates", type = "ansi"))
|
||||||
#'
|
#'
|
||||||
#' # since ggplot2 supports no markdown (yet), use
|
#' # since ggplot2 supports no markdown (yet), use
|
||||||
#' # italicise_taxonomy() and the `ggtext` pkg for titles:
|
#' # italicise_taxonomy() and the `ggtext` package for titles:
|
||||||
#' \donttest{
|
#' \donttest{
|
||||||
#' if (require("ggplot2") && require("ggtext")) {
|
#' if (require("ggplot2") && require("ggtext")) {
|
||||||
#' ggplot(example_isolates$AMC,
|
#' autoplot(example_isolates$AMC,
|
||||||
#' title = italicise_taxonomy("Amoxi/clav in E. coli")) +
|
#' title = italicise_taxonomy("Amoxi/clav in E. coli")) +
|
||||||
#' theme(plot.title = ggtext::element_markdown())
|
#' theme(plot.title = ggtext::element_markdown())
|
||||||
#' }
|
#' }
|
||||||
#' }
|
#' }
|
||||||
|
|||||||
@@ -36,7 +36,7 @@
|
|||||||
#' @param ... ignored, only in place to allow future extensions
|
#' @param ... ignored, only in place to allow future extensions
|
||||||
#' @details **Note:** As opposed to the `join()` functions of `dplyr`, [character] vectors are supported and at default existing columns will get a suffix `"2"` and the newly joined columns will not get a suffix.
|
#' @details **Note:** As opposed to the `join()` functions of `dplyr`, [character] vectors are supported and at default existing columns will get a suffix `"2"` and the newly joined columns will not get a suffix.
|
||||||
#'
|
#'
|
||||||
#' If the `dplyr` package is installed, their join functions will be used. Otherwise, the much slower [merge()] and [interaction()] functions from base R will be used.
|
#' If the `dplyr` package is installed, their join functions will be used. Otherwise, the much slower [merge()] and [interaction()] functions from base \R will be used.
|
||||||
#' @inheritSection AMR Read more on Our Website!
|
#' @inheritSection AMR Read more on Our Website!
|
||||||
#' @return a [data.frame]
|
#' @return a [data.frame]
|
||||||
#' @export
|
#' @export
|
||||||
|
|||||||
@@ -140,7 +140,7 @@ key_antimicrobials <- function(x = NULL,
|
|||||||
meet_criteria(antifungal, allow_class = "character", allow_NULL = TRUE)
|
meet_criteria(antifungal, allow_class = "character", allow_NULL = TRUE)
|
||||||
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
|
||||||
# force regular [data.frame], not a tibble or data.table
|
# force regular data.frame, not a tibble or data.table
|
||||||
x <- as.data.frame(x, stringsAsFactors = FALSE)
|
x <- as.data.frame(x, stringsAsFactors = FALSE)
|
||||||
cols <- get_column_abx(x, info = FALSE, only_rsi_columns = only_rsi_columns)
|
cols <- get_column_abx(x, info = FALSE, only_rsi_columns = only_rsi_columns)
|
||||||
|
|
||||||
@@ -177,7 +177,6 @@ key_antimicrobials <- function(x = NULL,
|
|||||||
paste0("Only using ", values_new_length, " out of ", values_old_length, " defined columns ")),
|
paste0("Only using ", values_new_length, " out of ", values_old_length, " defined columns ")),
|
||||||
"as key antimicrobials for ", name, "s. See ?key_antimicrobials.",
|
"as key antimicrobials for ", name, "s. See ?key_antimicrobials.",
|
||||||
call = FALSE)
|
call = FALSE)
|
||||||
remember_thrown_message(paste0("key_antimicrobials.", name))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
generate_antimcrobials_string(x[which(filter), c(universal, values), drop = FALSE])
|
generate_antimcrobials_string(x[which(filter), c(universal, values), drop = FALSE])
|
||||||
@@ -237,7 +236,7 @@ all_antimicrobials <- function(x = NULL,
|
|||||||
meet_criteria(x, allow_class = "data.frame") # also checks dimensions to be >0
|
meet_criteria(x, allow_class = "data.frame") # also checks dimensions to be >0
|
||||||
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
meet_criteria(only_rsi_columns, allow_class = "logical", has_length = 1)
|
||||||
|
|
||||||
# force regular [data.frame], not a tibble or data.table
|
# force regular data.frame, not a tibble or data.table
|
||||||
x <- as.data.frame(x, stringsAsFactors = FALSE)
|
x <- as.data.frame(x, stringsAsFactors = FALSE)
|
||||||
cols <- get_column_abx(x, only_rsi_columns = only_rsi_columns, info = FALSE, sort = FALSE)
|
cols <- get_column_abx(x, only_rsi_columns = only_rsi_columns, info = FALSE, sort = FALSE)
|
||||||
|
|
||||||
|
|||||||
@@ -187,13 +187,9 @@ mdro <- function(x = NULL,
|
|||||||
check_dataset_integrity()
|
check_dataset_integrity()
|
||||||
|
|
||||||
info.bak <- info
|
info.bak <- info
|
||||||
if (message_not_thrown_before("mdro")) {
|
# don't thrown info's more than once per call
|
||||||
remember_thrown_message("mdro")
|
info <- message_not_thrown_before("mdro")
|
||||||
} else {
|
|
||||||
# don't thrown info's more than once per call
|
|
||||||
info <- FALSE
|
|
||||||
}
|
|
||||||
|
|
||||||
if (interactive() & verbose == TRUE & info == TRUE) {
|
if (interactive() & verbose == TRUE & info == TRUE) {
|
||||||
txt <- paste0("WARNING: In Verbose mode, the mdro() function does not return the MDRO results, but instead returns a data set in logbook form with extensive info about which isolates would be MDRO-positive, or why they are not.",
|
txt <- paste0("WARNING: In Verbose mode, the mdro() function does not return the MDRO results, but instead returns a data set in logbook form with extensive info about which isolates would be MDRO-positive, or why they are not.",
|
||||||
"\n\nThis may overwrite your existing data if you use e.g.:",
|
"\n\nThis may overwrite your existing data if you use e.g.:",
|
||||||
@@ -252,7 +248,7 @@ mdro <- function(x = NULL,
|
|||||||
if (info == TRUE) {
|
if (info == TRUE) {
|
||||||
txt <- paste0("Determining MDROs based on custom rules",
|
txt <- paste0("Determining MDROs based on custom rules",
|
||||||
ifelse(isTRUE(attributes(guideline)$as_factor),
|
ifelse(isTRUE(attributes(guideline)$as_factor),
|
||||||
paste0(", resulting in [factor] levels: ", paste0(attributes(guideline)$values, collapse = " < ")),
|
paste0(", resulting in factor levels: ", paste0(attributes(guideline)$values, collapse = " < ")),
|
||||||
""),
|
""),
|
||||||
".")
|
".")
|
||||||
txt <- word_wrap(txt)
|
txt <- word_wrap(txt)
|
||||||
@@ -1416,7 +1412,6 @@ mdro <- function(x = NULL,
|
|||||||
if (message_not_thrown_before("mdro.availability")) {
|
if (message_not_thrown_before("mdro.availability")) {
|
||||||
warning_("NA introduced for isolates where the available percentage of antimicrobial classes was below ",
|
warning_("NA introduced for isolates where the available percentage of antimicrobial classes was below ",
|
||||||
percentage(pct_required_classes), " (set with `pct_required_classes`)", call = FALSE)
|
percentage(pct_required_classes), " (set with `pct_required_classes`)", call = FALSE)
|
||||||
remember_thrown_message("mdro.availability")
|
|
||||||
}
|
}
|
||||||
# set these -1s to NA
|
# set these -1s to NA
|
||||||
x[which(x$MDRO == -1), "MDRO"] <- NA_integer_
|
x[which(x$MDRO == -1), "MDRO"] <- NA_integer_
|
||||||
|
|||||||
@@ -320,6 +320,15 @@ unique.mic <- function(x, incomparables = FALSE, ...) {
|
|||||||
y
|
y
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#' @method rep mic
|
||||||
|
#' @export
|
||||||
|
#' @noRd
|
||||||
|
rep.mic <- function(x, ...) {
|
||||||
|
y <- NextMethod()
|
||||||
|
attributes(y) <- attributes(x)
|
||||||
|
y
|
||||||
|
}
|
||||||
|
|
||||||
#' @method sort mic
|
#' @method sort mic
|
||||||
#' @export
|
#' @export
|
||||||
#' @noRd
|
#' @noRd
|
||||||
@@ -337,7 +346,7 @@ sort.mic <- function(x, decreasing = FALSE, ...) {
|
|||||||
#' @export
|
#' @export
|
||||||
#' @noRd
|
#' @noRd
|
||||||
hist.mic <- function(x, ...) {
|
hist.mic <- function(x, ...) {
|
||||||
warning_("Use `plot()` or `ggplot()` for optimal plotting of MIC values", call = FALSE)
|
warning_("Use `plot()` or ggplot2's `autoplot()` for optimal plotting of MIC values", call = FALSE)
|
||||||
hist(log2(x))
|
hist(log2(x))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -23,9 +23,9 @@
|
|||||||
# how to conduct AMR data analysis: https://msberends.github.io/AMR/ #
|
# how to conduct AMR data analysis: https://msberends.github.io/AMR/ #
|
||||||
# ==================================================================== #
|
# ==================================================================== #
|
||||||
|
|
||||||
#' Transform Input to a Microorganism ID
|
#' Transform Input to a Microorganism Code
|
||||||
#'
|
#'
|
||||||
#' Use this function to determine a valid microorganism ID ([`mo`]). Determination is done using intelligent rules and the complete taxonomic kingdoms Bacteria, Chromista, Protozoa, Archaea and most microbial species from the kingdom Fungi (see *Source*). The input can be almost anything: a full name (like `"Staphylococcus aureus"`), an abbreviated name (such as `"S. aureus"`), an abbreviation known in the field (such as `"MRSA"`), or just a genus. See *Examples*.
|
#' Use this function to determine a valid microorganism code ([`mo`]). Determination is done using intelligent rules and the complete taxonomic kingdoms Bacteria, Chromista, Protozoa, Archaea and most microbial species from the kingdom Fungi (see *Source*). The input can be almost anything: a full name (like `"Staphylococcus aureus"`), an abbreviated name (such as `"S. aureus"`), an abbreviation known in the field (such as `"MRSA"`), or just a genus. See *Examples*.
|
||||||
#' @inheritSection lifecycle Stable Lifecycle
|
#' @inheritSection lifecycle Stable Lifecycle
|
||||||
#' @param x a [character] vector or a [data.frame] with one or two columns
|
#' @param x a [character] vector or a [data.frame] with one or two columns
|
||||||
#' @param Becker a [logical] to indicate whether staphylococci should be categorised into coagulase-negative staphylococci ("CoNS") and coagulase-positive staphylococci ("CoPS") instead of their own species, according to Karsten Becker *et al.* (1,2,3).
|
#' @param Becker a [logical] to indicate whether staphylococci should be categorised into coagulase-negative staphylococci ("CoNS") and coagulase-positive staphylococci ("CoPS") instead of their own species, according to Karsten Becker *et al.* (1,2,3).
|
||||||
@@ -46,7 +46,7 @@
|
|||||||
#' @details
|
#' @details
|
||||||
#' ## General Info
|
#' ## General Info
|
||||||
#'
|
#'
|
||||||
#' A microorganism ID from this package (class: [`mo`]) is human readable and typically looks like these examples:
|
#' A microorganism (MO) code from this package (class: [`mo`]) is human readable and typically looks like these examples:
|
||||||
#' ```
|
#' ```
|
||||||
#' Code Full name
|
#' Code Full name
|
||||||
#' --------------- --------------------------------------
|
#' --------------- --------------------------------------
|
||||||
@@ -469,7 +469,7 @@ exec_as.mo <- function(x,
|
|||||||
x <- strip_whitespace(x, dyslexia_mode)
|
x <- strip_whitespace(x, dyslexia_mode)
|
||||||
# translate 'unknown' names back to English
|
# translate 'unknown' names back to English
|
||||||
if (any(x %like% "unbekannt|onbekend|desconocid|sconosciut|iconnu|desconhecid", na.rm = TRUE)) {
|
if (any(x %like% "unbekannt|onbekend|desconocid|sconosciut|iconnu|desconhecid", na.rm = TRUE)) {
|
||||||
trns <- subset(translations_file, pattern %like% "unknown" | affect_mo_name == TRUE)
|
trns <- subset(TRANSLATIONS, pattern %like% "unknown")
|
||||||
langs <- LANGUAGES_SUPPORTED[LANGUAGES_SUPPORTED != "en"]
|
langs <- LANGUAGES_SUPPORTED[LANGUAGES_SUPPORTED != "en"]
|
||||||
for (l in langs) {
|
for (l in langs) {
|
||||||
for (i in seq_len(nrow(trns))) {
|
for (i in seq_len(nrow(trns))) {
|
||||||
@@ -492,7 +492,7 @@ exec_as.mo <- function(x,
|
|||||||
x_backup[x %like_case% "^(fungus|fungi)$"] <- "(unknown fungus)" # will otherwise become the kingdom
|
x_backup[x %like_case% "^(fungus|fungi)$"] <- "(unknown fungus)" # will otherwise become the kingdom
|
||||||
x_backup[x_backup_untouched == "Fungi"] <- "Fungi" # is literally the kingdom
|
x_backup[x_backup_untouched == "Fungi"] <- "Fungi" # is literally the kingdom
|
||||||
|
|
||||||
# Fill in fullnames and MO codes at once
|
# Fill in fullnames and MO codes directly
|
||||||
known_names <- tolower(x_backup) %in% MO_lookup$fullname_lower
|
known_names <- tolower(x_backup) %in% MO_lookup$fullname_lower
|
||||||
x[known_names] <- MO_lookup[match(tolower(x_backup)[known_names], MO_lookup$fullname_lower), property, drop = TRUE]
|
x[known_names] <- MO_lookup[match(tolower(x_backup)[known_names], MO_lookup$fullname_lower), property, drop = TRUE]
|
||||||
known_codes <- toupper(x_backup) %in% MO_lookup$mo
|
known_codes <- toupper(x_backup) %in% MO_lookup$mo
|
||||||
@@ -1551,16 +1551,7 @@ exec_as.mo <- function(x,
|
|||||||
& !identical(x_input, "")
|
& !identical(x_input, "")
|
||||||
& !identical(x_input, "xxx")])
|
& !identical(x_input, "xxx")])
|
||||||
|
|
||||||
# left join the found results to the original input values (x_input)
|
x <- x[match(x_input, x_input_unique_nonempty)]
|
||||||
df_found <- data.frame(input = as.character(x_input_unique_nonempty),
|
|
||||||
found = as.character(x),
|
|
||||||
stringsAsFactors = FALSE)
|
|
||||||
df_input <- data.frame(input = as.character(x_input),
|
|
||||||
stringsAsFactors = FALSE)
|
|
||||||
|
|
||||||
# super fast using match() which is a lot faster than merge()
|
|
||||||
x <- df_found$found[match(df_input$input, df_found$input)]
|
|
||||||
|
|
||||||
if (property == "mo") {
|
if (property == "mo") {
|
||||||
x <- set_clean_class(x, new_class = c("mo", "character"))
|
x <- set_clean_class(x, new_class = c("mo", "character"))
|
||||||
}
|
}
|
||||||
@@ -1664,16 +1655,23 @@ pillar_shaft.mo <- function(x, ...) {
|
|||||||
out[is.na(x)] <- font_na(" NA")
|
out[is.na(x)] <- font_na(" NA")
|
||||||
out[x == "UNKNOWN"] <- font_na(" UNKNOWN")
|
out[x == "UNKNOWN"] <- font_na(" UNKNOWN")
|
||||||
|
|
||||||
if (!all(x[!is.na(x)] %in% MO_lookup$mo)) {
|
df <- tryCatch(get_current_data(arg_name = "x", call = 0),
|
||||||
|
error = function(e) NULL)
|
||||||
|
if (!is.null(df)) {
|
||||||
|
mo_cols <- vapply(FUN.VALUE = logical(1), df, is.mo)
|
||||||
|
} else {
|
||||||
|
mo_cols <- NULL
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!all(x[!is.na(x)] %in% MO_lookup$mo) |
|
||||||
|
(!is.null(df) && !all(unlist(df[, which(mo_cols), drop = FALSE]) %in% MO_lookup$mo))) {
|
||||||
# markup old mo codes
|
# markup old mo codes
|
||||||
out[!x %in% MO_lookup$mo] <- font_italic(font_na(x[!x %in% MO_lookup$mo],
|
out[!x %in% MO_lookup$mo] <- font_italic(font_na(x[!x %in% MO_lookup$mo],
|
||||||
collapse = NULL),
|
collapse = NULL),
|
||||||
collapse = NULL)
|
collapse = NULL)
|
||||||
# throw a warning with the affected column name
|
# throw a warning with the affected column name(s)
|
||||||
mo <- tryCatch(search_type_in_df(get_current_data(arg_name = "x", call = 0), type = "mo", info = FALSE),
|
if (!is.null(mo_cols)) {
|
||||||
error = function(e) NULL)
|
col <- paste0("Column ", vector_or(colnames(df)[mo_cols], quotes = TRUE, sort = FALSE))
|
||||||
if (!is.null(mo)) {
|
|
||||||
col <- paste0("Column '", mo, "'")
|
|
||||||
} else {
|
} else {
|
||||||
col <- "The data"
|
col <- "The data"
|
||||||
}
|
}
|
||||||
@@ -1681,7 +1679,7 @@ pillar_shaft.mo <- function(x, ...) {
|
|||||||
"Please update your MO codes with `as.mo()`.",
|
"Please update your MO codes with `as.mo()`.",
|
||||||
call = FALSE)
|
call = FALSE)
|
||||||
}
|
}
|
||||||
|
|
||||||
# make it always fit exactly
|
# make it always fit exactly
|
||||||
max_char <- max(nchar(x))
|
max_char <- max(nchar(x))
|
||||||
if (is.na(max_char)) {
|
if (is.na(max_char)) {
|
||||||
@@ -1817,8 +1815,7 @@ as.data.frame.mo <- function(x, ...) {
|
|||||||
y <- NextMethod()
|
y <- NextMethod()
|
||||||
attributes(y) <- attributes(i)
|
attributes(y) <- attributes(i)
|
||||||
# must only contain valid MOs
|
# must only contain valid MOs
|
||||||
return_after_integrity_check(y, "microorganism code", c(as.character(microorganisms$mo),
|
return_after_integrity_check(y, "microorganism code", as.character(microorganisms$mo))
|
||||||
as.character(microorganisms.translation$mo_old)))
|
|
||||||
}
|
}
|
||||||
#' @method [[<- mo
|
#' @method [[<- mo
|
||||||
#' @export
|
#' @export
|
||||||
@@ -1827,8 +1824,7 @@ as.data.frame.mo <- function(x, ...) {
|
|||||||
y <- NextMethod()
|
y <- NextMethod()
|
||||||
attributes(y) <- attributes(i)
|
attributes(y) <- attributes(i)
|
||||||
# must only contain valid MOs
|
# must only contain valid MOs
|
||||||
return_after_integrity_check(y, "microorganism code", c(as.character(microorganisms$mo),
|
return_after_integrity_check(y, "microorganism code", as.character(microorganisms$mo))
|
||||||
as.character(microorganisms.translation$mo_old)))
|
|
||||||
}
|
}
|
||||||
#' @method c mo
|
#' @method c mo
|
||||||
#' @export
|
#' @export
|
||||||
@@ -1837,8 +1833,7 @@ c.mo <- function(...) {
|
|||||||
x <- list(...)[[1L]]
|
x <- list(...)[[1L]]
|
||||||
y <- NextMethod()
|
y <- NextMethod()
|
||||||
attributes(y) <- attributes(x)
|
attributes(y) <- attributes(x)
|
||||||
return_after_integrity_check(y, "microorganism code", c(as.character(microorganisms$mo),
|
return_after_integrity_check(y, "microorganism code", as.character(microorganisms$mo))
|
||||||
as.character(microorganisms.translation$mo_old)))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @method unique mo
|
#' @method unique mo
|
||||||
@@ -1883,36 +1878,30 @@ print.mo_uncertainties <- function(x, ...) {
|
|||||||
if (NROW(x) == 0) {
|
if (NROW(x) == 0) {
|
||||||
return(NULL)
|
return(NULL)
|
||||||
}
|
}
|
||||||
message_("Matching scores are based on human pathogenic prevalence and the resemblance between the input and the full taxonomic name. See `?mo_matching_score`.", as_note = FALSE)
|
cat(word_wrap("Matching scores", ifelse(has_colour(), " (in blue)", ""), " are based on human pathogenic prevalence and the resemblance between the input and the full taxonomic name. See `?mo_matching_score`.\n\n", add_fn = font_blue))
|
||||||
|
|
||||||
msg <- ""
|
txt <- ""
|
||||||
for (i in seq_len(nrow(x))) {
|
for (i in seq_len(nrow(x))) {
|
||||||
if (x[i, ]$candidates != "") {
|
if (x[i, ]$candidates != "") {
|
||||||
candidates <- unlist(strsplit(x[i, ]$candidates, ", ", fixed = TRUE))
|
candidates <- unlist(strsplit(x[i, ]$candidates, ", ", fixed = TRUE))
|
||||||
scores <- mo_matching_score(x = x[i, ]$input, n = candidates)
|
scores <- mo_matching_score(x = x[i, ]$input, n = candidates)
|
||||||
# sort on descending scores
|
|
||||||
candidates <- candidates[order(1 - scores)]
|
|
||||||
scores_formatted <- trimws(formatC(round(scores, 3), format = "f", digits = 3))
|
|
||||||
n_candidates <- length(candidates)
|
n_candidates <- length(candidates)
|
||||||
candidates <- vector_and(paste0(candidates, " (", scores_formatted[order(1 - scores)], ")"),
|
|
||||||
quotes = FALSE,
|
candidates_formatted <- font_italic(candidates, collapse = NULL)
|
||||||
sort = FALSE)
|
scores_formatted <- trimws(formatC(round(scores, 3), format = "f", digits = 3))
|
||||||
# align with input after arrow
|
|
||||||
candidates <- paste0("\n",
|
# sort on descending scores
|
||||||
strwrap(paste0("Also matched",
|
candidates_formatted <- candidates_formatted[order(1 - scores)]
|
||||||
ifelse(n_candidates >= 25, " (max 25)", ""), ": ",
|
scores_formatted <- scores_formatted[order(1 - scores)]
|
||||||
candidates), # this is already max 25 due to format_uncertainty_as_df()
|
|
||||||
indent = nchar(x[i, ]$input) + 6,
|
candidates <- word_wrap(paste0("Also matched: ",
|
||||||
exdent = nchar(x[i, ]$input) + 6,
|
vector_and(paste0(candidates_formatted,
|
||||||
width = 0.98 * getOption("width")),
|
font_blue(paste0(" (", scores_formatted, ")"), collapse = NULL)),
|
||||||
collapse = "")
|
quotes = FALSE, sort = FALSE),
|
||||||
# after strwrap, make taxonomic names italic
|
ifelse(n_candidates > 25,
|
||||||
candidates <- gsub("([A-Za-z]+)", font_italic("\\1"), candidates, perl = TRUE)
|
paste0(" [showing first 25 of ", n_candidates, "]"),
|
||||||
candidates <- gsub(font_italic("and"), "and", candidates, fixed = TRUE)
|
"")),
|
||||||
candidates <- gsub(paste(font_italic(c("Also", "matched"), collapse = NULL), collapse = " "),
|
extra_indent = nchar("Also matched: "))
|
||||||
"Also matched",
|
|
||||||
candidates, fixed = TRUE)
|
|
||||||
candidates <- gsub(font_italic("max"), "max", candidates, fixed = TRUE)
|
|
||||||
} else {
|
} else {
|
||||||
candidates <- ""
|
candidates <- ""
|
||||||
}
|
}
|
||||||
@@ -1920,23 +1909,24 @@ print.mo_uncertainties <- function(x, ...) {
|
|||||||
n = x[i, ]$fullname),
|
n = x[i, ]$fullname),
|
||||||
3),
|
3),
|
||||||
format = "f", digits = 3))
|
format = "f", digits = 3))
|
||||||
msg <- paste(msg,
|
txt <- paste(txt,
|
||||||
paste0(
|
paste0(
|
||||||
strwrap(
|
strwrap(
|
||||||
paste0('"', x[i, ]$input, '" -> ',
|
paste0(font_red('"', x[i, ]$input, '"', collapse = ""),
|
||||||
|
" -> ",
|
||||||
paste0(font_bold(font_italic(x[i, ]$fullname)),
|
paste0(font_bold(font_italic(x[i, ]$fullname)),
|
||||||
ifelse(!is.na(x[i, ]$renamed_to), paste(", renamed to", font_italic(x[i, ]$renamed_to)), ""),
|
ifelse(!is.na(x[i, ]$renamed_to), paste(", renamed to", font_italic(x[i, ]$renamed_to)), ""),
|
||||||
" (", x[i, ]$mo,
|
" (", x[i, ]$mo,
|
||||||
", matching score = ", score,
|
", ", font_blue(score),
|
||||||
") ")),
|
") ")),
|
||||||
width = 0.98 * getOption("width"),
|
width = 0.98 * getOption("width"),
|
||||||
exdent = nchar(x[i, ]$input) + 6),
|
exdent = nchar(x[i, ]$input) + 6),
|
||||||
collapse = "\n"),
|
collapse = "\n"),
|
||||||
candidates,
|
candidates,
|
||||||
sep = "\n")
|
sep = "\n")
|
||||||
msg <- paste0(gsub("\n\n", "\n", msg), "\n\n")
|
txt <- paste0(gsub("\n\n", "\n", txt), "\n\n")
|
||||||
}
|
}
|
||||||
cat(msg)
|
cat(txt)
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname as.mo
|
#' @rdname as.mo
|
||||||
@@ -2042,35 +2032,63 @@ parse_and_convert <- function(x) {
|
|||||||
x <- as.data.frame(x, stringsAsFactors = FALSE)[[1]]
|
x <- as.data.frame(x, stringsAsFactors = FALSE)[[1]]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
x[is.null(x)] <- NA
|
parsed <- iconv(as.character(x), to = "UTF-8")
|
||||||
parsed <- iconv(x, to = "UTF-8")
|
|
||||||
parsed[is.na(parsed) & !is.na(x)] <- iconv(x[is.na(parsed) & !is.na(x)], from = "Latin1", to = "ASCII//TRANSLIT")
|
parsed[is.na(parsed) & !is.na(x)] <- iconv(x[is.na(parsed) & !is.na(x)], from = "Latin1", to = "ASCII//TRANSLIT")
|
||||||
parsed <- gsub('"', "", parsed, fixed = TRUE)
|
parsed <- gsub('"', "", parsed, fixed = TRUE)
|
||||||
parsed <- gsub(" +", " ", parsed, perl = TRUE)
|
parsed <- gsub(" +", " ", parsed, perl = TRUE)
|
||||||
parsed <- trimws(parsed)
|
parsed <- trimws(parsed)
|
||||||
|
parsed
|
||||||
}, error = function(e) stop(e$message, call. = FALSE)) # this will also be thrown when running `as.mo(no_existing_object)`
|
}, error = function(e) stop(e$message, call. = FALSE)) # this will also be thrown when running `as.mo(no_existing_object)`
|
||||||
parsed
|
parsed
|
||||||
}
|
}
|
||||||
|
|
||||||
replace_old_mo_codes <- function(x, property) {
|
replace_old_mo_codes <- function(x, property) {
|
||||||
if (any(toupper(x) %in% microorganisms.translation$mo_old, na.rm = TRUE)) {
|
ind <- x %like_case% "^[A-Z]_[A-Z_]+$" & !x %in% MO_lookup$mo
|
||||||
|
if (any(ind)) {
|
||||||
# get the ones that match
|
# get the ones that match
|
||||||
matched <- match(toupper(x), microorganisms.translation$mo_old)
|
affected <- x[ind]
|
||||||
# and their new codes
|
affected_unique <- unique(affected)
|
||||||
mo_new <- microorganisms.translation$mo_new[matched]
|
all_direct_matches <- TRUE
|
||||||
|
# find their new codes, once per code
|
||||||
|
solved_unique <- unlist(lapply(strsplit(affected_unique, ""),
|
||||||
|
function(m) {
|
||||||
|
kingdom <- paste0("^", m[1])
|
||||||
|
name <- m[3:length(m)]
|
||||||
|
name[name == "_"] <- " "
|
||||||
|
name <- tolower(paste0(name, ".*", collapse = ""))
|
||||||
|
name <- gsub(" .*", " ", name, fixed = TRUE)
|
||||||
|
name <- paste0("^", name)
|
||||||
|
results <- MO_lookup$mo[MO_lookup$kingdom %like_case% kingdom &
|
||||||
|
MO_lookup$fullname_lower %like_case% name]
|
||||||
|
if (length(results) > 1) {
|
||||||
|
all_direct_matches <<- FALSE
|
||||||
|
}
|
||||||
|
results[1L]
|
||||||
|
}), use.names = FALSE)
|
||||||
|
solved <- solved_unique[match(affected, affected_unique)]
|
||||||
# assign on places where a match was found
|
# assign on places where a match was found
|
||||||
x[which(!is.na(matched))] <- mo_new[which(!is.na(matched))]
|
x[ind] <- solved
|
||||||
n_matched <- length(matched[!is.na(matched)])
|
n_matched <- length(affected[!is.na(affected)])
|
||||||
if (property != "mo") {
|
n_unique <- length(affected_unique[!is.na(affected_unique)])
|
||||||
message_(font_blue(paste0("The input contained ", n_matched,
|
if (n_unique < n_matched) {
|
||||||
" old MO code", ifelse(n_matched == 1, "", "s"),
|
n_unique <- paste0(n_unique, " unique, ")
|
||||||
" (from a previous AMR package version). Please update your MO codes with `as.mo()`.")))
|
|
||||||
} else {
|
} else {
|
||||||
message_(font_blue(paste0(n_matched, " old MO code", ifelse(n_matched == 1, "", "s"),
|
n_unique <- ""
|
||||||
" (from a previous AMR package version) ",
|
}
|
||||||
ifelse(n_matched == 1, "was", "were"),
|
if (property != "mo") {
|
||||||
" updated to ", ifelse(n_matched == 1, "a ", ""),
|
warning_(paste0("The input contained ", n_matched,
|
||||||
"currently used MO code", ifelse(n_matched == 1, "", "s"), ".")))
|
" old MO code", ifelse(n_matched == 1, "", "s"),
|
||||||
|
" (", n_unique, "from a previous AMR package version). ",
|
||||||
|
"Please update your MO codes with `as.mo()` to increase speed."),
|
||||||
|
call = FALSE)
|
||||||
|
} else {
|
||||||
|
warning_(paste0(n_matched, " old MO code", ifelse(n_matched == 1, "", "s"),
|
||||||
|
" (", n_unique, "from a previous AMR package version) ",
|
||||||
|
ifelse(n_matched == 1, "was", "were"),
|
||||||
|
ifelse(all_direct_matches, " updated ", font_bold(" guessed ")),
|
||||||
|
"to ", ifelse(n_matched == 1, "a ", ""),
|
||||||
|
"currently used MO code", ifelse(n_matched == 1, "", "s"), "."),
|
||||||
|
call = FALSE)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
x
|
x
|
||||||
|
|||||||
@@ -46,6 +46,8 @@
|
|||||||
#'
|
#'
|
||||||
#' The grouping into human pathogenic prevalence (\eqn{p}) is based on experience from several microbiological laboratories in the Netherlands in conjunction with international reports on pathogen prevalence. **Group 1** (most prevalent microorganisms) consists of all microorganisms where the taxonomic class is Gammaproteobacteria or where the taxonomic genus is *Enterococcus*, *Staphylococcus* or *Streptococcus*. This group consequently contains all common Gram-negative bacteria, such as *Pseudomonas* and *Legionella* and all species within the order Enterobacterales. **Group 2** consists of all microorganisms where the taxonomic phylum is Proteobacteria, Firmicutes, Actinobacteria or Sarcomastigophora, or where the taxonomic genus is *Absidia*, *Acremonium*, *Actinotignum*, *Alternaria*, *Anaerosalibacter*, *Apophysomyces*, *Arachnia*, *Aspergillus*, *Aureobacterium*, *Aureobasidium*, *Bacteroides*, *Basidiobolus*, *Beauveria*, *Blastocystis*, *Branhamella*, *Calymmatobacterium*, *Candida*, *Capnocytophaga*, *Catabacter*, *Chaetomium*, *Chryseobacterium*, *Chryseomonas*, *Chrysonilia*, *Cladophialophora*, *Cladosporium*, *Conidiobolus*, *Cryptococcus*, *Curvularia*, *Exophiala*, *Exserohilum*, *Flavobacterium*, *Fonsecaea*, *Fusarium*, *Fusobacterium*, *Hendersonula*, *Hypomyces*, *Koserella*, *Lelliottia*, *Leptosphaeria*, *Leptotrichia*, *Malassezia*, *Malbranchea*, *Mortierella*, *Mucor*, *Mycocentrospora*, *Mycoplasma*, *Nectria*, *Ochroconis*, *Oidiodendron*, *Phoma*, *Piedraia*, *Pithomyces*, *Pityrosporum*, *Prevotella*, *Pseudallescheria*, *Rhizomucor*, *Rhizopus*, *Rhodotorula*, *Scolecobasidium*, *Scopulariopsis*, *Scytalidium*, *Sporobolomyces*, *Stachybotrys*, *Stomatococcus*, *Treponema*, *Trichoderma*, *Trichophyton*, *Trichosporon*, *Tritirachium* or *Ureaplasma*. **Group 3** consists of all other microorganisms.
|
#' The grouping into human pathogenic prevalence (\eqn{p}) is based on experience from several microbiological laboratories in the Netherlands in conjunction with international reports on pathogen prevalence. **Group 1** (most prevalent microorganisms) consists of all microorganisms where the taxonomic class is Gammaproteobacteria or where the taxonomic genus is *Enterococcus*, *Staphylococcus* or *Streptococcus*. This group consequently contains all common Gram-negative bacteria, such as *Pseudomonas* and *Legionella* and all species within the order Enterobacterales. **Group 2** consists of all microorganisms where the taxonomic phylum is Proteobacteria, Firmicutes, Actinobacteria or Sarcomastigophora, or where the taxonomic genus is *Absidia*, *Acremonium*, *Actinotignum*, *Alternaria*, *Anaerosalibacter*, *Apophysomyces*, *Arachnia*, *Aspergillus*, *Aureobacterium*, *Aureobasidium*, *Bacteroides*, *Basidiobolus*, *Beauveria*, *Blastocystis*, *Branhamella*, *Calymmatobacterium*, *Candida*, *Capnocytophaga*, *Catabacter*, *Chaetomium*, *Chryseobacterium*, *Chryseomonas*, *Chrysonilia*, *Cladophialophora*, *Cladosporium*, *Conidiobolus*, *Cryptococcus*, *Curvularia*, *Exophiala*, *Exserohilum*, *Flavobacterium*, *Fonsecaea*, *Fusarium*, *Fusobacterium*, *Hendersonula*, *Hypomyces*, *Koserella*, *Lelliottia*, *Leptosphaeria*, *Leptotrichia*, *Malassezia*, *Malbranchea*, *Mortierella*, *Mucor*, *Mycocentrospora*, *Mycoplasma*, *Nectria*, *Ochroconis*, *Oidiodendron*, *Phoma*, *Piedraia*, *Pithomyces*, *Pityrosporum*, *Prevotella*, *Pseudallescheria*, *Rhizomucor*, *Rhizopus*, *Rhodotorula*, *Scolecobasidium*, *Scopulariopsis*, *Scytalidium*, *Sporobolomyces*, *Stachybotrys*, *Stomatococcus*, *Treponema*, *Trichoderma*, *Trichophyton*, *Trichosporon*, *Tritirachium* or *Ureaplasma*. **Group 3** consists of all other microorganisms.
|
||||||
#'
|
#'
|
||||||
|
#' All characters in \eqn{x} and \eqn{n} are ignored that are other than A-Z, a-z, 0-9, spaces and parentheses.
|
||||||
|
#'
|
||||||
#' All matches are sorted descending on their matching score and for all user input values, the top match will be returned. This will lead to the effect that e.g., `"E. coli"` will return the microbial ID of *Escherichia coli* (\eqn{m = `r round(mo_matching_score("E. coli", "Escherichia coli"), 3)`}, a highly prevalent microorganism found in humans) and not *Entamoeba coli* (\eqn{m = `r round(mo_matching_score("E. coli", "Entamoeba coli"), 3)`}, a less prevalent microorganism in humans), although the latter would alphabetically come first.
|
#' All matches are sorted descending on their matching score and for all user input values, the top match will be returned. This will lead to the effect that e.g., `"E. coli"` will return the microbial ID of *Escherichia coli* (\eqn{m = `r round(mo_matching_score("E. coli", "Escherichia coli"), 3)`}, a highly prevalent microorganism found in humans) and not *Entamoeba coli* (\eqn{m = `r round(mo_matching_score("E. coli", "Entamoeba coli"), 3)`}, a less prevalent microorganism in humans), although the latter would alphabetically come first.
|
||||||
#' @export
|
#' @export
|
||||||
#' @inheritSection AMR Reference Data Publicly Available
|
#' @inheritSection AMR Reference Data Publicly Available
|
||||||
|
|||||||
@@ -42,7 +42,7 @@
|
|||||||
#'
|
#'
|
||||||
#' Since the top-level of the taxonomy is sometimes referred to as 'kingdom' and sometimes as 'domain', the functions [mo_kingdom()] and [mo_domain()] return the exact same results.
|
#' Since the top-level of the taxonomy is sometimes referred to as 'kingdom' and sometimes as 'domain', the functions [mo_kingdom()] and [mo_domain()] return the exact same results.
|
||||||
#'
|
#'
|
||||||
#' The Gram stain - [mo_gramstain()] - will be determined based on the taxonomic kingdom and phylum. According to Cavalier-Smith (2002, [PMID 11837318](https://pubmed.ncbi.nlm.nih.gov/11837318)), who defined subkingdoms Negibacteria and Posibacteria, only these phyla are Posibacteria: Actinobacteria, Chloroflexi, Firmicutes and Tenericutes. These bacteria are considered Gram-positive - all other bacteria are considered Gram-negative. Species outside the kingdom of Bacteria will return a value `NA`. Functions [mo_is_gram_negative()] and [mo_is_gram_positive()] always return `TRUE` or `FALSE` (except when the input is `NA` or the MO code is `UNKNOWN`), thus always return `FALSE` for species outside the taxonomic kingdom of Bacteria.
|
#' The Gram stain - [mo_gramstain()] - will be determined based on the taxonomic kingdom and phylum. According to Cavalier-Smith (2002, [PMID 11837318](https://pubmed.ncbi.nlm.nih.gov/11837318)), who defined subkingdoms Negibacteria and Posibacteria, only these phyla are Posibacteria: Actinobacteria, Chloroflexi, Firmicutes and Tenericutes. These bacteria are considered Gram-positive, except for members of the class Negativicutes which are Gram-negative. Members of other bacterial phyla are all considered Gram-negative. Species outside the kingdom of Bacteria will return a value `NA`. Functions [mo_is_gram_negative()] and [mo_is_gram_positive()] always return `TRUE` or `FALSE` (except when the input is `NA` or the MO code is `UNKNOWN`), thus always return `FALSE` for species outside the taxonomic kingdom of Bacteria.
|
||||||
#'
|
#'
|
||||||
#' Determination of yeasts - [mo_is_yeast()] - will be based on the taxonomic kingdom and class. *Budding yeasts* are fungi of the phylum Ascomycetes, class Saccharomycetes (also called Hemiascomycetes). *True yeasts* are aggregated into the underlying order Saccharomycetales. Thus, for all microorganisms that are fungi and member of the taxonomic class Saccharomycetes, the function will return `TRUE`. It returns `FALSE` otherwise (except when the input is `NA` or the MO code is `UNKNOWN`).
|
#' Determination of yeasts - [mo_is_yeast()] - will be based on the taxonomic kingdom and class. *Budding yeasts* are fungi of the phylum Ascomycetes, class Saccharomycetes (also called Hemiascomycetes). *True yeasts* are aggregated into the underlying order Saccharomycetales. Thus, for all microorganisms that are fungi and member of the taxonomic class Saccharomycetes, the function will return `TRUE`. It returns `FALSE` otherwise (except when the input is `NA` or the MO code is `UNKNOWN`).
|
||||||
#'
|
#'
|
||||||
@@ -52,7 +52,7 @@
|
|||||||
#'
|
#'
|
||||||
#' The function [mo_url()] will return the direct URL to the online database entry, which also shows the scientific reference of the concerned species.
|
#' The function [mo_url()] will return the direct URL to the online database entry, which also shows the scientific reference of the concerned species.
|
||||||
#'
|
#'
|
||||||
#' SNOMED codes - [mo_snomed()] - are from the `r SNOMED_VERSION$current_source`. See the [microorganisms] data set for more info.
|
#' SNOMED codes - [mo_snomed()] - are from the `r SNOMED_VERSION$current_source`. See *Source* and the [microorganisms] data set for more info.
|
||||||
#' @inheritSection mo_matching_score Matching Score for Microorganisms
|
#' @inheritSection mo_matching_score Matching Score for Microorganisms
|
||||||
#' @inheritSection catalogue_of_life Catalogue of Life
|
#' @inheritSection catalogue_of_life Catalogue of Life
|
||||||
#' @inheritSection as.mo Source
|
#' @inheritSection as.mo Source
|
||||||
@@ -65,7 +65,7 @@
|
|||||||
#' - A [numeric] in case of [mo_snomed()]
|
#' - A [numeric] in case of [mo_snomed()]
|
||||||
#' - A [character] in all other cases
|
#' - A [character] in all other cases
|
||||||
#' @export
|
#' @export
|
||||||
#' @seealso [microorganisms]
|
#' @seealso Data set [microorganisms]
|
||||||
#' @inheritSection AMR Reference Data Publicly Available
|
#' @inheritSection AMR Reference Data Publicly Available
|
||||||
#' @inheritSection AMR Read more on Our Website!
|
#' @inheritSection AMR Read more on Our Website!
|
||||||
#' @examples
|
#' @examples
|
||||||
@@ -225,6 +225,8 @@ mo_shortname <- function(x, language = get_locale(), ...) {
|
|||||||
translate_AMR(shortnames, language = language, only_unknown = FALSE, only_affect_mo_names = TRUE)
|
translate_AMR(shortnames, language = language, only_unknown = FALSE, only_affect_mo_names = TRUE)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#' @rdname mo_property
|
#' @rdname mo_property
|
||||||
#' @export
|
#' @export
|
||||||
mo_subspecies <- function(x, language = get_locale(), ...) {
|
mo_subspecies <- function(x, language = get_locale(), ...) {
|
||||||
@@ -362,25 +364,18 @@ mo_gramstain <- function(x, language = get_locale(), ...) {
|
|||||||
x.mo <- as.mo(x, language = language, ...)
|
x.mo <- as.mo(x, language = language, ...)
|
||||||
metadata <- get_mo_failures_uncertainties_renamed()
|
metadata <- get_mo_failures_uncertainties_renamed()
|
||||||
|
|
||||||
x.phylum <- mo_phylum(x.mo)
|
x <- rep(NA_character_, length(x))
|
||||||
# DETERMINE GRAM STAIN FOR BACTERIA
|
|
||||||
# Source: https://itis.gov/servlet/SingleRpt/SingleRpt?search_topic=TSN&search_value=956097
|
|
||||||
# It says this:
|
|
||||||
# Kingdom Bacteria (Cavalier-Smith, 2002)
|
|
||||||
# Subkingdom Posibacteria (Cavalier-Smith, 2002)
|
|
||||||
# Direct Children:
|
|
||||||
# Phylum Actinobacteria (Cavalier-Smith, 2002)
|
|
||||||
# Phylum Chloroflexi (Garrity and Holt, 2002)
|
|
||||||
# Phylum Firmicutes (corrig. Gibbons and Murray, 1978)
|
|
||||||
# Phylum Tenericutes (Murray, 1984)
|
|
||||||
x <- NA_character_
|
|
||||||
# make all bacteria Gram negative
|
# make all bacteria Gram negative
|
||||||
x[mo_kingdom(x.mo) == "Bacteria"] <- "Gram-negative"
|
x[mo_kingdom(x.mo) == "Bacteria"] <- "Gram-negative"
|
||||||
# overwrite these phyla with Gram positive
|
# overwrite these 4 phyla with Gram-positives
|
||||||
x[x.phylum %in% c("Actinobacteria",
|
# Source: https://itis.gov/servlet/SingleRpt/SingleRpt?search_topic=TSN&search_value=956097 (Cavalier-Smith, 2002)
|
||||||
"Chloroflexi",
|
x[(mo_phylum(x.mo) %in% c("Actinobacteria",
|
||||||
"Firmicutes",
|
"Chloroflexi",
|
||||||
"Tenericutes")
|
"Firmicutes",
|
||||||
|
"Tenericutes") &
|
||||||
|
# but class Negativicutes (of phylum Firmicutes) are Gram-negative!
|
||||||
|
mo_class(x.mo) != "Negativicutes")
|
||||||
|
# and of course our own ID for Gram-positives
|
||||||
| x.mo == "B_GRAMP"] <- "Gram-positive"
|
| x.mo == "B_GRAMP"] <- "Gram-positive"
|
||||||
|
|
||||||
load_mo_failures_uncertainties_renamed(metadata)
|
load_mo_failures_uncertainties_renamed(metadata)
|
||||||
@@ -475,11 +470,10 @@ mo_is_intrinsic_resistant <- function(x, ab, language = get_locale(), ...) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
# show used version number once per session (pkg_env will reload every session)
|
# show used version number once per session (pkg_env will reload every session)
|
||||||
if (message_not_thrown_before("intrinsic_resistant_version", entire_session = TRUE)) {
|
if (message_not_thrown_before("intrinsic_resistant_version.mo", entire_session = TRUE)) {
|
||||||
message_("Determining intrinsic resistance based on ",
|
message_("Determining intrinsic resistance based on ",
|
||||||
format_eucast_version_nr(3.2, markdown = FALSE), ". ",
|
format_eucast_version_nr(3.2, markdown = FALSE), ". ",
|
||||||
font_red("This note will be shown once per session."))
|
font_red("This note will be shown once per session."))
|
||||||
remember_thrown_message("intrinsic_resistant_version", entire_session = TRUE)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# runs against internal vector: INTRINSIC_R (see zzz.R)
|
# runs against internal vector: INTRINSIC_R (see zzz.R)
|
||||||
@@ -723,16 +717,17 @@ mo_validate <- function(x, property, language, ...) {
|
|||||||
|
|
||||||
if (tryCatch(all(x[!is.na(x)] %in% MO_lookup$mo) & !has_Becker_or_Lancefield, error = function(e) FALSE)) {
|
if (tryCatch(all(x[!is.na(x)] %in% MO_lookup$mo) & !has_Becker_or_Lancefield, error = function(e) FALSE)) {
|
||||||
# special case for mo_* functions where class is already <mo>
|
# special case for mo_* functions where class is already <mo>
|
||||||
return(MO_lookup[match(x, MO_lookup$mo), property, drop = TRUE])
|
x <- MO_lookup[match(x, MO_lookup$mo), property, drop = TRUE]
|
||||||
}
|
|
||||||
|
|
||||||
# try to catch an error when inputting an invalid argument
|
|
||||||
# so the 'call.' can be set to FALSE
|
|
||||||
tryCatch(x[1L] %in% MO_lookup[1, property, drop = TRUE],
|
|
||||||
error = function(e) stop(e$message, call. = FALSE))
|
|
||||||
|
|
||||||
if (!all(x[!is.na(x)] %in% MO_lookup[, property, drop = TRUE]) | has_Becker_or_Lancefield) {
|
} else {
|
||||||
x <- exec_as.mo(x, property = property, language = language, ...)
|
# try to catch an error when inputting an invalid argument
|
||||||
|
# so the 'call.' can be set to FALSE
|
||||||
|
tryCatch(x[1L] %in% MO_lookup[1, property, drop = TRUE],
|
||||||
|
error = function(e) stop(e$message, call. = FALSE))
|
||||||
|
|
||||||
|
if (!all(x[!is.na(x)] %in% MO_lookup[, property, drop = TRUE]) | has_Becker_or_Lancefield) {
|
||||||
|
x <- exec_as.mo(x, property = property, language = language, ...)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (property == "mo") {
|
if (property == "mo") {
|
||||||
@@ -754,8 +749,7 @@ find_mo_col <- function(fn) {
|
|||||||
}, silent = TRUE)
|
}, silent = TRUE)
|
||||||
if (!is.null(df) && !is.null(mo) && is.data.frame(df)) {
|
if (!is.null(df) && !is.null(mo) && is.data.frame(df)) {
|
||||||
if (message_not_thrown_before(fn = fn)) {
|
if (message_not_thrown_before(fn = fn)) {
|
||||||
message_("Using column '", font_bold(mo), "' as input for ", fn, "()")
|
message_("Using column '", font_bold(mo), "' as input for `", fn, "()`")
|
||||||
remember_thrown_message(fn = fn)
|
|
||||||
}
|
}
|
||||||
return(df[, mo, drop = TRUE])
|
return(df[, mo, drop = TRUE])
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -275,9 +275,9 @@ check_validity_mo_source <- function(x, refer_to_name = "`reference_df`", stop_o
|
|||||||
return(FALSE)
|
return(FALSE)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!all(x$mo %in% c("", microorganisms$mo, microorganisms.translation$mo_old), na.rm = TRUE)) {
|
if (!all(x$mo %in% c("", microorganisms$mo), na.rm = TRUE)) {
|
||||||
if (stop_on_error == TRUE) {
|
if (stop_on_error == TRUE) {
|
||||||
invalid <- x[which(!x$mo %in% c("", microorganisms$mo, microorganisms.translation$mo_old)), , drop = FALSE]
|
invalid <- x[which(!x$mo %in% c("", microorganisms$mo)), , drop = FALSE]
|
||||||
if (nrow(invalid) > 1) {
|
if (nrow(invalid) > 1) {
|
||||||
plural <- "s"
|
plural <- "s"
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -25,16 +25,15 @@
|
|||||||
|
|
||||||
#' Plotting for Classes `rsi`, `mic` and `disk`
|
#' Plotting for Classes `rsi`, `mic` and `disk`
|
||||||
#'
|
#'
|
||||||
#' Functions to plot classes `rsi`, `mic` and `disk`, with support for base R and `ggplot2`.
|
#' Functions to plot classes `rsi`, `mic` and `disk`, with support for base \R and `ggplot2`.
|
||||||
#' @inheritSection lifecycle Stable Lifecycle
|
#' @inheritSection lifecycle Maturing Lifecycle
|
||||||
#' @inheritSection AMR Read more on Our Website!
|
#' @inheritSection AMR Read more on Our Website!
|
||||||
#' @param x,data MIC values created with [as.mic()] or disk diffusion values created with [as.disk()]
|
#' @param x,object values created with [as.mic()], [as.disk()] or [as.rsi()]
|
||||||
#' @param mapping aesthetic mappings to use for [`ggplot()`][ggplot2::ggplot()]
|
|
||||||
#' @param main,title title of the plot
|
|
||||||
#' @param xlab,ylab axis title
|
|
||||||
#' @param mo any (vector of) text that can be coerced to a valid microorganism code with [as.mo()]
|
#' @param mo any (vector of) text that can be coerced to a valid microorganism code with [as.mo()]
|
||||||
#' @param ab any (vector of) text that can be coerced to a valid antimicrobial code with [as.ab()]
|
#' @param ab any (vector of) text that can be coerced to a valid antimicrobial code with [as.ab()]
|
||||||
#' @param guideline interpretation guideline to use, defaults to the latest included EUCAST guideline, see *Details*
|
#' @param guideline interpretation guideline to use, defaults to the latest included EUCAST guideline, see *Details*
|
||||||
|
#' @param main,title title of the plot
|
||||||
|
#' @param xlab,ylab axis title
|
||||||
#' @param colours_RSI colours to use for filling in the bars, must be a vector of three values (in the order R, S and I). The default colours are colour-blind friendly.
|
#' @param colours_RSI colours to use for filling in the bars, must be a vector of three values (in the order R, S and I). The default colours are colour-blind friendly.
|
||||||
#' @param language language to be used to translate 'Susceptible', 'Increased exposure'/'Intermediate' and 'Resistant', defaults to system language (see [get_locale()]) and can be overwritten by setting the option `AMR_locale`, e.g. `options(AMR_locale = "de")`, see [translate]. Use `language = NULL` or `language = ""` to prevent translation.
|
#' @param language language to be used to translate 'Susceptible', 'Increased exposure'/'Intermediate' and 'Resistant', defaults to system language (see [get_locale()]) and can be overwritten by setting the option `AMR_locale`, e.g. `options(AMR_locale = "de")`, see [translate]. Use `language = NULL` or `language = ""` to prevent translation.
|
||||||
#' @param expand a [logical] to indicate whether the range on the x axis should be expanded between the lowest and highest value. For MIC values, intermediate values will be factors of 2 starting from the highest MIC value. For disk diameters, the whole diameter range will be filled.
|
#' @param expand a [logical] to indicate whether the range on the x axis should be expanded between the lowest and highest value. For MIC values, intermediate values will be factors of 2 starting from the highest MIC value. For disk diameters, the whole diameter range will be filled.
|
||||||
@@ -46,7 +45,7 @@
|
|||||||
#' Simply using `"CLSI"` or `"EUCAST"` as input will automatically select the latest version of that guideline.
|
#' Simply using `"CLSI"` or `"EUCAST"` as input will automatically select the latest version of that guideline.
|
||||||
#' @name plot
|
#' @name plot
|
||||||
#' @rdname plot
|
#' @rdname plot
|
||||||
#' @return The `ggplot` functions return a [`ggplot`][ggplot2::ggplot()] model that is extendible with any `ggplot2` function.
|
#' @return The `autoplot()` functions return a [`ggplot`][ggplot2::ggplot()] model that is extendible with any `ggplot2` function.
|
||||||
#' @param ... arguments passed on to [as.rsi()]
|
#' @param ... arguments passed on to [as.rsi()]
|
||||||
#' @examples
|
#' @examples
|
||||||
#' some_mic_values <- random_mic(size = 100)
|
#' some_mic_values <- random_mic(size = 100)
|
||||||
@@ -63,9 +62,9 @@
|
|||||||
#'
|
#'
|
||||||
#' \donttest{
|
#' \donttest{
|
||||||
#' if (require("ggplot2")) {
|
#' if (require("ggplot2")) {
|
||||||
#' ggplot(some_mic_values)
|
#' autoplot(some_mic_values)
|
||||||
#' ggplot(some_disk_values, mo = "Escherichia coli", ab = "cipro")
|
#' autoplot(some_disk_values, mo = "Escherichia coli", ab = "cipro")
|
||||||
#' ggplot(some_rsi_values)
|
#' autoplot(some_rsi_values)
|
||||||
#' }
|
#' }
|
||||||
#' }
|
#' }
|
||||||
NULL
|
NULL
|
||||||
@@ -75,22 +74,22 @@ NULL
|
|||||||
#' @export
|
#' @export
|
||||||
#' @rdname plot
|
#' @rdname plot
|
||||||
plot.mic <- function(x,
|
plot.mic <- function(x,
|
||||||
main = paste("MIC values of", deparse(substitute(x))),
|
|
||||||
ylab = "Frequency",
|
|
||||||
xlab = "Minimum Inhibitory Concentration (mg/L)",
|
|
||||||
mo = NULL,
|
mo = NULL,
|
||||||
ab = NULL,
|
ab = NULL,
|
||||||
guideline = "EUCAST",
|
guideline = "EUCAST",
|
||||||
|
main = paste("MIC values of", deparse(substitute(x))),
|
||||||
|
ylab = "Frequency",
|
||||||
|
xlab = "Minimum Inhibitory Concentration (mg/L)",
|
||||||
colours_RSI = c("#ED553B", "#3CAEA3", "#F6D55C"),
|
colours_RSI = c("#ED553B", "#3CAEA3", "#F6D55C"),
|
||||||
language = get_locale(),
|
language = get_locale(),
|
||||||
expand = TRUE,
|
expand = TRUE,
|
||||||
...) {
|
...) {
|
||||||
meet_criteria(main, allow_class = "character", has_length = 1, allow_NULL = TRUE)
|
|
||||||
meet_criteria(ylab, allow_class = "character", has_length = 1)
|
|
||||||
meet_criteria(xlab, allow_class = "character", has_length = 1)
|
|
||||||
meet_criteria(mo, allow_class = c("mo", "character"), allow_NULL = TRUE)
|
meet_criteria(mo, allow_class = c("mo", "character"), allow_NULL = TRUE)
|
||||||
meet_criteria(ab, allow_class = c("ab", "character"), allow_NULL = TRUE)
|
meet_criteria(ab, allow_class = c("ab", "character"), allow_NULL = TRUE)
|
||||||
meet_criteria(guideline, allow_class = "character", has_length = 1)
|
meet_criteria(guideline, allow_class = "character", has_length = 1)
|
||||||
|
meet_criteria(main, allow_class = "character", has_length = 1, allow_NULL = TRUE)
|
||||||
|
meet_criteria(ylab, allow_class = "character", has_length = 1)
|
||||||
|
meet_criteria(xlab, allow_class = "character", has_length = 1)
|
||||||
meet_criteria(colours_RSI, allow_class = "character", has_length = c(1, 3))
|
meet_criteria(colours_RSI, allow_class = "character", has_length = c(1, 3))
|
||||||
meet_criteria(language, has_length = 1, is_in = c(LANGUAGES_SUPPORTED, ""), allow_NULL = TRUE, allow_NA = TRUE)
|
meet_criteria(language, has_length = 1, is_in = c(LANGUAGES_SUPPORTED, ""), allow_NULL = TRUE, allow_NA = TRUE)
|
||||||
meet_criteria(expand, allow_class = "logical", has_length = 1)
|
meet_criteria(expand, allow_class = "logical", has_length = 1)
|
||||||
@@ -161,12 +160,12 @@ plot.mic <- function(x,
|
|||||||
#' @export
|
#' @export
|
||||||
#' @noRd
|
#' @noRd
|
||||||
barplot.mic <- function(height,
|
barplot.mic <- function(height,
|
||||||
main = paste("MIC values of", deparse(substitute(height))),
|
|
||||||
ylab = "Frequency",
|
|
||||||
xlab = "Minimum Inhibitory Concentration (mg/L)",
|
|
||||||
mo = NULL,
|
mo = NULL,
|
||||||
ab = NULL,
|
ab = NULL,
|
||||||
guideline = "EUCAST",
|
guideline = "EUCAST",
|
||||||
|
main = paste("MIC values of", deparse(substitute(height))),
|
||||||
|
ylab = "Frequency",
|
||||||
|
xlab = "Minimum Inhibitory Concentration (mg/L)",
|
||||||
colours_RSI = c("#ED553B", "#3CAEA3", "#F6D55C"),
|
colours_RSI = c("#ED553B", "#3CAEA3", "#F6D55C"),
|
||||||
language = get_locale(),
|
language = get_locale(),
|
||||||
expand = TRUE,
|
expand = TRUE,
|
||||||
@@ -202,28 +201,27 @@ barplot.mic <- function(height,
|
|||||||
...)
|
...)
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @method ggplot mic
|
#' @method autoplot mic
|
||||||
#' @rdname plot
|
#' @rdname plot
|
||||||
# will be exported using s3_register() in R/zzz.R
|
# will be exported using s3_register() in R/zzz.R
|
||||||
ggplot.mic <- function(data,
|
autoplot.mic <- function(object,
|
||||||
mapping = NULL,
|
mo = NULL,
|
||||||
title = paste("MIC values of", deparse(substitute(data))),
|
ab = NULL,
|
||||||
ylab = "Frequency",
|
guideline = "EUCAST",
|
||||||
xlab = "Minimum Inhibitory Concentration (mg/L)",
|
title = paste("MIC values of", deparse(substitute(object))),
|
||||||
mo = NULL,
|
ylab = "Frequency",
|
||||||
ab = NULL,
|
xlab = "Minimum Inhibitory Concentration (mg/L)",
|
||||||
guideline = "EUCAST",
|
colours_RSI = c("#ED553B", "#3CAEA3", "#F6D55C"),
|
||||||
colours_RSI = c("#ED553B", "#3CAEA3", "#F6D55C"),
|
language = get_locale(),
|
||||||
language = get_locale(),
|
expand = TRUE,
|
||||||
expand = TRUE,
|
...) {
|
||||||
...) {
|
|
||||||
stop_ifnot_installed("ggplot2")
|
stop_ifnot_installed("ggplot2")
|
||||||
meet_criteria(title, allow_class = "character", allow_NULL = TRUE)
|
|
||||||
meet_criteria(ylab, allow_class = "character", has_length = 1)
|
|
||||||
meet_criteria(xlab, allow_class = "character", has_length = 1)
|
|
||||||
meet_criteria(mo, allow_class = c("mo", "character"), allow_NULL = TRUE)
|
meet_criteria(mo, allow_class = c("mo", "character"), allow_NULL = TRUE)
|
||||||
meet_criteria(ab, allow_class = c("ab", "character"), allow_NULL = TRUE)
|
meet_criteria(ab, allow_class = c("ab", "character"), allow_NULL = TRUE)
|
||||||
meet_criteria(guideline, allow_class = "character", has_length = 1)
|
meet_criteria(guideline, allow_class = "character", has_length = 1)
|
||||||
|
meet_criteria(title, allow_class = "character", allow_NULL = TRUE)
|
||||||
|
meet_criteria(ylab, allow_class = "character", has_length = 1)
|
||||||
|
meet_criteria(xlab, allow_class = "character", has_length = 1)
|
||||||
meet_criteria(colours_RSI, allow_class = "character", has_length = c(1, 3))
|
meet_criteria(colours_RSI, allow_class = "character", has_length = c(1, 3))
|
||||||
meet_criteria(language, has_length = 1, is_in = c(LANGUAGES_SUPPORTED, ""), allow_NULL = TRUE, allow_NA = TRUE)
|
meet_criteria(language, has_length = 1, is_in = c(LANGUAGES_SUPPORTED, ""), allow_NULL = TRUE, allow_NA = TRUE)
|
||||||
meet_criteria(expand, allow_class = "logical", has_length = 1)
|
meet_criteria(expand, allow_class = "logical", has_length = 1)
|
||||||
@@ -243,7 +241,7 @@ ggplot.mic <- function(data,
|
|||||||
title <- gsub(" +", " ", paste0(title, collapse = " "))
|
title <- gsub(" +", " ", paste0(title, collapse = " "))
|
||||||
}
|
}
|
||||||
|
|
||||||
x <- plot_prepare_table(data, expand = expand)
|
x <- plot_prepare_table(object, expand = expand)
|
||||||
cols_sub <- plot_colours_subtitle_guideline(x = x,
|
cols_sub <- plot_colours_subtitle_guideline(x = x,
|
||||||
mo = mo,
|
mo = mo,
|
||||||
ab = ab,
|
ab = ab,
|
||||||
@@ -262,22 +260,20 @@ ggplot.mic <- function(data,
|
|||||||
levels = translate_AMR(c("Susceptible", plot_name_of_I(cols_sub$guideline), "Resistant"),
|
levels = translate_AMR(c("Susceptible", plot_name_of_I(cols_sub$guideline), "Resistant"),
|
||||||
language = language),
|
language = language),
|
||||||
ordered = TRUE)
|
ordered = TRUE)
|
||||||
if (!is.null(mapping)) {
|
p <- ggplot2::ggplot(df)
|
||||||
p <- ggplot2::ggplot(df, mapping = mapping)
|
|
||||||
} else {
|
|
||||||
p <- ggplot2::ggplot(df)
|
|
||||||
}
|
|
||||||
|
|
||||||
if (any(colours_RSI %in% cols_sub$cols)) {
|
if (any(colours_RSI %in% cols_sub$cols)) {
|
||||||
vals <- c("Resistant" = colours_RSI[1],
|
vals <- c("Resistant" = colours_RSI[1],
|
||||||
"Susceptible" = colours_RSI[2],
|
"Susceptible" = colours_RSI[2],
|
||||||
"Incr. exposure" = colours_RSI[3],
|
"Susceptible, incr. exp." = colours_RSI[3],
|
||||||
"Intermediate" = colours_RSI[3])
|
"Intermediate" = colours_RSI[3])
|
||||||
names(vals) <- translate_AMR(names(vals), language = language)
|
names(vals) <- translate_AMR(names(vals), language = language)
|
||||||
p <- p +
|
p <- p +
|
||||||
ggplot2::geom_col(ggplot2::aes(x = mic, y = count, fill = cols)) +
|
ggplot2::geom_col(ggplot2::aes(x = mic, y = count, fill = cols)) +
|
||||||
|
# limits = force is needed because of a ggplot2 >= 3.3.4 bug (#4511)
|
||||||
ggplot2::scale_fill_manual(values = vals,
|
ggplot2::scale_fill_manual(values = vals,
|
||||||
name = NULL)
|
name = NULL,
|
||||||
|
limits = force)
|
||||||
} else {
|
} else {
|
||||||
p <- p +
|
p <- p +
|
||||||
ggplot2::geom_col(ggplot2::aes(x = mic, y = count))
|
ggplot2::geom_col(ggplot2::aes(x = mic, y = count))
|
||||||
@@ -287,6 +283,7 @@ ggplot.mic <- function(data,
|
|||||||
ggplot2::labs(title = title, x = xlab, y = ylab, subtitle = cols_sub$sub)
|
ggplot2::labs(title = title, x = xlab, y = ylab, subtitle = cols_sub$sub)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#' @method plot disk
|
#' @method plot disk
|
||||||
#' @export
|
#' @export
|
||||||
#' @importFrom graphics barplot axis mtext legend
|
#' @importFrom graphics barplot axis mtext legend
|
||||||
@@ -420,21 +417,20 @@ barplot.disk <- function(height,
|
|||||||
...)
|
...)
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @method ggplot disk
|
#' @method autoplot disk
|
||||||
#' @rdname plot
|
#' @rdname plot
|
||||||
# will be exported using s3_register() in R/zzz.R
|
# will be exported using s3_register() in R/zzz.R
|
||||||
ggplot.disk <- function(data,
|
autoplot.disk <- function(object,
|
||||||
mapping = NULL,
|
mo = NULL,
|
||||||
title = paste("Disk zones of", deparse(substitute(data))),
|
ab = NULL,
|
||||||
ylab = "Frequency",
|
title = paste("Disk zones of", deparse(substitute(object))),
|
||||||
xlab = "Disk diffusion diameter (mm)",
|
ylab = "Frequency",
|
||||||
mo = NULL,
|
xlab = "Disk diffusion diameter (mm)",
|
||||||
ab = NULL,
|
guideline = "EUCAST",
|
||||||
guideline = "EUCAST",
|
colours_RSI = c("#ED553B", "#3CAEA3", "#F6D55C"),
|
||||||
colours_RSI = c("#ED553B", "#3CAEA3", "#F6D55C"),
|
language = get_locale(),
|
||||||
language = get_locale(),
|
expand = TRUE,
|
||||||
expand = TRUE,
|
...) {
|
||||||
...) {
|
|
||||||
stop_ifnot_installed("ggplot2")
|
stop_ifnot_installed("ggplot2")
|
||||||
meet_criteria(title, allow_class = "character", allow_NULL = TRUE)
|
meet_criteria(title, allow_class = "character", allow_NULL = TRUE)
|
||||||
meet_criteria(ylab, allow_class = "character", has_length = 1)
|
meet_criteria(ylab, allow_class = "character", has_length = 1)
|
||||||
@@ -461,7 +457,7 @@ ggplot.disk <- function(data,
|
|||||||
title <- gsub(" +", " ", paste0(title, collapse = " "))
|
title <- gsub(" +", " ", paste0(title, collapse = " "))
|
||||||
}
|
}
|
||||||
|
|
||||||
x <- plot_prepare_table(data, expand = expand)
|
x <- plot_prepare_table(object, expand = expand)
|
||||||
cols_sub <- plot_colours_subtitle_guideline(x = x,
|
cols_sub <- plot_colours_subtitle_guideline(x = x,
|
||||||
mo = mo,
|
mo = mo,
|
||||||
ab = ab,
|
ab = ab,
|
||||||
@@ -481,22 +477,20 @@ ggplot.disk <- function(data,
|
|||||||
levels = translate_AMR(c("Susceptible", plot_name_of_I(cols_sub$guideline), "Resistant"),
|
levels = translate_AMR(c("Susceptible", plot_name_of_I(cols_sub$guideline), "Resistant"),
|
||||||
language = language),
|
language = language),
|
||||||
ordered = TRUE)
|
ordered = TRUE)
|
||||||
if (!is.null(mapping)) {
|
p <- ggplot2::ggplot(df)
|
||||||
p <- ggplot2::ggplot(df, mapping = mapping)
|
|
||||||
} else {
|
|
||||||
p <- ggplot2::ggplot(df)
|
|
||||||
}
|
|
||||||
|
|
||||||
if (any(colours_RSI %in% cols_sub$cols)) {
|
if (any(colours_RSI %in% cols_sub$cols)) {
|
||||||
vals <- c("Resistant" = colours_RSI[1],
|
vals <- c("Resistant" = colours_RSI[1],
|
||||||
"Susceptible" = colours_RSI[2],
|
"Susceptible" = colours_RSI[2],
|
||||||
"Incr. exposure" = colours_RSI[3],
|
"Susceptible, incr. exp." = colours_RSI[3],
|
||||||
"Intermediate" = colours_RSI[3])
|
"Intermediate" = colours_RSI[3])
|
||||||
names(vals) <- translate_AMR(names(vals), language = language)
|
names(vals) <- translate_AMR(names(vals), language = language)
|
||||||
p <- p +
|
p <- p +
|
||||||
ggplot2::geom_col(ggplot2::aes(x = disk, y = count, fill = cols)) +
|
ggplot2::geom_col(ggplot2::aes(x = disk, y = count, fill = cols)) +
|
||||||
|
# limits = force is needed because of a ggplot2 >= 3.3.4 bug (#4511)
|
||||||
ggplot2::scale_fill_manual(values = vals,
|
ggplot2::scale_fill_manual(values = vals,
|
||||||
name = NULL)
|
name = NULL,
|
||||||
|
limits = force)
|
||||||
} else {
|
} else {
|
||||||
p <- p +
|
p <- p +
|
||||||
ggplot2::geom_col(ggplot2::aes(x = disk, y = count))
|
ggplot2::geom_col(ggplot2::aes(x = disk, y = count))
|
||||||
@@ -604,17 +598,16 @@ barplot.rsi <- function(height,
|
|||||||
axis(2, seq(0, max(x)))
|
axis(2, seq(0, max(x)))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @method ggplot rsi
|
#' @method autoplot rsi
|
||||||
#' @rdname plot
|
#' @rdname plot
|
||||||
# will be exported using s3_register() in R/zzz.R
|
# will be exported using s3_register() in R/zzz.R
|
||||||
ggplot.rsi <- function(data,
|
autoplot.rsi <- function(object,
|
||||||
mapping = NULL,
|
title = paste("Resistance Overview of", deparse(substitute(object))),
|
||||||
title = paste("Resistance Overview of", deparse(substitute(data))),
|
xlab = "Antimicrobial Interpretation",
|
||||||
xlab = "Antimicrobial Interpretation",
|
ylab = "Frequency",
|
||||||
ylab = "Frequency",
|
colours_RSI = c("#ED553B", "#3CAEA3", "#F6D55C"),
|
||||||
colours_RSI = c("#ED553B", "#3CAEA3", "#F6D55C"),
|
language = get_locale(),
|
||||||
language = get_locale(),
|
...) {
|
||||||
...) {
|
|
||||||
stop_ifnot_installed("ggplot2")
|
stop_ifnot_installed("ggplot2")
|
||||||
meet_criteria(title, allow_class = "character", allow_NULL = TRUE)
|
meet_criteria(title, allow_class = "character", allow_NULL = TRUE)
|
||||||
meet_criteria(ylab, allow_class = "character", has_length = 1)
|
meet_criteria(ylab, allow_class = "character", has_length = 1)
|
||||||
@@ -640,19 +633,15 @@ ggplot.rsi <- function(data,
|
|||||||
colours_RSI <- rep(colours_RSI, 3)
|
colours_RSI <- rep(colours_RSI, 3)
|
||||||
}
|
}
|
||||||
|
|
||||||
df <- as.data.frame(table(data), stringsAsFactors = TRUE)
|
df <- as.data.frame(table(object), stringsAsFactors = TRUE)
|
||||||
colnames(df) <- c("rsi", "count")
|
colnames(df) <- c("rsi", "count")
|
||||||
if (!is.null(mapping)) {
|
ggplot2::ggplot(df) +
|
||||||
p <- ggplot2::ggplot(df, mapping = mapping)
|
|
||||||
} else {
|
|
||||||
p <- ggplot2::ggplot(df)
|
|
||||||
}
|
|
||||||
|
|
||||||
p +
|
|
||||||
ggplot2::geom_col(ggplot2::aes(x = rsi, y = count, fill = rsi)) +
|
ggplot2::geom_col(ggplot2::aes(x = rsi, y = count, fill = rsi)) +
|
||||||
|
# limits = force is needed because of a ggplot2 >= 3.3.4 bug (#4511)
|
||||||
ggplot2::scale_fill_manual(values = c("R" = colours_RSI[1],
|
ggplot2::scale_fill_manual(values = c("R" = colours_RSI[1],
|
||||||
"S" = colours_RSI[2],
|
"S" = colours_RSI[2],
|
||||||
"I" = colours_RSI[3])) +
|
"I" = colours_RSI[3]),
|
||||||
|
limits = force) +
|
||||||
ggplot2::labs(title = title, x = xlab, y = ylab) +
|
ggplot2::labs(title = title, x = xlab, y = ylab) +
|
||||||
ggplot2::theme(legend.position = "none")
|
ggplot2::theme(legend.position = "none")
|
||||||
}
|
}
|
||||||
@@ -663,6 +652,7 @@ plot_prepare_table <- function(x, expand) {
|
|||||||
if (is.mic(x)) {
|
if (is.mic(x)) {
|
||||||
if (expand == TRUE) {
|
if (expand == TRUE) {
|
||||||
# expand range for MIC by adding factors of 2 from lowest to highest so all MICs in between also print
|
# expand range for MIC by adding factors of 2 from lowest to highest so all MICs in between also print
|
||||||
|
valid_lvls <- levels(x)
|
||||||
extra_range <- max(x) / 2
|
extra_range <- max(x) / 2
|
||||||
while (min(extra_range) / 2 > min(x)) {
|
while (min(extra_range) / 2 > min(x)) {
|
||||||
extra_range <- c(min(extra_range) / 2, extra_range)
|
extra_range <- c(min(extra_range) / 2, extra_range)
|
||||||
@@ -671,7 +661,7 @@ plot_prepare_table <- function(x, expand) {
|
|||||||
extra_range <- rep(0, length(extra_range))
|
extra_range <- rep(0, length(extra_range))
|
||||||
names(extra_range) <- nms
|
names(extra_range) <- nms
|
||||||
x <- table(droplevels(x, as.mic = FALSE))
|
x <- table(droplevels(x, as.mic = FALSE))
|
||||||
extra_range <- extra_range[!names(extra_range) %in% names(x)]
|
extra_range <- extra_range[!names(extra_range) %in% names(x) & names(extra_range) %in% valid_lvls]
|
||||||
x <- as.table(c(x, extra_range))
|
x <- as.table(c(x, extra_range))
|
||||||
} else {
|
} else {
|
||||||
x <- table(droplevels(x, as.mic = FALSE))
|
x <- table(droplevels(x, as.mic = FALSE))
|
||||||
@@ -696,7 +686,7 @@ plot_prepare_table <- function(x, expand) {
|
|||||||
plot_name_of_I <- function(guideline) {
|
plot_name_of_I <- function(guideline) {
|
||||||
if (guideline %unlike% "CLSI" && as.double(gsub("[^0-9]+", "", guideline)) >= 2019) {
|
if (guideline %unlike% "CLSI" && as.double(gsub("[^0-9]+", "", guideline)) >= 2019) {
|
||||||
# interpretation since 2019
|
# interpretation since 2019
|
||||||
"Incr. exposure"
|
"Susceptible, incr. exp."
|
||||||
} else {
|
} else {
|
||||||
# interpretation until 2019
|
# interpretation until 2019
|
||||||
"Intermediate"
|
"Intermediate"
|
||||||
|
|||||||
@@ -167,12 +167,14 @@ resistance <- function(...,
|
|||||||
minimum = 30,
|
minimum = 30,
|
||||||
as_percent = FALSE,
|
as_percent = FALSE,
|
||||||
only_all_tested = FALSE) {
|
only_all_tested = FALSE) {
|
||||||
rsi_calc(...,
|
tryCatch(
|
||||||
ab_result = "R",
|
rsi_calc(...,
|
||||||
minimum = minimum,
|
ab_result = "R",
|
||||||
as_percent = as_percent,
|
minimum = minimum,
|
||||||
only_all_tested = only_all_tested,
|
as_percent = as_percent,
|
||||||
only_count = FALSE)
|
only_all_tested = only_all_tested,
|
||||||
|
only_count = FALSE),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname proportion
|
#' @rdname proportion
|
||||||
@@ -181,12 +183,14 @@ susceptibility <- function(...,
|
|||||||
minimum = 30,
|
minimum = 30,
|
||||||
as_percent = FALSE,
|
as_percent = FALSE,
|
||||||
only_all_tested = FALSE) {
|
only_all_tested = FALSE) {
|
||||||
rsi_calc(...,
|
tryCatch(
|
||||||
ab_result = c("S", "I"),
|
rsi_calc(...,
|
||||||
minimum = minimum,
|
ab_result = c("S", "I"),
|
||||||
as_percent = as_percent,
|
minimum = minimum,
|
||||||
only_all_tested = only_all_tested,
|
as_percent = as_percent,
|
||||||
only_count = FALSE)
|
only_all_tested = only_all_tested,
|
||||||
|
only_count = FALSE),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname proportion
|
#' @rdname proportion
|
||||||
@@ -195,12 +199,14 @@ proportion_R <- function(...,
|
|||||||
minimum = 30,
|
minimum = 30,
|
||||||
as_percent = FALSE,
|
as_percent = FALSE,
|
||||||
only_all_tested = FALSE) {
|
only_all_tested = FALSE) {
|
||||||
rsi_calc(...,
|
tryCatch(
|
||||||
ab_result = "R",
|
rsi_calc(...,
|
||||||
minimum = minimum,
|
ab_result = "R",
|
||||||
as_percent = as_percent,
|
minimum = minimum,
|
||||||
only_all_tested = only_all_tested,
|
as_percent = as_percent,
|
||||||
only_count = FALSE)
|
only_all_tested = only_all_tested,
|
||||||
|
only_count = FALSE),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname proportion
|
#' @rdname proportion
|
||||||
@@ -209,12 +215,14 @@ proportion_IR <- function(...,
|
|||||||
minimum = 30,
|
minimum = 30,
|
||||||
as_percent = FALSE,
|
as_percent = FALSE,
|
||||||
only_all_tested = FALSE) {
|
only_all_tested = FALSE) {
|
||||||
rsi_calc(...,
|
tryCatch(
|
||||||
ab_result = c("I", "R"),
|
rsi_calc(...,
|
||||||
minimum = minimum,
|
ab_result = c("I", "R"),
|
||||||
as_percent = as_percent,
|
minimum = minimum,
|
||||||
only_all_tested = only_all_tested,
|
as_percent = as_percent,
|
||||||
only_count = FALSE)
|
only_all_tested = only_all_tested,
|
||||||
|
only_count = FALSE),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname proportion
|
#' @rdname proportion
|
||||||
@@ -223,12 +231,14 @@ proportion_I <- function(...,
|
|||||||
minimum = 30,
|
minimum = 30,
|
||||||
as_percent = FALSE,
|
as_percent = FALSE,
|
||||||
only_all_tested = FALSE) {
|
only_all_tested = FALSE) {
|
||||||
rsi_calc(...,
|
tryCatch(
|
||||||
ab_result = "I",
|
rsi_calc(...,
|
||||||
minimum = minimum,
|
ab_result = "I",
|
||||||
as_percent = as_percent,
|
minimum = minimum,
|
||||||
only_all_tested = only_all_tested,
|
as_percent = as_percent,
|
||||||
only_count = FALSE)
|
only_all_tested = only_all_tested,
|
||||||
|
only_count = FALSE),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname proportion
|
#' @rdname proportion
|
||||||
@@ -237,12 +247,14 @@ proportion_SI <- function(...,
|
|||||||
minimum = 30,
|
minimum = 30,
|
||||||
as_percent = FALSE,
|
as_percent = FALSE,
|
||||||
only_all_tested = FALSE) {
|
only_all_tested = FALSE) {
|
||||||
rsi_calc(...,
|
tryCatch(
|
||||||
ab_result = c("S", "I"),
|
rsi_calc(...,
|
||||||
minimum = minimum,
|
ab_result = c("S", "I"),
|
||||||
as_percent = as_percent,
|
minimum = minimum,
|
||||||
only_all_tested = only_all_tested,
|
as_percent = as_percent,
|
||||||
only_count = FALSE)
|
only_all_tested = only_all_tested,
|
||||||
|
only_count = FALSE),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname proportion
|
#' @rdname proportion
|
||||||
@@ -251,12 +263,14 @@ proportion_S <- function(...,
|
|||||||
minimum = 30,
|
minimum = 30,
|
||||||
as_percent = FALSE,
|
as_percent = FALSE,
|
||||||
only_all_tested = FALSE) {
|
only_all_tested = FALSE) {
|
||||||
rsi_calc(...,
|
tryCatch(
|
||||||
ab_result = "S",
|
rsi_calc(...,
|
||||||
minimum = minimum,
|
ab_result = "S",
|
||||||
as_percent = as_percent,
|
minimum = minimum,
|
||||||
only_all_tested = only_all_tested,
|
as_percent = as_percent,
|
||||||
only_count = FALSE)
|
only_all_tested = only_all_tested,
|
||||||
|
only_count = FALSE),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname proportion
|
#' @rdname proportion
|
||||||
@@ -268,13 +282,15 @@ proportion_df <- function(data,
|
|||||||
as_percent = FALSE,
|
as_percent = FALSE,
|
||||||
combine_SI = TRUE,
|
combine_SI = TRUE,
|
||||||
combine_IR = FALSE) {
|
combine_IR = FALSE) {
|
||||||
rsi_calc_df(type = "proportion",
|
tryCatch(
|
||||||
data = data,
|
rsi_calc_df(type = "proportion",
|
||||||
translate_ab = translate_ab,
|
data = data,
|
||||||
language = language,
|
translate_ab = translate_ab,
|
||||||
minimum = minimum,
|
language = language,
|
||||||
as_percent = as_percent,
|
minimum = minimum,
|
||||||
combine_SI = combine_SI,
|
as_percent = as_percent,
|
||||||
combine_IR = combine_IR,
|
combine_SI = combine_SI,
|
||||||
combine_SI_missing = missing(combine_SI))
|
combine_IR = combine_IR,
|
||||||
|
combine_SI_missing = missing(combine_SI)),
|
||||||
|
error = function(e) stop_(e$message, call = -5))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,12 +27,12 @@
|
|||||||
#'
|
#'
|
||||||
#' These functions can be used for generating random MIC values and disk diffusion diameters, for AMR data analysis practice. By providing a microorganism and antimicrobial agent, the generated results will reflect reality as much as possible.
|
#' These functions can be used for generating random MIC values and disk diffusion diameters, for AMR data analysis practice. By providing a microorganism and antimicrobial agent, the generated results will reflect reality as much as possible.
|
||||||
#' @inheritSection lifecycle Stable Lifecycle
|
#' @inheritSection lifecycle Stable Lifecycle
|
||||||
#' @param size desired size of the returned vector
|
#' @param size desired size of the returned vector. If used in a [data.frame] call or `dplyr` verb, will get the current (group) size if left blank.
|
||||||
#' @param mo any [character] that can be coerced to a valid microorganism code with [as.mo()]
|
#' @param mo any [character] that can be coerced to a valid microorganism code with [as.mo()]
|
||||||
#' @param ab any [character] that can be coerced to a valid antimicrobial agent code with [as.ab()]
|
#' @param ab any [character] that can be coerced to a valid antimicrobial agent code with [as.ab()]
|
||||||
#' @param prob_RSI a vector of length 3: the probabilities for R (1st value), S (2nd value) and I (3rd value)
|
#' @param prob_RSI a vector of length 3: the probabilities for "R" (1st value), "S" (2nd value) and "I" (3rd value)
|
||||||
#' @param ... ignored, only in place to allow future extensions
|
#' @param ... ignored, only in place to allow future extensions
|
||||||
#' @details The base R function [sample()] is used for generating values.
|
#' @details The base \R function [sample()] is used for generating values.
|
||||||
#'
|
#'
|
||||||
#' Generated values are based on the latest EUCAST guideline implemented in the [rsi_translation] data set. To create specific generated values per bug or drug, set the `mo` and/or `ab` argument.
|
#' Generated values are based on the latest EUCAST guideline implemented in the [rsi_translation] data set. To create specific generated values per bug or drug, set the `mo` and/or `ab` argument.
|
||||||
#' @return class `<mic>` for [random_mic()] (see [as.mic()]) and class `<disk>` for [random_disk()] (see [as.disk()])
|
#' @return class `<mic>` for [random_mic()] (see [as.mic()]) and class `<disk>` for [random_disk()] (see [as.disk()])
|
||||||
@@ -55,19 +55,36 @@
|
|||||||
#' random_disk(100, "Klebsiella pneumoniae", "ampicillin") # range 11-17
|
#' random_disk(100, "Klebsiella pneumoniae", "ampicillin") # range 11-17
|
||||||
#' random_disk(100, "Streptococcus pneumoniae", "ampicillin") # range 12-27
|
#' random_disk(100, "Streptococcus pneumoniae", "ampicillin") # range 12-27
|
||||||
#' }
|
#' }
|
||||||
random_mic <- function(size, mo = NULL, ab = NULL, ...) {
|
random_mic <- function(size = NULL, mo = NULL, ab = NULL, ...) {
|
||||||
|
meet_criteria(size, allow_class = c("numeric", "integer"), has_length = 1, is_positive = TRUE, is_finite = TRUE, allow_NULL = TRUE)
|
||||||
|
meet_criteria(mo, allow_class = "character", has_length = 1, allow_NULL = TRUE)
|
||||||
|
meet_criteria(ab, allow_class = "character", has_length = 1, allow_NULL = TRUE)
|
||||||
|
if (is.null(size)) {
|
||||||
|
size <- NROW(get_current_data(arg_name = "size", call = -3))
|
||||||
|
}
|
||||||
random_exec("MIC", size = size, mo = mo, ab = ab)
|
random_exec("MIC", size = size, mo = mo, ab = ab)
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname random
|
#' @rdname random
|
||||||
#' @export
|
#' @export
|
||||||
random_disk <- function(size, mo = NULL, ab = NULL, ...) {
|
random_disk <- function(size = NULL, mo = NULL, ab = NULL, ...) {
|
||||||
|
meet_criteria(size, allow_class = c("numeric", "integer"), has_length = 1, is_positive = TRUE, is_finite = TRUE, allow_NULL = TRUE)
|
||||||
|
meet_criteria(mo, allow_class = "character", has_length = 1, allow_NULL = TRUE)
|
||||||
|
meet_criteria(ab, allow_class = "character", has_length = 1, allow_NULL = TRUE)
|
||||||
|
if (is.null(size)) {
|
||||||
|
size <- NROW(get_current_data(arg_name = "size", call = -3))
|
||||||
|
}
|
||||||
random_exec("DISK", size = size, mo = mo, ab = ab)
|
random_exec("DISK", size = size, mo = mo, ab = ab)
|
||||||
}
|
}
|
||||||
|
|
||||||
#' @rdname random
|
#' @rdname random
|
||||||
#' @export
|
#' @export
|
||||||
random_rsi <- function(size, prob_RSI = c(0.33, 0.33, 0.33), ...) {
|
random_rsi <- function(size = NULL, prob_RSI = c(0.33, 0.33, 0.33), ...) {
|
||||||
|
meet_criteria(size, allow_class = c("numeric", "integer"), has_length = 1, is_positive = TRUE, is_finite = TRUE, allow_NULL = TRUE)
|
||||||
|
meet_criteria(prob_RSI, allow_class = c("numeric", "integer"), has_length = 3)
|
||||||
|
if (is.null(size)) {
|
||||||
|
size <- NROW(get_current_data(arg_name = "size", call = -3))
|
||||||
|
}
|
||||||
sample(as.rsi(c("R", "S", "I")), size = size, replace = TRUE, prob = prob_RSI)
|
sample(as.rsi(c("R", "S", "I")), size = size, replace = TRUE, prob = prob_RSI)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -103,23 +120,22 @@ random_exec <- function(type, size, mo = NULL, ab = NULL) {
|
|||||||
warning_("No rows found that match ab '", ab, "', ignoring argument `ab`", call = FALSE)
|
warning_("No rows found that match ab '", ab, "', ignoring argument `ab`", call = FALSE)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (type == "MIC") {
|
if (type == "MIC") {
|
||||||
# all valid MIC levels
|
# set range
|
||||||
valid_range <- as.mic(levels(as.mic(1)))
|
mic_range <- c(0.001, 0.002, 0.005, 0.010, 0.025, 0.0625, 0.125, 0.250, 0.5, 1, 2, 4, 8, 16, 32, 64, 128, 256)
|
||||||
set_range_max <- max(df$breakpoint_R)
|
|
||||||
if (log(set_range_max, 2) %% 1 == 0) {
|
# get highest/lowest +/- random 1 to 3 higher factors of two
|
||||||
# return powers of 2
|
max_range <- mic_range[min(length(mic_range),
|
||||||
valid_range <- unique(as.double(valid_range))
|
which(mic_range == max(df$breakpoint_R)) + sample(c(1:3), 1))]
|
||||||
# add 1-3 higher MIC levels to set_range_max
|
min_range <- mic_range[max(1,
|
||||||
set_range_max <- 2 ^ (log(set_range_max, 2) + sample(c(1:3), 1))
|
which(mic_range == min(df$breakpoint_S)) - sample(c(1:3), 1))]
|
||||||
set_range <- as.mic(valid_range[log(valid_range, 2) %% 1 == 0 & valid_range <= set_range_max])
|
|
||||||
} else {
|
mic_range_new <- mic_range[mic_range <= max_range & mic_range >= min_range]
|
||||||
# no power of 2, return factors of 2 to left and right side
|
if (length(mic_range_new) == 0) {
|
||||||
valid_mics <- suppressWarnings(as.mic(set_range_max / (2 ^ c(-3:3))))
|
mic_range_new <- mic_range
|
||||||
set_range <- valid_mics[!is.na(valid_mics)]
|
|
||||||
}
|
}
|
||||||
out <- as.mic(sample(set_range, size = size, replace = TRUE))
|
out <- as.mic(sample(mic_range_new, size = size, replace = TRUE))
|
||||||
# 50% chance that lowest will get <= and highest will get >=
|
# 50% chance that lowest will get <= and highest will get >=
|
||||||
if (stats::runif(1) > 0.5) {
|
if (stats::runif(1) > 0.5) {
|
||||||
out[out == min(out)] <- paste0("<=", out[out == min(out)])
|
out[out == min(out)] <- paste0("<=", out[out == min(out)])
|
||||||
|
|||||||
@@ -23,10 +23,11 @@
|
|||||||
# how to conduct AMR data analysis: https://msberends.github.io/AMR/ #
|
# how to conduct AMR data analysis: https://msberends.github.io/AMR/ #
|
||||||
# ==================================================================== #
|
# ==================================================================== #
|
||||||
|
|
||||||
#' Predict antimicrobial resistance
|
#' Predict Antimicrobial Resistance
|
||||||
#'
|
#'
|
||||||
#' Create a prediction model to predict antimicrobial resistance for the next years on statistical solid ground. Standard errors (SE) will be returned as columns `se_min` and `se_max`. See *Examples* for a real live example.
|
#' Create a prediction model to predict antimicrobial resistance for the next years on statistical solid ground. Standard errors (SE) will be returned as columns `se_min` and `se_max`. See *Examples* for a real live example.
|
||||||
#' @inheritSection lifecycle Stable Lifecycle
|
#' @inheritSection lifecycle Stable Lifecycle
|
||||||
|
#' @param object model data to be plotted
|
||||||
#' @param col_ab column name of `x` containing antimicrobial interpretations (`"R"`, `"I"` and `"S"`)
|
#' @param col_ab column name of `x` containing antimicrobial interpretations (`"R"`, `"I"` and `"S"`)
|
||||||
#' @param col_date column name of the date, will be used to calculate years if this column doesn't consist of years already, defaults to the first column of with a date class
|
#' @param col_date column name of the date, will be used to calculate years if this column doesn't consist of years already, defaults to the first column of with a date class
|
||||||
#' @param year_min lowest year to use in the prediction model, dafaults to the lowest year in `col_date`
|
#' @param year_min lowest year to use in the prediction model, dafaults to the lowest year in `col_date`
|
||||||
@@ -99,9 +100,9 @@
|
|||||||
#' info = FALSE,
|
#' info = FALSE,
|
||||||
#' minimum = 15)
|
#' minimum = 15)
|
||||||
#'
|
#'
|
||||||
#' ggplot(data)
|
#' autoplot(data)
|
||||||
#'
|
#'
|
||||||
#' ggplot(as.data.frame(data),
|
#' ggplot(data,
|
||||||
#' aes(x = year)) +
|
#' aes(x = year)) +
|
||||||
#' geom_col(aes(y = value),
|
#' geom_col(aes(y = value),
|
||||||
#' fill = "grey75") +
|
#' fill = "grey75") +
|
||||||
@@ -143,7 +144,7 @@ resistance_predict <- function(x,
|
|||||||
meet_criteria(info, allow_class = "logical", has_length = 1)
|
meet_criteria(info, allow_class = "logical", has_length = 1)
|
||||||
|
|
||||||
stop_if(is.null(model), 'choose a regression model with the `model` argument, e.g. resistance_predict(..., model = "binomial")')
|
stop_if(is.null(model), 'choose a regression model with the `model` argument, e.g. resistance_predict(..., model = "binomial")')
|
||||||
|
|
||||||
dots <- unlist(list(...))
|
dots <- unlist(list(...))
|
||||||
if (length(dots) != 0) {
|
if (length(dots) != 0) {
|
||||||
# backwards compatibility with old arguments
|
# backwards compatibility with old arguments
|
||||||
@@ -321,7 +322,7 @@ plot.resistance_predict <- function(x, main = paste("Resistance Prediction of",
|
|||||||
} else {
|
} else {
|
||||||
ylab <- "%IR"
|
ylab <- "%IR"
|
||||||
}
|
}
|
||||||
|
|
||||||
plot(x = x$year,
|
plot(x = x$year,
|
||||||
y = x$value,
|
y = x$value,
|
||||||
ylim = c(0, 1),
|
ylim = c(0, 1),
|
||||||
@@ -351,20 +352,6 @@ plot.resistance_predict <- function(x, main = paste("Resistance Prediction of",
|
|||||||
col = "grey40")
|
col = "grey40")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#' @method ggplot resistance_predict
|
|
||||||
#' @rdname resistance_predict
|
|
||||||
# will be exported using s3_register() in R/zzz.R
|
|
||||||
ggplot.resistance_predict <- function(x,
|
|
||||||
main = paste("Resistance Prediction of", x_name),
|
|
||||||
ribbon = TRUE,
|
|
||||||
...) {
|
|
||||||
x_name <- paste0(ab_name(attributes(x)$ab), " (", attributes(x)$ab, ")")
|
|
||||||
meet_criteria(main, allow_class = "character", has_length = 1)
|
|
||||||
meet_criteria(ribbon, allow_class = "logical", has_length = 1)
|
|
||||||
ggplot_rsi_predict(x = x, main = main, ribbon = ribbon, ...)
|
|
||||||
}
|
|
||||||
|
|
||||||
#' @rdname resistance_predict
|
#' @rdname resistance_predict
|
||||||
#' @export
|
#' @export
|
||||||
ggplot_rsi_predict <- function(x,
|
ggplot_rsi_predict <- function(x,
|
||||||
@@ -407,3 +394,23 @@ ggplot_rsi_predict <- function(x,
|
|||||||
colour = "grey40")
|
colour = "grey40")
|
||||||
p
|
p
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#' @method autoplot resistance_predict
|
||||||
|
#' @rdname resistance_predict
|
||||||
|
# will be exported using s3_register() in R/zzz.R
|
||||||
|
autoplot.resistance_predict <- function(object,
|
||||||
|
main = paste("Resistance Prediction of", x_name),
|
||||||
|
ribbon = TRUE,
|
||||||
|
...) {
|
||||||
|
x_name <- paste0(ab_name(attributes(object)$ab), " (", attributes(object)$ab, ")")
|
||||||
|
meet_criteria(main, allow_class = "character", has_length = 1)
|
||||||
|
meet_criteria(ribbon, allow_class = "logical", has_length = 1)
|
||||||
|
ggplot_rsi_predict(x = object, main = main, ribbon = ribbon, ...)
|
||||||
|
}
|
||||||
|
|
||||||
|
#' @method fortify resistance_predict
|
||||||
|
#' @noRd
|
||||||
|
# will be exported using s3_register() in R/zzz.R
|
||||||
|
fortify.resistance_predict <- function(model, data, ...) {
|
||||||
|
as.data.frame(model)
|
||||||
|
}
|
||||||
|
|||||||
@@ -65,9 +65,9 @@
|
|||||||
#'
|
#'
|
||||||
#' ## Supported Guidelines
|
#' ## Supported Guidelines
|
||||||
#'
|
#'
|
||||||
#' For interpreting MIC values as well as disk diffusion diameters, currently supported guidelines to be used as input for the `guideline` argument are: `r vector_and(AMR::rsi_translation$guideline, quotes = TRUE, reverse = TRUE)`.
|
#' For interpreting MIC values as well as disk diffusion diameters, currently implemented guidelines are EUCAST (`r min(as.integer(gsub("[^0-9]", "", subset(rsi_translation, guideline %like% "EUCAST")$guideline)))`-`r max(as.integer(gsub("[^0-9]", "", subset(rsi_translation, guideline %like% "EUCAST")$guideline)))`) and CLSI (`r min(as.integer(gsub("[^0-9]", "", subset(rsi_translation, guideline %like% "CLSI")$guideline)))`-`r max(as.integer(gsub("[^0-9]", "", subset(rsi_translation, guideline %like% "CLSI")$guideline)))`).
|
||||||
#'
|
#'
|
||||||
#' Simply using `"CLSI"` or `"EUCAST"` as input will automatically select the latest version of that guideline. You can set your own data set using the `reference_data` argument. The `guideline` argument will then be ignored.
|
#' Thus, the `guideline` argument must be set to e.g., ``r paste0('"', subset(rsi_translation, guideline %like% "EUCAST")$guideline[1], '"')`` or ``r paste0('"', subset(rsi_translation, guideline %like% "CLSI")$guideline[1], '"')``. By simply using `"EUCAST"` (the default) or `"CLSI"` as input, the latest version of that guideline will automatically be selected. You can set your own data set using the `reference_data` argument. The `guideline` argument will then be ignored.
|
||||||
#'
|
#'
|
||||||
#' ## After Interpretation
|
#' ## After Interpretation
|
||||||
#'
|
#'
|
||||||
@@ -89,10 +89,10 @@
|
|||||||
#' A microorganism is categorised as *Resistant* when there is a high likelihood of therapeutic failure even when there is increased exposure. Exposure is a function of how the mode of administration, dose, dosing interval, infusion time, as well as distribution and excretion of the antimicrobial agent will influence the infecting organism at the site of infection.
|
#' A microorganism is categorised as *Resistant* when there is a high likelihood of therapeutic failure even when there is increased exposure. Exposure is a function of how the mode of administration, dose, dosing interval, infusion time, as well as distribution and excretion of the antimicrobial agent will influence the infecting organism at the site of infection.
|
||||||
#' - **S = Susceptible**\cr
|
#' - **S = Susceptible**\cr
|
||||||
#' A microorganism is categorised as *Susceptible, standard dosing regimen*, when there is a high likelihood of therapeutic success using a standard dosing regimen of the agent.
|
#' A microorganism is categorised as *Susceptible, standard dosing regimen*, when there is a high likelihood of therapeutic success using a standard dosing regimen of the agent.
|
||||||
#' - **I = Increased exposure, but still susceptible**\cr
|
#' - **I = Susceptible, Increased exposure**\cr
|
||||||
#' A microorganism is categorised as *Susceptible, Increased exposure* when there is a high likelihood of therapeutic success because exposure to the agent is increased by adjusting the dosing regimen or by its concentration at the site of infection.
|
#' A microorganism is categorised as *Susceptible, Increased exposure* when there is a high likelihood of therapeutic success because exposure to the agent is increased by adjusting the dosing regimen or by its concentration at the site of infection.
|
||||||
#'
|
#'
|
||||||
#' This AMR package honours this new insight. Use [susceptibility()] (equal to [proportion_SI()]) to determine antimicrobial susceptibility and [count_susceptible()] (equal to [count_SI()]) to count susceptible isolates.
|
#' This AMR package honours this (new) insight. Use [susceptibility()] (equal to [proportion_SI()]) to determine antimicrobial susceptibility and [count_susceptible()] (equal to [count_SI()]) to count susceptible isolates.
|
||||||
#' @return Ordered [factor] with new class `<rsi>`
|
#' @return Ordered [factor] with new class `<rsi>`
|
||||||
#' @aliases rsi
|
#' @aliases rsi
|
||||||
#' @export
|
#' @export
|
||||||
@@ -284,10 +284,25 @@ as.rsi.default <- function(x, ...) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
x <- as.character(unlist(x))
|
# trim leading and trailing spaces, new lines, etc.
|
||||||
|
x <- trimws2(as.character(unlist(x)))
|
||||||
x.bak <- x
|
x.bak <- x
|
||||||
|
|
||||||
na_before <- length(x[is.na(x) | x == ""])
|
na_before <- length(x[is.na(x) | x == ""])
|
||||||
|
|
||||||
|
# correct for translations
|
||||||
|
trans_R <- unlist(TRANSLATIONS[which(TRANSLATIONS$pattern == "Resistant"),
|
||||||
|
LANGUAGES_SUPPORTED[LANGUAGES_SUPPORTED %in% colnames(TRANSLATIONS)]])
|
||||||
|
trans_S <- unlist(TRANSLATIONS[which(TRANSLATIONS$pattern == "Susceptible"),
|
||||||
|
LANGUAGES_SUPPORTED[LANGUAGES_SUPPORTED %in% colnames(TRANSLATIONS)]])
|
||||||
|
trans_I <- unlist(TRANSLATIONS[which(TRANSLATIONS$pattern %in% c("Incr. exposure", "Susceptible, incr. exp.", "Intermediate")),
|
||||||
|
LANGUAGES_SUPPORTED[LANGUAGES_SUPPORTED %in% colnames(TRANSLATIONS)]])
|
||||||
|
x <- gsub(paste0(unique(trans_R[!is.na(trans_R)]), collapse = "|"), "R", x, ignore.case = TRUE)
|
||||||
|
x <- gsub(paste0(unique(trans_S[!is.na(trans_S)]), collapse = "|"), "S", x, ignore.case = TRUE)
|
||||||
|
x <- gsub(paste0(unique(trans_I[!is.na(trans_I)]), collapse = "|"), "I", x, ignore.case = TRUE)
|
||||||
|
# replace all English textual input
|
||||||
|
x[x %like% "([^a-z]|^)res(is(tant)?)?"] <- "R"
|
||||||
|
x[x %like% "([^a-z]|^)sus(cep(tible)?)?"] <- "S"
|
||||||
|
x[x %like% "([^a-z]|^)int(er(mediate)?)?|incr.*exp"] <- "I"
|
||||||
# remove all spaces
|
# remove all spaces
|
||||||
x <- gsub(" +", "", x)
|
x <- gsub(" +", "", x)
|
||||||
# remove all MIC-like values: numbers, operators and periods
|
# remove all MIC-like values: numbers, operators and periods
|
||||||
@@ -349,7 +364,7 @@ as.rsi.mic <- function(x,
|
|||||||
|
|
||||||
# for dplyr's across()
|
# for dplyr's across()
|
||||||
cur_column_dplyr <- import_fn("cur_column", "dplyr", error_on_fail = FALSE)
|
cur_column_dplyr <- import_fn("cur_column", "dplyr", error_on_fail = FALSE)
|
||||||
if (!is.null(cur_column_dplyr) && tryCatch(is.data.frame(get_current_data("ab", 0)), error = function(e) FALSE)) {
|
if (!is.null(cur_column_dplyr) && tryCatch(is.data.frame(get_current_data("ab", call = 0)), error = function(e) FALSE)) {
|
||||||
# try to get current column, which will only be available when in across()
|
# try to get current column, which will only be available when in across()
|
||||||
ab <- tryCatch(cur_column_dplyr(),
|
ab <- tryCatch(cur_column_dplyr(),
|
||||||
error = function(e) ab)
|
error = function(e) ab)
|
||||||
@@ -395,13 +410,18 @@ as.rsi.mic <- function(x,
|
|||||||
uti <- rep(uti, length(x))
|
uti <- rep(uti, length(x))
|
||||||
}
|
}
|
||||||
|
|
||||||
message_("=> Interpreting MIC values of ", ifelse(isTRUE(list(...)$is_data.frame), "column ", ""), "'", font_bold(ab), "' (",
|
agent_formatted <- paste0("'", font_bold(ab), "'")
|
||||||
ifelse(ab_coerced != ab, paste0(ab_coerced, ", "), ""),
|
agent_name <- ab_name(ab_coerced, tolower = TRUE, language = NULL)
|
||||||
ab_name(ab_coerced, tolower = TRUE), ")", mo_var_found,
|
if (generalise_antibiotic_name(ab) != generalise_antibiotic_name(agent_name)) {
|
||||||
|
agent_formatted <- paste0(agent_formatted, " (", ab_coerced, ", ", agent_name, ")")
|
||||||
|
}
|
||||||
|
message_("=> Interpreting MIC values of ", ifelse(isTRUE(list(...)$is_data.frame), "column ", ""),
|
||||||
|
agent_formatted,
|
||||||
|
mo_var_found,
|
||||||
" according to ", ifelse(identical(reference_data, AMR::rsi_translation),
|
" according to ", ifelse(identical(reference_data, AMR::rsi_translation),
|
||||||
font_bold(guideline_coerced),
|
font_bold(guideline_coerced),
|
||||||
"manually defined 'reference_data'"),
|
"manually defined 'reference_data'"),
|
||||||
" ... ",
|
"... ",
|
||||||
appendLF = FALSE,
|
appendLF = FALSE,
|
||||||
as_note = FALSE)
|
as_note = FALSE)
|
||||||
|
|
||||||
@@ -438,7 +458,7 @@ as.rsi.disk <- function(x,
|
|||||||
|
|
||||||
# for dplyr's across()
|
# for dplyr's across()
|
||||||
cur_column_dplyr <- import_fn("cur_column", "dplyr", error_on_fail = FALSE)
|
cur_column_dplyr <- import_fn("cur_column", "dplyr", error_on_fail = FALSE)
|
||||||
if (!is.null(cur_column_dplyr) && tryCatch(is.data.frame(get_current_data("ab", 0)), error = function(e) FALSE)) {
|
if (!is.null(cur_column_dplyr) && tryCatch(is.data.frame(get_current_data("ab", call = 0)), error = function(e) FALSE)) {
|
||||||
# try to get current column, which will only be available when in across()
|
# try to get current column, which will only be available when in across()
|
||||||
ab <- tryCatch(cur_column_dplyr(),
|
ab <- tryCatch(cur_column_dplyr(),
|
||||||
error = function(e) ab)
|
error = function(e) ab)
|
||||||
@@ -484,13 +504,18 @@ as.rsi.disk <- function(x,
|
|||||||
uti <- rep(uti, length(x))
|
uti <- rep(uti, length(x))
|
||||||
}
|
}
|
||||||
|
|
||||||
message_("=> Interpreting disk zones of ", ifelse(isTRUE(list(...)$is_data.frame), "column ", ""), "'", font_bold(ab), "' (",
|
agent_formatted <- paste0("'", font_bold(ab), "'")
|
||||||
ifelse(ab_coerced != ab, paste0(ab_coerced, ", "), ""),
|
agent_name <- ab_name(ab_coerced, tolower = TRUE, language = NULL)
|
||||||
ab_name(ab_coerced, tolower = TRUE), ")", mo_var_found,
|
if (generalise_antibiotic_name(ab) != generalise_antibiotic_name(agent_name)) {
|
||||||
|
agent_formatted <- paste0(agent_formatted, " (", ab_coerced, ", ", agent_name, ")")
|
||||||
|
}
|
||||||
|
message_("=> Interpreting disk zones of ", ifelse(isTRUE(list(...)$is_data.frame), "column ", ""),
|
||||||
|
agent_formatted,
|
||||||
|
mo_var_found,
|
||||||
" according to ", ifelse(identical(reference_data, AMR::rsi_translation),
|
" according to ", ifelse(identical(reference_data, AMR::rsi_translation),
|
||||||
font_bold(guideline_coerced),
|
font_bold(guideline_coerced),
|
||||||
"manually defined 'reference_data'"),
|
"manually defined 'reference_data'"),
|
||||||
" ... ",
|
"... ",
|
||||||
appendLF = FALSE,
|
appendLF = FALSE,
|
||||||
as_note = FALSE)
|
as_note = FALSE)
|
||||||
|
|
||||||
@@ -624,10 +649,9 @@ as.rsi.data.frame <- function(x,
|
|||||||
if (is.null(col_mo.bak)) {
|
if (is.null(col_mo.bak)) {
|
||||||
col_mo <- search_type_in_df(x = x, type = "mo")
|
col_mo <- search_type_in_df(x = x, type = "mo")
|
||||||
}
|
}
|
||||||
|
x_mo <- as.mo(x[, col_mo, drop = TRUE])
|
||||||
}
|
}
|
||||||
|
|
||||||
x_mo <- as.mo(x %pm>% pm_pull(col_mo))
|
|
||||||
|
|
||||||
for (i in seq_len(length(ab_cols))) {
|
for (i in seq_len(length(ab_cols))) {
|
||||||
if (types[i] == "mic") {
|
if (types[i] == "mic") {
|
||||||
x[, ab_cols[i]] <- as.rsi(x = x %pm>%
|
x[, ab_cols[i]] <- as.rsi(x = x %pm>%
|
||||||
@@ -658,11 +682,11 @@ as.rsi.data.frame <- function(x,
|
|||||||
show_message <- FALSE
|
show_message <- FALSE
|
||||||
ab <- ab_cols[i]
|
ab <- ab_cols[i]
|
||||||
ab_coerced <- suppressWarnings(as.ab(ab))
|
ab_coerced <- suppressWarnings(as.ab(ab))
|
||||||
if (!all(x[, ab_cols[i], drop = TRUE] %in% c("R", "S", "I"), na.rm = TRUE)) {
|
if (!all(x[, ab_cols[i], drop = TRUE] %in% c("R", "S", "I", NA), na.rm = TRUE)) {
|
||||||
show_message <- TRUE
|
show_message <- TRUE
|
||||||
# only print message if values are not already clean
|
# only print message if values are not already clean
|
||||||
message_("=> Cleaning values in column '", font_bold(ab), "' (",
|
message_("=> Cleaning values in column '", font_bold(ab), "' (",
|
||||||
ifelse(ab_coerced != ab, paste0(ab_coerced, ", "), ""),
|
ifelse(ab_coerced != toupper(ab), paste0(ab_coerced, ", "), ""),
|
||||||
ab_name(ab_coerced, tolower = TRUE), ")... ",
|
ab_name(ab_coerced, tolower = TRUE), ")... ",
|
||||||
appendLF = FALSE,
|
appendLF = FALSE,
|
||||||
as_note = FALSE)
|
as_note = FALSE)
|
||||||
@@ -670,7 +694,7 @@ as.rsi.data.frame <- function(x,
|
|||||||
show_message <- TRUE
|
show_message <- TRUE
|
||||||
# only print message if class not already set
|
# only print message if class not already set
|
||||||
message_("=> Assigning class <rsi> to already clean column '", font_bold(ab), "' (",
|
message_("=> Assigning class <rsi> to already clean column '", font_bold(ab), "' (",
|
||||||
ifelse(ab_coerced != ab, paste0(ab_coerced, ", "), ""),
|
ifelse(ab_coerced != toupper(ab), paste0(ab_coerced, ", "), ""),
|
||||||
ab_name(ab_coerced, tolower = TRUE), ")... ",
|
ab_name(ab_coerced, tolower = TRUE), ")... ",
|
||||||
appendLF = FALSE,
|
appendLF = FALSE,
|
||||||
as_note = FALSE)
|
as_note = FALSE)
|
||||||
@@ -750,7 +774,6 @@ exec_as.rsi <- function(method,
|
|||||||
if (guideline_coerced != guideline) {
|
if (guideline_coerced != guideline) {
|
||||||
if (message_not_thrown_before("as.rsi")) {
|
if (message_not_thrown_before("as.rsi")) {
|
||||||
message_("Using guideline ", font_bold(guideline_coerced), " as input for `guideline`.")
|
message_("Using guideline ", font_bold(guideline_coerced), " as input for `guideline`.")
|
||||||
remember_thrown_message("as.rsi")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -789,7 +812,6 @@ exec_as.rsi <- function(method,
|
|||||||
if (guideline_coerced %unlike% "EUCAST") {
|
if (guideline_coerced %unlike% "EUCAST") {
|
||||||
if (message_not_thrown_before("as.rsi2")) {
|
if (message_not_thrown_before("as.rsi2")) {
|
||||||
warning_("Using 'add_intrinsic_resistance' is only useful when using EUCAST guidelines, since the rules for intrinsic resistance are based on EUCAST.", call = FALSE)
|
warning_("Using 'add_intrinsic_resistance' is only useful when using EUCAST guidelines, since the rules for intrinsic resistance are based on EUCAST.", call = FALSE)
|
||||||
remember_thrown_message("as.rsi2")
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
new_rsi[i] <- "R"
|
new_rsi[i] <- "R"
|
||||||
@@ -854,7 +876,6 @@ exec_as.rsi <- function(method,
|
|||||||
message_("WARNING.", add_fn = list(font_yellow, font_bold), as_note = FALSE)
|
message_("WARNING.", add_fn = list(font_yellow, font_bold), as_note = FALSE)
|
||||||
if (message_not_thrown_before("as.rsi3")) {
|
if (message_not_thrown_before("as.rsi3")) {
|
||||||
warning_("Found intrinsic resistance in some bug/drug combinations, although it was not applied.\nUse `as.rsi(..., add_intrinsic_resistance = TRUE)` to apply it.", call = FALSE)
|
warning_("Found intrinsic resistance in some bug/drug combinations, although it was not applied.\nUse `as.rsi(..., add_intrinsic_resistance = TRUE)` to apply it.", call = FALSE)
|
||||||
remember_thrown_message("as.rsi3")
|
|
||||||
}
|
}
|
||||||
warned <- TRUE
|
warned <- TRUE
|
||||||
}
|
}
|
||||||
@@ -915,7 +936,7 @@ freq.rsi <- function(x, ...) {
|
|||||||
if (!is.na(ab)) {
|
if (!is.na(ab)) {
|
||||||
cleaner::freq.default(x = x, ...,
|
cleaner::freq.default(x = x, ...,
|
||||||
.add_header = list(
|
.add_header = list(
|
||||||
Drug = paste0(ab_name(ab, language = NULL), " (", ab, ", ", ab_atc(ab), ")"),
|
Drug = paste0(ab_name(ab, language = NULL), " (", ab, ", ", paste(ab_atc(ab), collapse = "/"), ")"),
|
||||||
`Drug group` = ab_group(ab, language = NULL),
|
`Drug group` = ab_group(ab, language = NULL),
|
||||||
`%SI` = percentage(susceptibility(x, minimum = 0, as_percent = FALSE),
|
`%SI` = percentage(susceptibility(x, minimum = 0, as_percent = FALSE),
|
||||||
digits = digits)))
|
digits = digits)))
|
||||||
@@ -1038,6 +1059,15 @@ unique.rsi <- function(x, incomparables = FALSE, ...) {
|
|||||||
y
|
y
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#' @method rep rsi
|
||||||
|
#' @export
|
||||||
|
#' @noRd
|
||||||
|
rep.rsi <- function(x, ...) {
|
||||||
|
y <- NextMethod()
|
||||||
|
attributes(y) <- attributes(x)
|
||||||
|
y
|
||||||
|
}
|
||||||
|
|
||||||
check_reference_data <- function(reference_data) {
|
check_reference_data <- function(reference_data) {
|
||||||
if (!identical(reference_data, AMR::rsi_translation)) {
|
if (!identical(reference_data, AMR::rsi_translation)) {
|
||||||
class_rsi <- vapply(FUN.VALUE = character(1), rsi_translation, function(x) paste0("<", class(x), ">", collapse = " and "))
|
class_rsi <- vapply(FUN.VALUE = character(1), rsi_translation, function(x) paste0("<", class(x), ">", collapse = " and "))
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ dots2vars <- function(...) {
|
|||||||
# this function is to give more informative output about
|
# this function is to give more informative output about
|
||||||
# variable names in count_* and proportion_* functions
|
# variable names in count_* and proportion_* functions
|
||||||
dots <- substitute(list(...))
|
dots <- substitute(list(...))
|
||||||
vector_and(as.character(dots)[2:length(dots)], quotes = FALSE)
|
as.character(dots)[2:length(dots)]
|
||||||
}
|
}
|
||||||
|
|
||||||
rsi_calc <- function(...,
|
rsi_calc <- function(...,
|
||||||
@@ -152,7 +152,6 @@ rsi_calc <- function(...,
|
|||||||
" your_data %>% mutate_if(is.rsi.eligible, as.rsi)\n",
|
" your_data %>% mutate_if(is.rsi.eligible, as.rsi)\n",
|
||||||
" your_data %>% mutate(across(where(is.rsi.eligible), as.rsi))",
|
" your_data %>% mutate(across(where(is.rsi.eligible), as.rsi))",
|
||||||
call = FALSE)
|
call = FALSE)
|
||||||
remember_thrown_message("rsi_calc")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -163,8 +162,30 @@ rsi_calc <- function(...,
|
|||||||
if (denominator < minimum) {
|
if (denominator < minimum) {
|
||||||
if (data_vars != "") {
|
if (data_vars != "") {
|
||||||
data_vars <- paste(" for", data_vars)
|
data_vars <- paste(" for", data_vars)
|
||||||
|
# also add group name if used in dplyr::group_by()
|
||||||
|
cur_group <- import_fn("cur_group", "dplyr", error_on_fail = FALSE)
|
||||||
|
if (!is.null(cur_group)) {
|
||||||
|
group_df <- tryCatch(cur_group(), error = function(e) data.frame())
|
||||||
|
if (NCOL(group_df) > 0) {
|
||||||
|
# transform factors to characters
|
||||||
|
group <- vapply(FUN.VALUE = character(1), group_df, function(x) {
|
||||||
|
if (is.numeric(x)) {
|
||||||
|
format(x)
|
||||||
|
} else if (is.logical(x)) {
|
||||||
|
as.character(x)
|
||||||
|
} else {
|
||||||
|
paste0('"', x, '"')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
data_vars <- paste0(data_vars, " in group: ", paste0(names(group), " = ", group, collapse = ", "))
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
warning_("Introducing NA: only ", denominator, " results available", data_vars, " (`minimum` = ", minimum, ").", call = FALSE)
|
warning_("Introducing NA: ",
|
||||||
|
ifelse(denominator == 0, "no", paste("only", denominator)),
|
||||||
|
" results available",
|
||||||
|
data_vars,
|
||||||
|
" (`minimum` = ", minimum, ").", call = FALSE)
|
||||||
fraction <- NA_real_
|
fraction <- NA_real_
|
||||||
} else {
|
} else {
|
||||||
fraction <- numerator / denominator
|
fraction <- numerator / denominator
|
||||||
@@ -206,7 +227,7 @@ rsi_calc_df <- function(type, # "proportion", "count" or "both"
|
|||||||
translate_ab <- get_translate_ab(translate_ab)
|
translate_ab <- get_translate_ab(translate_ab)
|
||||||
|
|
||||||
# select only groups and antibiotics
|
# select only groups and antibiotics
|
||||||
if (inherits(data, "grouped_df")) {
|
if (is_null_or_grouped_tbl(data)) {
|
||||||
data_has_groups <- TRUE
|
data_has_groups <- TRUE
|
||||||
groups <- setdiff(names(attributes(data)$groups), ".rows")
|
groups <- setdiff(names(attributes(data)$groups), ".rows")
|
||||||
data <- data[, c(groups, colnames(data)[vapply(FUN.VALUE = logical(1), data, is.rsi)]), drop = FALSE]
|
data <- data[, c(groups, colnames(data)[vapply(FUN.VALUE = logical(1), data, is.rsi)]), drop = FALSE]
|
||||||
|
|||||||
@@ -136,7 +136,7 @@ translate_AMR <- function(from,
|
|||||||
return(from)
|
return(from)
|
||||||
}
|
}
|
||||||
|
|
||||||
df_trans <- translations_file # internal data file
|
df_trans <- TRANSLATIONS # internal data file
|
||||||
from.bak <- from
|
from.bak <- from
|
||||||
from_unique <- unique(from)
|
from_unique <- unique(from)
|
||||||
from_unique_translated <- from_unique
|
from_unique_translated <- from_unique
|
||||||
|
|||||||
@@ -0,0 +1,74 @@
|
|||||||
|
# ==================================================================== #
|
||||||
|
# TITLE #
|
||||||
|
# Antimicrobial Resistance (AMR) Data Analysis for R #
|
||||||
|
# #
|
||||||
|
# SOURCE #
|
||||||
|
# https://github.com/msberends/AMR #
|
||||||
|
# #
|
||||||
|
# LICENCE #
|
||||||
|
# (c) 2018-2021 Berends MS, Luz CF et al. #
|
||||||
|
# Developed at the University of Groningen, the Netherlands, in #
|
||||||
|
# collaboration with non-profit organisations Certe Medical #
|
||||||
|
# Diagnostics & Advice, and University Medical Center Groningen. #
|
||||||
|
# #
|
||||||
|
# This R package is free software; you can freely use and distribute #
|
||||||
|
# it for both personal and commercial purposes under the terms of the #
|
||||||
|
# GNU General Public License version 2.0 (GNU GPL-2), as published by #
|
||||||
|
# the Free Software Foundation. #
|
||||||
|
# We created this package for both routine data analysis and academic #
|
||||||
|
# research and it was publicly released in the hope that it will be #
|
||||||
|
# useful, but it comes WITHOUT ANY WARRANTY OR LIABILITY. #
|
||||||
|
# #
|
||||||
|
# Visit our website for the full manual and a complete tutorial about #
|
||||||
|
# how to conduct AMR data analysis: https://msberends.github.io/AMR/ #
|
||||||
|
# ==================================================================== #
|
||||||
|
|
||||||
|
# These are all S3 implementations for the vctrs package,
|
||||||
|
# that is used internally by tidyverse packages such as dplyr.
|
||||||
|
# They are to convert AMR-specific classes to bare characters and integers.
|
||||||
|
# All of them will be exported using s3_register() in R/zzz.R when loading the package.
|
||||||
|
|
||||||
|
# S3: ab
|
||||||
|
vec_ptype2.character.ab <- function(x, y, ...) {
|
||||||
|
x
|
||||||
|
}
|
||||||
|
vec_ptype2.ab.character <- function(x, y, ...) {
|
||||||
|
y
|
||||||
|
}
|
||||||
|
vec_cast.character.ab <- function(x, to, ...) {
|
||||||
|
unclass(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
# S3: mo
|
||||||
|
vec_ptype2.character.mo <- function(x, y, ...) {
|
||||||
|
x
|
||||||
|
}
|
||||||
|
vec_ptype2.mo.character <- function(x, y, ...) {
|
||||||
|
y
|
||||||
|
}
|
||||||
|
vec_cast.character.mo <- function(x, to, ...) {
|
||||||
|
unclass(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
# S3: disk
|
||||||
|
vec_ptype2.integer.disk <- function(x, y, ...) {
|
||||||
|
x
|
||||||
|
}
|
||||||
|
vec_ptype2.disk.integer <- function(x, y, ...) {
|
||||||
|
y
|
||||||
|
}
|
||||||
|
vec_cast.integer.disk <- function(x, to, ...) {
|
||||||
|
unclass(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
# S3: ab_selector
|
||||||
|
# see https://github.com/tidyverse/dplyr/issues/5955 why this is required
|
||||||
|
vec_ptype2.character.ab_selector <- function(x, y, ...) {
|
||||||
|
x
|
||||||
|
}
|
||||||
|
vec_ptype2.ab_selector.character <- function(x, y, ...) {
|
||||||
|
y
|
||||||
|
}
|
||||||
|
vec_cast.character.ab_selector <- function(x, to, ...) {
|
||||||
|
unclass(x)
|
||||||
|
}
|
||||||
@@ -38,7 +38,7 @@ if (utf8_supported && !is_latex) {
|
|||||||
pkg_env$info_icon <- "i"
|
pkg_env$info_icon <- "i"
|
||||||
}
|
}
|
||||||
|
|
||||||
.onLoad <- function(libname, pkgname) {
|
.onLoad <- function(...) {
|
||||||
# Support for tibble headers (type_sum) and tibble columns content (pillar_shaft)
|
# Support for tibble headers (type_sum) and tibble columns content (pillar_shaft)
|
||||||
# without the need to depend on other packages. This was suggested by the
|
# without the need to depend on other packages. This was suggested by the
|
||||||
# developers of the vctrs package:
|
# developers of the vctrs package:
|
||||||
@@ -56,15 +56,29 @@ if (utf8_supported && !is_latex) {
|
|||||||
# Support for frequency tables from the cleaner package
|
# Support for frequency tables from the cleaner package
|
||||||
s3_register("cleaner::freq", "mo")
|
s3_register("cleaner::freq", "mo")
|
||||||
s3_register("cleaner::freq", "rsi")
|
s3_register("cleaner::freq", "rsi")
|
||||||
# Support from skim() from the skimr package
|
# Support for skim() from the skimr package
|
||||||
s3_register("skimr::get_skimmers", "mo")
|
s3_register("skimr::get_skimmers", "mo")
|
||||||
s3_register("skimr::get_skimmers", "rsi")
|
s3_register("skimr::get_skimmers", "rsi")
|
||||||
s3_register("skimr::get_skimmers", "mic")
|
s3_register("skimr::get_skimmers", "mic")
|
||||||
s3_register("skimr::get_skimmers", "disk")
|
s3_register("skimr::get_skimmers", "disk")
|
||||||
s3_register("ggplot2::ggplot", "rsi")
|
# Support for autoplot() from the ggplot2 package
|
||||||
s3_register("ggplot2::ggplot", "mic")
|
s3_register("ggplot2::autoplot", "rsi")
|
||||||
s3_register("ggplot2::ggplot", "disk")
|
s3_register("ggplot2::autoplot", "mic")
|
||||||
s3_register("ggplot2::ggplot", "resistance_predict")
|
s3_register("ggplot2::autoplot", "disk")
|
||||||
|
s3_register("ggplot2::autoplot", "resistance_predict")
|
||||||
|
# Support vctrs package for use in e.g. dplyr verbs
|
||||||
|
s3_register("vctrs::vec_ptype2", "ab.character")
|
||||||
|
s3_register("vctrs::vec_ptype2", "character.ab")
|
||||||
|
s3_register("vctrs::vec_cast", "character.ab")
|
||||||
|
s3_register("vctrs::vec_ptype2", "mo.character")
|
||||||
|
s3_register("vctrs::vec_ptype2", "character.mo")
|
||||||
|
s3_register("vctrs::vec_cast", "character.mo")
|
||||||
|
s3_register("vctrs::vec_ptype2", "ab_selector.character")
|
||||||
|
s3_register("vctrs::vec_ptype2", "character.ab_selector")
|
||||||
|
s3_register("vctrs::vec_cast", "character.ab_selector")
|
||||||
|
s3_register("vctrs::vec_ptype2", "disk.integer")
|
||||||
|
s3_register("vctrs::vec_ptype2", "integer.disk")
|
||||||
|
s3_register("vctrs::vec_cast", "integer.disk")
|
||||||
|
|
||||||
# if mo source exists, fire it up (see mo_source())
|
# if mo source exists, fire it up (see mo_source())
|
||||||
try({
|
try({
|
||||||
@@ -72,4 +86,81 @@ if (utf8_supported && !is_latex) {
|
|||||||
invisible(get_mo_source())
|
invisible(get_mo_source())
|
||||||
}
|
}
|
||||||
}, silent = TRUE)
|
}, silent = TRUE)
|
||||||
|
|
||||||
|
|
||||||
|
# reference data - they have additional columns compared to `antibiotics` and `microorganisms` to improve speed
|
||||||
|
# they cannott be part of R/sysdata.rda since CRAN thinks it would make the package too large (+3 MB)
|
||||||
|
assign(x = "AB_lookup", value = create_AB_lookup(), envir = asNamespace("AMR"))
|
||||||
|
assign(x = "MO_lookup", value = create_MO_lookup(), envir = asNamespace("AMR"))
|
||||||
|
assign(x = "MO.old_lookup", value = create_MO.old_lookup(), envir = asNamespace("AMR"))
|
||||||
|
# for mo_is_intrinsic_resistant() - saves a lot of time when executed on this vector
|
||||||
|
assign(x = "INTRINSIC_R", value = create_intr_resistance(), envir = asNamespace("AMR"))
|
||||||
|
|
||||||
|
# for building the website, only print first 5 rows of a data set
|
||||||
|
# if (Sys.getenv("IN_PKGDOWN") != "" && !interactive()) {
|
||||||
|
# ...
|
||||||
|
# }
|
||||||
|
}
|
||||||
|
|
||||||
|
# Helper functions --------------------------------------------------------
|
||||||
|
|
||||||
|
create_AB_lookup <- function() {
|
||||||
|
AB_lookup <- AMR::antibiotics
|
||||||
|
AB_lookup$generalised_name <- generalise_antibiotic_name(AB_lookup$name)
|
||||||
|
AB_lookup$generalised_synonyms <- lapply(AB_lookup$synonyms, generalise_antibiotic_name)
|
||||||
|
AB_lookup$generalised_abbreviations <- lapply(AB_lookup$abbreviations, generalise_antibiotic_name)
|
||||||
|
AB_lookup$generalised_loinc <- lapply(AB_lookup$loinc, generalise_antibiotic_name)
|
||||||
|
AB_lookup$generalised_all <- unname(lapply(as.list(as.data.frame(t(AB_lookup[,
|
||||||
|
c("ab", "atc", "cid", "name",
|
||||||
|
colnames(AB_lookup)[colnames(AB_lookup) %like% "generalised"]),
|
||||||
|
drop = FALSE]),
|
||||||
|
stringsAsFactors = FALSE)),
|
||||||
|
function(x) {
|
||||||
|
x <- generalise_antibiotic_name(unname(unlist(x)))
|
||||||
|
x[x != ""]
|
||||||
|
}))
|
||||||
|
AB_lookup
|
||||||
|
}
|
||||||
|
|
||||||
|
create_MO_lookup <- function() {
|
||||||
|
MO_lookup <- AMR::microorganisms
|
||||||
|
|
||||||
|
MO_lookup$kingdom_index <- NA_real_
|
||||||
|
MO_lookup[which(MO_lookup$kingdom == "Bacteria" | MO_lookup$mo == "UNKNOWN"), "kingdom_index"] <- 1
|
||||||
|
MO_lookup[which(MO_lookup$kingdom == "Fungi"), "kingdom_index"] <- 2
|
||||||
|
MO_lookup[which(MO_lookup$kingdom == "Protozoa"), "kingdom_index"] <- 3
|
||||||
|
MO_lookup[which(MO_lookup$kingdom == "Archaea"), "kingdom_index"] <- 4
|
||||||
|
# all the rest
|
||||||
|
MO_lookup[which(is.na(MO_lookup$kingdom_index)), "kingdom_index"] <- 5
|
||||||
|
|
||||||
|
# use this paste instead of `fullname` to work with Viridans Group Streptococci, etc.
|
||||||
|
MO_lookup$fullname_lower <- tolower(trimws(paste(MO_lookup$genus,
|
||||||
|
MO_lookup$species,
|
||||||
|
MO_lookup$subspecies)))
|
||||||
|
ind <- MO_lookup$genus == "" | grepl("^[(]unknown ", MO_lookup$fullname, perl = TRUE)
|
||||||
|
MO_lookup[ind, "fullname_lower"] <- tolower(MO_lookup[ind, "fullname"])
|
||||||
|
MO_lookup$fullname_lower <- trimws(gsub("[^.a-z0-9/ \\-]+", "", MO_lookup$fullname_lower, perl = TRUE))
|
||||||
|
|
||||||
|
# add a column with only "e coli" like combinations
|
||||||
|
MO_lookup$g_species <- gsub("^([a-z])[a-z]+ ([a-z]+) ?.*", "\\1 \\2", MO_lookup$fullname_lower, perl = TRUE)
|
||||||
|
|
||||||
|
# so arrange data on prevalence first, then kingdom, then full name
|
||||||
|
MO_lookup[order(MO_lookup$prevalence, MO_lookup$kingdom_index, MO_lookup$fullname_lower), ]
|
||||||
|
}
|
||||||
|
|
||||||
|
create_MO.old_lookup <- function() {
|
||||||
|
MO.old_lookup <- AMR::microorganisms.old
|
||||||
|
MO.old_lookup$fullname_lower <- trimws(gsub("[^.a-z0-9/ \\-]+", "", tolower(trimws(MO.old_lookup$fullname))))
|
||||||
|
|
||||||
|
# add a column with only "e coli"-like combinations
|
||||||
|
MO.old_lookup$g_species <- trimws(gsub("^([a-z])[a-z]+ ([a-z]+) ?.*", "\\1 \\2", MO.old_lookup$fullname_lower))
|
||||||
|
|
||||||
|
# so arrange data on prevalence first, then full name
|
||||||
|
MO.old_lookup[order(MO.old_lookup$prevalence, MO.old_lookup$fullname_lower), ]
|
||||||
|
}
|
||||||
|
|
||||||
|
create_intr_resistance <- function() {
|
||||||
|
# for mo_is_intrinsic_resistant() - saves a lot of time when executed on this vector
|
||||||
|
paste(AMR::microorganisms[match(AMR::intrinsic_resistant$microorganism, AMR::microorganisms$fullname), "mo", drop = TRUE],
|
||||||
|
AMR::antibiotics[match(AMR::intrinsic_resistant$antibiotic, AMR::antibiotics$name), "ab", drop = TRUE])
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,7 +23,13 @@ This is the development source of the `AMR` package for R. Not a developer? Then
|
|||||||
### How to get this package
|
### How to get this package
|
||||||
Please see [our website](https://msberends.github.io/AMR/#get-this-package).
|
Please see [our website](https://msberends.github.io/AMR/#get-this-package).
|
||||||
|
|
||||||
Bottom line: `install.packages("AMR", repos = "https://msberends.r-universe.dev")`
|
You can install or update the `AMR` package from CRAN using:
|
||||||
|
|
||||||
|
```r
|
||||||
|
install.packages("AMR")
|
||||||
|
```
|
||||||
|
|
||||||
|
It will be downloaded and installed automatically. For RStudio, click on the menu *Tools* > *Install Packages...* and then type in "AMR" and press <kbd>Install</kbd>.
|
||||||
|
|
||||||
### Copyright
|
### Copyright
|
||||||
|
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ development:
|
|||||||
|
|
||||||
news:
|
news:
|
||||||
one_page: true
|
one_page: true
|
||||||
|
cran_dates: true
|
||||||
|
|
||||||
navbar:
|
navbar:
|
||||||
title: "AMR (for R)"
|
title: "AMR (for R)"
|
||||||
@@ -88,32 +89,11 @@ navbar:
|
|||||||
- text: "Source Code"
|
- text: "Source Code"
|
||||||
icon: "fab fa-github"
|
icon: "fab fa-github"
|
||||||
href: "https://github.com/msberends/AMR"
|
href: "https://github.com/msberends/AMR"
|
||||||
- text: "Survey"
|
# - text: "Survey"
|
||||||
icon: "fa-clipboard-list"
|
# icon: "fa-clipboard-list"
|
||||||
href: "survey.html"
|
# href: "survey.html"
|
||||||
|
|
||||||
reference:
|
reference:
|
||||||
- title: "Background information on included data"
|
|
||||||
desc: >
|
|
||||||
Some pages about our package and its external sources. Be sure to read our [How To's](./../articles/index.html)
|
|
||||||
for more information about how to work with functions in this package.
|
|
||||||
contents:
|
|
||||||
- "`AMR`"
|
|
||||||
- "`example_isolates`"
|
|
||||||
- "`microorganisms`"
|
|
||||||
- "`microorganisms.codes`"
|
|
||||||
- "`microorganisms.old`"
|
|
||||||
- "`antibiotics`"
|
|
||||||
- "`intrinsic_resistant`"
|
|
||||||
- "`dosage`"
|
|
||||||
- "`catalogue_of_life`"
|
|
||||||
- "`catalogue_of_life_version`"
|
|
||||||
- "`WHOCC`"
|
|
||||||
- "`lifecycle`"
|
|
||||||
- "`example_isolates_unclean`"
|
|
||||||
- "`rsi_translation`"
|
|
||||||
- "`WHONET`"
|
|
||||||
|
|
||||||
- title: "Preparing data: microorganisms"
|
- title: "Preparing data: microorganisms"
|
||||||
desc: >
|
desc: >
|
||||||
These functions are meant to get taxonomically valid properties of microorganisms from any input.
|
These functions are meant to get taxonomically valid properties of microorganisms from any input.
|
||||||
@@ -164,6 +144,27 @@ reference:
|
|||||||
- "`antibiotic_class_selectors`"
|
- "`antibiotic_class_selectors`"
|
||||||
- "`resistance_predict`"
|
- "`resistance_predict`"
|
||||||
- "`guess_ab_col`"
|
- "`guess_ab_col`"
|
||||||
|
|
||||||
|
- title: "Background information on included data"
|
||||||
|
desc: >
|
||||||
|
Some pages about our package and its external sources. Be sure to read our [How To's](./../articles/index.html)
|
||||||
|
for more information about how to work with functions in this package.
|
||||||
|
contents:
|
||||||
|
- "`AMR`"
|
||||||
|
- "`example_isolates`"
|
||||||
|
- "`microorganisms`"
|
||||||
|
- "`microorganisms.codes`"
|
||||||
|
- "`microorganisms.old`"
|
||||||
|
- "`antibiotics`"
|
||||||
|
- "`intrinsic_resistant`"
|
||||||
|
- "`dosage`"
|
||||||
|
- "`catalogue_of_life`"
|
||||||
|
- "`catalogue_of_life_version`"
|
||||||
|
- "`WHOCC`"
|
||||||
|
- "`lifecycle`"
|
||||||
|
- "`example_isolates_unclean`"
|
||||||
|
- "`rsi_translation`"
|
||||||
|
- "`WHONET`"
|
||||||
|
|
||||||
- title: "Other: miscellaneous functions"
|
- title: "Other: miscellaneous functions"
|
||||||
desc: >
|
desc: >
|
||||||
@@ -214,8 +215,12 @@ authors:
|
|||||||
href: https://www.rug.nl/staff/c.glasner/
|
href: https://www.rug.nl/staff/c.glasner/
|
||||||
|
|
||||||
template:
|
template:
|
||||||
# this requires the 'preferably' package, https://github.com/amirmasoudabdol/preferably/
|
bootstrap: 3
|
||||||
# package: preferably
|
opengraph:
|
||||||
|
twitter:
|
||||||
|
creator: "@msberends"
|
||||||
|
site: "@univgroningen"
|
||||||
|
card: summary_large_image
|
||||||
assets: "pkgdown/logos" # use logos in this folder
|
assets: "pkgdown/logos" # use logos in this folder
|
||||||
params:
|
params:
|
||||||
noindex: false
|
noindex: false
|
||||||
|
|||||||
@@ -1,3 +1 @@
|
|||||||
* This package has been archived on 22 May 2021 because of errors in the dplyr package, causing the skimr package to fail: <https://github.com/tidyverse/dplyr/issues/5881>. This AMR package contains a fix around this error. Perhaps an idea for future development of CRAN to send an automated email to a maintainer with a warning that a package will be archived in due time?
|
* This package now has a data folder size of ~2.8 MB (this was ~5.6 MB), which will return a NOTE on R CMD CHECK. This package size is needed to provide users reference data for the complete taxonomy of microorganisms - one of the most important features of this package, following 15 previous releases of this package. All data sets were compressed using `compression = "xz"` to make them as small as possible.
|
||||||
|
|
||||||
* This package continuously has a tarball size of over 7 MB and an installation size of over 5 MB, which will return a NOTE on R CMD CHECK. This has been the case in the last releases as well. The package size is needed to offer users reference data for the complete taxonomy of microorganisms - one of the most important features of this package. This was written and explained in a manuscript that was accepted for publication in the Journal of Statistical Software earlier this year. We will add the paper as a vignette after publication in a next version. All data sets were compressed using `compression = "xz"` to make them as small as possible.
|
|
||||||
|
|||||||
@@ -24,12 +24,14 @@
|
|||||||
# ==================================================================== #
|
# ==================================================================== #
|
||||||
|
|
||||||
# some old R instances have trouble installing tinytest, so we ship it too
|
# some old R instances have trouble installing tinytest, so we ship it too
|
||||||
install.packages("data-raw/tinytest_1.2.4.10.tar.gz")
|
install.packages("data-raw/tinytest_1.3.1.tar.gz", dependencies = c("Depends", "Imports"))
|
||||||
install.packages("data-raw/AMR_latest.tar.gz", dependencies = FALSE)
|
install.packages("data-raw/AMR_latest.tar.gz", dependencies = FALSE)
|
||||||
install.packages("covr")
|
|
||||||
|
|
||||||
pkg_suggests <- gsub("[^a-zA-Z0-9]+", "", unlist(strsplit(packageDescription("AMR", fields = "Suggests"), ", ?")))
|
pkg_suggests <- gsub("[^a-zA-Z0-9]+", "",
|
||||||
cat("Packages listed in Suggests:", paste(pkg_suggests, collapse = ", "), "\n")
|
unlist(strsplit(unlist(packageDescription("AMR",
|
||||||
|
fields = c("Suggests", "Enhances"))),
|
||||||
|
split = ", ?")))
|
||||||
|
cat("Packages listed in Suggests/Enhances:", paste(pkg_suggests, collapse = ", "), "\n")
|
||||||
|
|
||||||
to_install <- pkg_suggests[!pkg_suggests %in% rownames(utils::installed.packages())]
|
to_install <- pkg_suggests[!pkg_suggests %in% rownames(utils::installed.packages())]
|
||||||
if (length(to_install) == 0) {
|
if (length(to_install) == 0) {
|
||||||
@@ -37,7 +39,11 @@ if (length(to_install) == 0) {
|
|||||||
}
|
}
|
||||||
for (i in seq_len(length(to_install))) {
|
for (i in seq_len(length(to_install))) {
|
||||||
cat("Installing package", to_install[i], "\n")
|
cat("Installing package", to_install[i], "\n")
|
||||||
tryCatch(install.packages(to_install[i], repos = "https://cran.rstudio.com/", dependencies = TRUE, quiet = TRUE),
|
tryCatch(install.packages(to_install[i],
|
||||||
|
type = ifelse(.Platform$OS.type == "unix", "source", "binary"),
|
||||||
|
repos = "https://cran.rstudio.com/",
|
||||||
|
dependencies = c("Depends", "Imports"),
|
||||||
|
quiet = FALSE),
|
||||||
# message = function(m) invisible(),
|
# message = function(m) invisible(),
|
||||||
warning = function(w) message(w$message),
|
warning = function(w) message(w$message),
|
||||||
error = function(e) message(e$message))
|
error = function(e) message(e$message))
|
||||||
@@ -49,9 +55,10 @@ if (length(to_update) == 0) {
|
|||||||
message("\nNothing to update\n")
|
message("\nNothing to update\n")
|
||||||
}
|
}
|
||||||
for (i in seq_len(length(to_update))) {
|
for (i in seq_len(length(to_update))) {
|
||||||
cat("Updating package", to_update[i], "\n")
|
cat("Updating package '", to_update[i], "' v", as.character(packageVersion(to_update[i])), "\n", sep = "")
|
||||||
tryCatch(update.packages(to_update[i], repos = "https://cran.rstudio.com/", ask = FALSE),
|
tryCatch(update.packages(to_update[i], repos = "https://cran.rstudio.com/", ask = FALSE),
|
||||||
# message = function(m) invisible(),
|
# message = function(m) invisible(),
|
||||||
warning = function(w) message(w$message),
|
warning = function(w) message(w$message),
|
||||||
error = function(e) message(e$message))
|
error = function(e) message(e$message))
|
||||||
|
cat("Updated to '", to_update[i], "' v", as.character(packageVersion(to_update[i])), "\n", sep = "")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,8 +31,48 @@ devtools::load_all(quiet = TRUE)
|
|||||||
|
|
||||||
old_globalenv <- ls(envir = globalenv())
|
old_globalenv <- ls(envir = globalenv())
|
||||||
|
|
||||||
# Helper functions --------------------------------------------------------
|
# Save internal data to R/sysdata.rda -------------------------------------
|
||||||
|
|
||||||
|
# See 'data-raw/eucast_rules.tsv' for the EUCAST reference file
|
||||||
|
EUCAST_RULES_DF <- utils::read.delim(file = "data-raw/eucast_rules.tsv",
|
||||||
|
skip = 10,
|
||||||
|
sep = "\t",
|
||||||
|
stringsAsFactors = FALSE,
|
||||||
|
header = TRUE,
|
||||||
|
strip.white = TRUE,
|
||||||
|
na = c(NA, "", NULL)) %>%
|
||||||
|
# take the order of the reference.rule_group column in the original data file
|
||||||
|
mutate(reference.rule_group = factor(reference.rule_group,
|
||||||
|
levels = unique(reference.rule_group),
|
||||||
|
ordered = TRUE),
|
||||||
|
sorting_rule = ifelse(grepl("^Table", reference.rule, ignore.case = TRUE), 1, 2)) %>%
|
||||||
|
arrange(reference.rule_group,
|
||||||
|
reference.version,
|
||||||
|
sorting_rule,
|
||||||
|
reference.rule) %>%
|
||||||
|
mutate(reference.rule_group = as.character(reference.rule_group)) %>%
|
||||||
|
select(-sorting_rule)
|
||||||
|
|
||||||
|
# Translations
|
||||||
|
TRANSLATIONS <- utils::read.delim(file = "data-raw/translations.tsv",
|
||||||
|
sep = "\t",
|
||||||
|
stringsAsFactors = FALSE,
|
||||||
|
header = TRUE,
|
||||||
|
blank.lines.skip = TRUE,
|
||||||
|
fill = TRUE,
|
||||||
|
strip.white = TRUE,
|
||||||
|
encoding = "UTF-8",
|
||||||
|
fileEncoding = "UTF-8",
|
||||||
|
na.strings = c(NA, "", NULL),
|
||||||
|
allowEscapes = TRUE, # else "\\1" will be imported as "\\\\1"
|
||||||
|
quote = "")
|
||||||
|
|
||||||
|
# for checking input in `language` argument in e.g. mo_*() and ab_*() functions
|
||||||
|
LANGUAGES_SUPPORTED <- sort(c("en", colnames(TRANSLATIONS)[nchar(colnames(TRANSLATIONS)) == 2]))
|
||||||
|
|
||||||
|
# EXAMPLE_ISOLATES <- readRDS("data-raw/example_isolates.rds")
|
||||||
|
|
||||||
|
# vectors of CoNS and CoPS, improves speed in as.mo()
|
||||||
create_species_cons_cops <- function(type = c("CoNS", "CoPS")) {
|
create_species_cons_cops <- function(type = c("CoNS", "CoPS")) {
|
||||||
# Determination of which staphylococcal species are CoNS/CoPS according to:
|
# Determination of which staphylococcal species are CoNS/CoPS according to:
|
||||||
# - Becker et al. 2014, PMID 25278577
|
# - Becker et al. 2014, PMID 25278577
|
||||||
@@ -70,186 +110,79 @@ create_species_cons_cops <- function(type = c("CoNS", "CoPS")) {
|
|||||||
"mo", drop = TRUE]
|
"mo", drop = TRUE]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
create_AB_lookup <- function() {
|
|
||||||
AB_lookup <- AMR::antibiotics
|
|
||||||
AB_lookup$generalised_name <- generalise_antibiotic_name(AB_lookup$name)
|
|
||||||
AB_lookup$generalised_synonyms <- lapply(AB_lookup$synonyms, generalise_antibiotic_name)
|
|
||||||
AB_lookup$generalised_abbreviations <- lapply(AB_lookup$abbreviations, generalise_antibiotic_name)
|
|
||||||
AB_lookup$generalised_loinc <- lapply(AB_lookup$loinc, generalise_antibiotic_name)
|
|
||||||
AB_lookup$generalised_all <- unname(lapply(as.list(as.data.frame(t(AB_lookup[,
|
|
||||||
c("ab", "atc", "cid", "name",
|
|
||||||
colnames(AB_lookup)[colnames(AB_lookup) %like% "generalised"]),
|
|
||||||
drop = FALSE]),
|
|
||||||
stringsAsFactors = FALSE)),
|
|
||||||
function(x) {
|
|
||||||
x <- generalise_antibiotic_name(unname(unlist(x)))
|
|
||||||
x[x != ""]
|
|
||||||
}))
|
|
||||||
AB_lookup
|
|
||||||
}
|
|
||||||
|
|
||||||
create_MO_lookup <- function() {
|
|
||||||
MO_lookup <- AMR::microorganisms
|
|
||||||
|
|
||||||
MO_lookup$kingdom_index <- NA_real_
|
|
||||||
MO_lookup[which(MO_lookup$kingdom == "Bacteria" | MO_lookup$mo == "UNKNOWN"), "kingdom_index"] <- 1
|
|
||||||
MO_lookup[which(MO_lookup$kingdom == "Fungi"), "kingdom_index"] <- 2
|
|
||||||
MO_lookup[which(MO_lookup$kingdom == "Protozoa"), "kingdom_index"] <- 3
|
|
||||||
MO_lookup[which(MO_lookup$kingdom == "Archaea"), "kingdom_index"] <- 4
|
|
||||||
# all the rest
|
|
||||||
MO_lookup[which(is.na(MO_lookup$kingdom_index)), "kingdom_index"] <- 5
|
|
||||||
|
|
||||||
# use this paste instead of `fullname` to work with Viridans Group Streptococci, etc.
|
|
||||||
MO_lookup$fullname_lower <- tolower(trimws(paste(MO_lookup$genus,
|
|
||||||
MO_lookup$species,
|
|
||||||
MO_lookup$subspecies)))
|
|
||||||
ind <- MO_lookup$genus == "" | grepl("^[(]unknown ", MO_lookup$fullname)
|
|
||||||
MO_lookup[ind, "fullname_lower"] <- tolower(MO_lookup[ind, "fullname"])
|
|
||||||
MO_lookup$fullname_lower <- trimws(gsub("[^.a-z0-9/ \\-]+", "", MO_lookup$fullname_lower, perl = TRUE))
|
|
||||||
|
|
||||||
# add a column with only "e coli" like combinations
|
|
||||||
MO_lookup$g_species <- gsub("^([a-z])[a-z]+ ([a-z]+) ?.*", "\\1 \\2", MO_lookup$fullname_lower, perl = TRUE)
|
|
||||||
|
|
||||||
# so arrange data on prevalence first, then kingdom, then full name
|
|
||||||
MO_lookup[order(MO_lookup$prevalence, MO_lookup$kingdom_index, MO_lookup$fullname_lower), ]
|
|
||||||
}
|
|
||||||
|
|
||||||
create_MO.old_lookup <- function() {
|
|
||||||
MO.old_lookup <- AMR::microorganisms.old
|
|
||||||
MO.old_lookup$fullname_lower <- trimws(gsub("[^.a-z0-9/ \\-]+", "", tolower(trimws(MO.old_lookup$fullname))))
|
|
||||||
|
|
||||||
# add a column with only "e coli"-like combinations
|
|
||||||
MO.old_lookup$g_species <- trimws(gsub("^([a-z])[a-z]+ ([a-z]+) ?.*", "\\1 \\2", MO.old_lookup$fullname_lower))
|
|
||||||
|
|
||||||
# so arrange data on prevalence first, then full name
|
|
||||||
MO.old_lookup[order(MO.old_lookup$prevalence, MO.old_lookup$fullname_lower), ]
|
|
||||||
}
|
|
||||||
|
|
||||||
create_intr_resistance <- function() {
|
|
||||||
# for mo_is_intrinsic_resistant() - saves a lot of time when executed on this vector
|
|
||||||
paste(AMR::microorganisms[match(AMR::intrinsic_resistant$microorganism, AMR::microorganisms$fullname), "mo", drop = TRUE],
|
|
||||||
AMR::antibiotics[match(AMR::intrinsic_resistant$antibiotic, AMR::antibiotics$name), "ab", drop = TRUE])
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Save internal data to R/sysdata.rda -------------------------------------
|
|
||||||
|
|
||||||
# See 'data-raw/eucast_rules.tsv' for the EUCAST reference file
|
|
||||||
eucast_rules_file <- utils::read.delim(file = "data-raw/eucast_rules.tsv",
|
|
||||||
skip = 10,
|
|
||||||
sep = "\t",
|
|
||||||
stringsAsFactors = FALSE,
|
|
||||||
header = TRUE,
|
|
||||||
strip.white = TRUE,
|
|
||||||
na = c(NA, "", NULL)) %>%
|
|
||||||
# take the order of the reference.rule_group column in the original data file
|
|
||||||
mutate(reference.rule_group = factor(reference.rule_group,
|
|
||||||
levels = unique(reference.rule_group),
|
|
||||||
ordered = TRUE),
|
|
||||||
sorting_rule = ifelse(grepl("^Table", reference.rule, ignore.case = TRUE), 1, 2)) %>%
|
|
||||||
arrange(reference.rule_group,
|
|
||||||
reference.version,
|
|
||||||
sorting_rule,
|
|
||||||
reference.rule) %>%
|
|
||||||
mutate(reference.rule_group = as.character(reference.rule_group)) %>%
|
|
||||||
select(-sorting_rule)
|
|
||||||
|
|
||||||
# Translations
|
|
||||||
translations_file <- utils::read.delim(file = "data-raw/translations.tsv",
|
|
||||||
sep = "\t",
|
|
||||||
stringsAsFactors = FALSE,
|
|
||||||
header = TRUE,
|
|
||||||
blank.lines.skip = TRUE,
|
|
||||||
fill = TRUE,
|
|
||||||
strip.white = TRUE,
|
|
||||||
encoding = "UTF-8",
|
|
||||||
fileEncoding = "UTF-8",
|
|
||||||
na.strings = c(NA, "", NULL),
|
|
||||||
allowEscapes = TRUE, # else "\\1" will be imported as "\\\\1"
|
|
||||||
quote = "")
|
|
||||||
|
|
||||||
# Old microorganism codes
|
|
||||||
microorganisms.translation <- readRDS("data-raw/microorganisms.translation.rds")
|
|
||||||
|
|
||||||
# for mo_is_intrinsic_resistant() - saves a lot of time when executed on this vector
|
|
||||||
INTRINSIC_R <- create_intr_resistance()
|
|
||||||
|
|
||||||
# for checking input in `language` argument in e.g. mo_*() and ab_*() functions
|
|
||||||
LANGUAGES_SUPPORTED <- sort(c("en", colnames(translations_file)[nchar(colnames(translations_file)) == 2]))
|
|
||||||
|
|
||||||
# vectors of CoNS and CoPS, improves speed in as.mo()
|
|
||||||
MO_CONS <- create_species_cons_cops("CoNS")
|
MO_CONS <- create_species_cons_cops("CoNS")
|
||||||
MO_COPS <- create_species_cons_cops("CoPS")
|
MO_COPS <- create_species_cons_cops("CoPS")
|
||||||
|
|
||||||
# reference data - they have additional columns compared to `antibiotics` and `microorganisms` to improve speed
|
|
||||||
AB_lookup <- create_AB_lookup()
|
|
||||||
MO_lookup <- create_MO_lookup()
|
|
||||||
MO.old_lookup <- create_MO.old_lookup()
|
|
||||||
|
|
||||||
# antibiotic groups
|
# antibiotic groups
|
||||||
# (these will also be used for eucast_rules() and understanding data-raw/eucast_rules.tsv)
|
# (these will also be used for eucast_rules() and understanding data-raw/eucast_rules.tsv)
|
||||||
globalenv_before_ab <- c(ls(envir = globalenv()), "globalenv_before_ab")
|
globalenv_before_ab <- c(ls(envir = globalenv()), "globalenv_before_ab")
|
||||||
AMINOGLYCOSIDES <- antibiotics %>% filter(group %like% "aminoglycoside") %>% pull(ab)
|
AB_AMINOGLYCOSIDES <- antibiotics %>% filter(group %like% "aminoglycoside") %>% pull(ab)
|
||||||
AMINOPENICILLINS <- as.ab(c("AMP", "AMX"))
|
AB_AMINOPENICILLINS <- as.ab(c("AMP", "AMX"))
|
||||||
CARBAPENEMS <- antibiotics %>% filter(group %like% "carbapenem") %>% pull(ab)
|
AB_ANTIFUNGALS <- AB_lookup %>% filter(group %like% "antifungal") %>% pull(ab)
|
||||||
CEPHALOSPORINS <- antibiotics %>% filter(group %like% "cephalosporin") %>% pull(ab)
|
AB_ANTIMYCOBACTERIALS <- AB_lookup %>% filter(group %like% "antimycobacterial") %>% pull(ab)
|
||||||
CEPHALOSPORINS_1ST <- antibiotics %>% filter(group %like% "cephalosporin.*1") %>% pull(ab)
|
AB_CARBAPENEMS <- antibiotics %>% filter(group %like% "carbapenem") %>% pull(ab)
|
||||||
CEPHALOSPORINS_2ND <- antibiotics %>% filter(group %like% "cephalosporin.*2") %>% pull(ab)
|
AB_CEPHALOSPORINS <- antibiotics %>% filter(group %like% "cephalosporin") %>% pull(ab)
|
||||||
CEPHALOSPORINS_3RD <- antibiotics %>% filter(group %like% "cephalosporin.*3") %>% pull(ab)
|
AB_CEPHALOSPORINS_1ST <- antibiotics %>% filter(group %like% "cephalosporin.*1") %>% pull(ab)
|
||||||
CEPHALOSPORINS_EXCEPT_CAZ <- CEPHALOSPORINS[CEPHALOSPORINS != "CAZ"]
|
AB_CEPHALOSPORINS_2ND <- antibiotics %>% filter(group %like% "cephalosporin.*2") %>% pull(ab)
|
||||||
FLUOROQUINOLONES <- antibiotics %>% filter(atc_group2 %like% "fluoroquinolone") %>% pull(ab)
|
AB_CEPHALOSPORINS_3RD <- antibiotics %>% filter(group %like% "cephalosporin.*3") %>% pull(ab)
|
||||||
LIPOGLYCOPEPTIDES <- as.ab(c("DAL", "ORI", "TLV")) # dalba/orita/tela
|
AB_CEPHALOSPORINS_4TH <- antibiotics %>% filter(group %like% "cephalosporin.*4") %>% pull(ab)
|
||||||
GLYCOPEPTIDES <- antibiotics %>% filter(group %like% "glycopeptide") %>% pull(ab)
|
AB_CEPHALOSPORINS_5TH <- antibiotics %>% filter(group %like% "cephalosporin.*5") %>% pull(ab)
|
||||||
GLYCOPEPTIDES_EXCEPT_LIPO <- GLYCOPEPTIDES[!GLYCOPEPTIDES %in% LIPOGLYCOPEPTIDES]
|
AB_CEPHALOSPORINS_EXCEPT_CAZ <- AB_CEPHALOSPORINS[AB_CEPHALOSPORINS != "CAZ"]
|
||||||
LINCOSAMIDES <- antibiotics %>% filter(atc_group2 %like% "lincosamide") %>% pull(ab) %>% c("PRL")
|
AB_FLUOROQUINOLONES <- antibiotics %>% filter(atc_group2 %like% "fluoroquinolone" | (group %like% "quinolone" & is.na(atc_group2))) %>% pull(ab)
|
||||||
MACROLIDES <- antibiotics %>% filter(atc_group2 %like% "macrolide") %>% pull(ab)
|
AB_GLYCOPEPTIDES <- antibiotics %>% filter(group %like% "glycopeptide") %>% pull(ab)
|
||||||
OXAZOLIDINONES <- antibiotics %>% filter(group %like% "oxazolidinone") %>% pull(ab)
|
AB_LIPOGLYCOPEPTIDES <- as.ab(c("DAL", "ORI", "TLV")) # dalba/orita/tela
|
||||||
PENICILLINS <- antibiotics %>% filter(group %like% "penicillin") %>% pull(ab)
|
AB_GLYCOPEPTIDES_EXCEPT_LIPO <- AB_GLYCOPEPTIDES[!AB_GLYCOPEPTIDES %in% AB_LIPOGLYCOPEPTIDES]
|
||||||
POLYMYXINS <- antibiotics %>% filter(group %like% "polymyxin") %>% pull(ab)
|
AB_LINCOSAMIDES <- antibiotics %>% filter(atc_group2 %like% "lincosamide" | (group %like% "lincosamide" & is.na(atc_group2))) %>% pull(ab)
|
||||||
STREPTOGRAMINS <- antibiotics %>% filter(atc_group2 %like% "streptogramin") %>% pull(ab)
|
AB_MACROLIDES <- antibiotics %>% filter(atc_group2 %like% "macrolide" | (group %like% "macrolide" & is.na(atc_group2))) %>% pull(ab)
|
||||||
TETRACYCLINES <- antibiotics %>% filter(atc_group2 %like% "tetracycline") %>% pull(ab)
|
AB_OXAZOLIDINONES <- antibiotics %>% filter(group %like% "oxazolidinone") %>% pull(ab)
|
||||||
TETRACYCLINES_EXCEPT_TGC <- TETRACYCLINES[TETRACYCLINES != "TGC"]
|
AB_PENICILLINS <- antibiotics %>% filter(group %like% "penicillin") %>% pull(ab)
|
||||||
UREIDOPENICILLINS <- as.ab(c("PIP", "TZP", "AZL", "MEZ"))
|
AB_POLYMYXINS <- antibiotics %>% filter(group %like% "polymyxin") %>% pull(ab)
|
||||||
BETALACTAMS <- c(PENICILLINS, CEPHALOSPORINS, CARBAPENEMS)
|
AB_QUINOLONES <- antibiotics %>% filter(group %like% "quinolone") %>% pull(ab)
|
||||||
|
AB_STREPTOGRAMINS <- antibiotics %>% filter(atc_group2 %like% "streptogramin") %>% pull(ab)
|
||||||
|
AB_TETRACYCLINES <- antibiotics %>% filter(group %like% "tetracycline") %>% pull(ab)
|
||||||
|
AB_TETRACYCLINES_EXCEPT_TGC <- AB_TETRACYCLINES[AB_TETRACYCLINES != "TGC"]
|
||||||
|
AB_TRIMETHOPRIMS <- antibiotics %>% filter(group %like% "trimethoprim") %>% pull(ab)
|
||||||
|
AB_UREIDOPENICILLINS <- as.ab(c("PIP", "TZP", "AZL", "MEZ"))
|
||||||
|
AB_BETALACTAMS <- c(AB_PENICILLINS, AB_CEPHALOSPORINS, AB_CARBAPENEMS)
|
||||||
|
# this will be used for documentation:
|
||||||
DEFINED_AB_GROUPS <- ls(envir = globalenv())
|
DEFINED_AB_GROUPS <- ls(envir = globalenv())
|
||||||
DEFINED_AB_GROUPS <- DEFINED_AB_GROUPS[!DEFINED_AB_GROUPS %in% globalenv_before_ab]
|
DEFINED_AB_GROUPS <- DEFINED_AB_GROUPS[!DEFINED_AB_GROUPS %in% globalenv_before_ab]
|
||||||
|
|
||||||
# Export to package as internal data ----
|
# Export to package as internal data ----
|
||||||
usethis::use_data(eucast_rules_file,
|
usethis::use_data(EUCAST_RULES_DF,
|
||||||
translations_file,
|
TRANSLATIONS,
|
||||||
microorganisms.translation,
|
|
||||||
INTRINSIC_R,
|
|
||||||
LANGUAGES_SUPPORTED,
|
LANGUAGES_SUPPORTED,
|
||||||
|
# EXAMPLE_ISOLATES,
|
||||||
MO_CONS,
|
MO_CONS,
|
||||||
MO_COPS,
|
MO_COPS,
|
||||||
AB_lookup,
|
AB_AMINOGLYCOSIDES,
|
||||||
MO_lookup,
|
AB_AMINOPENICILLINS,
|
||||||
MO.old_lookup,
|
AB_ANTIFUNGALS,
|
||||||
AMINOGLYCOSIDES,
|
AB_ANTIMYCOBACTERIALS,
|
||||||
AMINOPENICILLINS,
|
AB_CARBAPENEMS,
|
||||||
CARBAPENEMS,
|
AB_CEPHALOSPORINS,
|
||||||
CEPHALOSPORINS,
|
AB_CEPHALOSPORINS_1ST,
|
||||||
CEPHALOSPORINS_1ST,
|
AB_CEPHALOSPORINS_2ND,
|
||||||
CEPHALOSPORINS_2ND,
|
AB_CEPHALOSPORINS_3RD,
|
||||||
CEPHALOSPORINS_3RD,
|
AB_CEPHALOSPORINS_4TH,
|
||||||
CEPHALOSPORINS_EXCEPT_CAZ,
|
AB_CEPHALOSPORINS_5TH,
|
||||||
FLUOROQUINOLONES,
|
AB_CEPHALOSPORINS_EXCEPT_CAZ,
|
||||||
LIPOGLYCOPEPTIDES,
|
AB_FLUOROQUINOLONES,
|
||||||
GLYCOPEPTIDES,
|
AB_LIPOGLYCOPEPTIDES,
|
||||||
GLYCOPEPTIDES_EXCEPT_LIPO,
|
AB_GLYCOPEPTIDES,
|
||||||
LINCOSAMIDES,
|
AB_GLYCOPEPTIDES_EXCEPT_LIPO,
|
||||||
MACROLIDES,
|
AB_LINCOSAMIDES,
|
||||||
OXAZOLIDINONES,
|
AB_MACROLIDES,
|
||||||
PENICILLINS,
|
AB_OXAZOLIDINONES,
|
||||||
POLYMYXINS,
|
AB_PENICILLINS,
|
||||||
STREPTOGRAMINS,
|
AB_POLYMYXINS,
|
||||||
TETRACYCLINES,
|
AB_QUINOLONES,
|
||||||
TETRACYCLINES_EXCEPT_TGC,
|
AB_STREPTOGRAMINS,
|
||||||
UREIDOPENICILLINS,
|
AB_TETRACYCLINES,
|
||||||
BETALACTAMS,
|
AB_TETRACYCLINES_EXCEPT_TGC,
|
||||||
|
AB_TRIMETHOPRIMS,
|
||||||
|
AB_UREIDOPENICILLINS,
|
||||||
|
AB_BETALACTAMS,
|
||||||
DEFINED_AB_GROUPS,
|
DEFINED_AB_GROUPS,
|
||||||
internal = TRUE,
|
internal = TRUE,
|
||||||
overwrite = TRUE,
|
overwrite = TRUE,
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
f6b4a2325c4bf3a8d4da337c8cfa07be
|
9f708801889d2eaf974c6eb85c83a8e7
|
||||||
|
|||||||
@@ -1,511 +1,511 @@
|
|||||||
"ab" "atc" "cid" "name" "group" "atc_group1" "atc_group2" "abbreviations" "synonyms" "oral_ddd" "oral_units" "iv_ddd" "iv_units" "loinc"
|
"ab" "cid" "name" "group" "atc" "atc_group1" "atc_group2" "abbreviations" "synonyms" "oral_ddd" "oral_units" "iv_ddd" "iv_units" "loinc"
|
||||||
"AMA" "J04AA01" 4649 "4-aminosalicylic acid" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Aminosalicylic acid and derivatives" "" "c(\"aminopar\", \"aminosalicylic\", \"aminosalicylic acid\", \"aminosalyl\", \"aminox\", \"apacil\", \"deapasil\", \"entepas\", \"ferrosan\", \"gabbropas\", \"helipidyl\", \"hellipidyl\", \"neopasalate\", \"osacyl\", \"pamacyl\", \"pamisyl\", \"paramycin\", \"parasal\", \"parasalicil\", \"parasalindon\", \"pasalon\", \"pasara\", \"pascorbic\", \"pasdium\", \"paser granules\", \"paskalium\", \"pasmed\", \"pasnodia\", \"pasolac\", \"propasa\", \"rezipas\", \"teebacin\", \"wln: zr cq dvq\")" 12 "g" "character(0)"
|
"AMA" 4649 "4-aminosalicylic acid" "Antimycobacterials" "J04AA01" "Drugs for treatment of tuberculosis" "Aminosalicylic acid and derivatives" "" "c(\"aminopar\", \"aminosalicylic\", \"aminosalicylic acid\", \"aminosalyl\", \"aminox\", \"apacil\", \"deapasil\", \"entepas\", \"ferrosan\", \"gabbropas\", \"helipidyl\", \"hellipidyl\", \"neopasalate\", \"osacyl\", \"pamacyl\", \"pamisyl\", \"paramycin\", \"parasal\", \"parasalicil\", \"parasalindon\", \"pasalon\", \"pasara\", \"pascorbic\", \"pasdium\", \"paser granules\", \"paskalium\", \"pasmed\", \"pasnodia\", \"pasolac\", \"propasa\", \"rezipas\", \"teebacin\", \"wln: zr cq dvq\")" 12 "g" "character(0)"
|
||||||
"FCT" "D01AE21" 3366 "5-fluorocytosine" "Antifungals/antimycotics" "Antifungals for topical use" "Other antifungals for topical use" "c(\"5flc\", \"fcu\", \"fluo\", \"fluy\")" "c(\"alcobon\", \"ancobon\", \"ancotil\", \"ancotyl\", \"flucitosina\", \"flucystine\", \"flucytosin\", \"flucytosine\", \"flucytosinum\", \"flucytosone\", \"fluocytosine\", \"fluorcytosine\")" "c(\"10974-4\", \"23805-5\", \"25142-1\", \"25143-9\", \"3639-2\", \"46218-4\")"
|
"FCT" 3366 "5-fluorocytosine" "Antifungals/antimycotics" "D01AE21" "Antifungals for topical use" "Other antifungals for topical use" "c(\"5flc\", \"fcu\", \"fluo\", \"fluy\")" "c(\"alcobon\", \"ancobon\", \"ancotil\", \"ancotyl\", \"flucitosina\", \"flucystine\", \"flucytosin\", \"flucytosine\", \"flucytosinum\", \"flucytosone\", \"fluocytosine\", \"fluorcytosine\")" "c(\"10974-4\", \"23805-5\", \"25142-1\", \"25143-9\", \"3639-2\", \"46218-4\")"
|
||||||
"ACM" 6450012 "Acetylmidecamycin" "Macrolides/lincosamides" "" "" ""
|
"ACM" 6450012 "Acetylmidecamycin" "Macrolides/lincosamides" "" "" ""
|
||||||
"ASP" 49787020 "Acetylspiramycin" "Macrolides/lincosamides" "" "c(\"acetylspiramycin\", \"foromacidin b\", \"spiramycin ii\")" "character(0)"
|
"ASP" 49787020 "Acetylspiramycin" "Macrolides/lincosamides" "" "c(\"acetylspiramycin\", \"foromacidin b\", \"spiramycin ii\")" "character(0)"
|
||||||
"ALS" "J04BA03" 8954 "Aldesulfone sodium" "Other antibacterials" "Drugs for treatment of lepra" "Drugs for treatment of lepra" "" "c(\"adesulfone sodium\", \"aldapsone\", \"aldesulfona sodica\", \"aldesulfone\", \"aldesulfone sodique\", \"aldesulfone sodium\", \"diamidin\", \"diasone\", \"diasone sodium\", \"diazon\", \"novotrone\", \"sodium aldesulphone\", \"sodium sulfoxone\", \"sulfoxone sodium\")" 0.33 "g" "character(0)"
|
"ALS" 8954 "Aldesulfone sodium" "Other antibacterials" "J04BA03" "Drugs for treatment of lepra" "Drugs for treatment of lepra" "" "c(\"adesulfone sodium\", \"aldapsone\", \"aldesulfona sodica\", \"aldesulfone\", \"aldesulfone sodique\", \"aldesulfone sodium\", \"diamidin\", \"diasone\", \"diasone sodium\", \"diazon\", \"novotrone\", \"sodium aldesulphone\", \"sodium sulfoxone\", \"sulfoxone sodium\")" 0.33 "g" "character(0)"
|
||||||
"AMK" "J01GB06" 37768 "Amikacin" "Aminoglycosides" "Aminoglycoside antibacterials" "Other aminoglycosides" "c(\"ak\", \"ami\", \"amik\", \"amk\", \"an\")" "c(\"amicacin\", \"amikacillin\", \"amikacin\", \"amikacin base\", \"amikacin dihydrate\", \"amikacin sulfate\", \"amikacina\", \"amikacine\", \"amikacinum\", \"amikavet\", \"amikin\", \"amiklin\", \"amikozit\", \"amukin\", \"arikace\", \"briclin\", \"lukadin\", \"mikavir\", \"pierami\", \"potentox\")" 1 "g" "c(\"13546-7\", \"15098-7\", \"17798-0\", \"31097-9\", \"31098-7\", \"31099-5\", \"3319-1\", \"3320-9\", \"3321-7\", \"35669-1\", \"50802-8\", \"50803-6\", \"56628-1\", \"59378-0\", \"80972-3\")"
|
"AMK" 37768 "Amikacin" "Aminoglycosides" "c(\"D06AX12\", \"J01GB06\", \"S01AA21\")" "Aminoglycoside antibacterials" "Other aminoglycosides" "c(\"ak\", \"ami\", \"amik\", \"amk\", \"an\")" "c(\"amicacin\", \"amikacillin\", \"amikacin\", \"amikacin base\", \"amikacin dihydrate\", \"amikacin sulfate\", \"amikacina\", \"amikacine\", \"amikacinum\", \"amikavet\", \"amikin\", \"amiklin\", \"amikozit\", \"amukin\", \"arikace\", \"briclin\", \"lukadin\", \"mikavir\", \"pierami\", \"potentox\")" 1 "g" "c(\"13546-7\", \"15098-7\", \"17798-0\", \"31097-9\", \"31098-7\", \"31099-5\", \"3319-1\", \"3320-9\", \"3321-7\", \"35669-1\", \"50802-8\", \"50803-6\", \"56628-1\", \"59378-0\", \"80972-3\")"
|
||||||
"AKF" "Amikacin/fosfomycin" "Aminoglycosides" "" "" ""
|
"AKF" "Amikacin/fosfomycin" "Aminoglycosides" "" "" ""
|
||||||
"AMX" "J01CA04" 33613 "Amoxicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"ac\", \"amox\", \"amx\")" "c(\"actimoxi\", \"amoclen\", \"amolin\", \"amopen\", \"amopenixin\", \"amoxibiotic\", \"amoxicaps\", \"amoxicilina\", \"amoxicillin\", \"amoxicilline\", \"amoxicillinum\", \"amoxiden\", \"amoxil\", \"amoxivet\", \"amoxy\", \"amoxycillin\", \"anemolin\", \"aspenil\", \"biomox\", \"bristamox\", \"cemoxin\", \"clamoxyl\", \"delacillin\", \"dispermox\", \"efpenix\", \"flemoxin\", \"hiconcil\", \"histocillin\", \"hydroxyampicillin\", \"ibiamox\", \"imacillin\", \"lamoxy\", \"metafarma capsules\", \"metifarma capsules\", \"moxacin\", \"moxatag\", \"ospamox\", \"pamoxicillin\",
|
"AMX" 33613 "Amoxicillin" "Beta-lactams/penicillins" "J01CA04" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"ac\", \"amox\", \"amx\")" "c(\"actimoxi\", \"amoclen\", \"amolin\", \"amopen\", \"amopenixin\", \"amoxibiotic\", \"amoxicaps\", \"amoxicilina\", \"amoxicillin\", \"amoxicilline\", \"amoxicillinum\", \"amoxiden\", \"amoxil\", \"amoxivet\", \"amoxy\", \"amoxycillin\", \"anemolin\", \"aspenil\", \"biomox\", \"bristamox\", \"cemoxin\", \"clamoxyl\", \"delacillin\", \"dispermox\", \"efpenix\", \"flemoxin\", \"hiconcil\", \"histocillin\", \"hydroxyampicillin\", \"ibiamox\", \"imacillin\", \"lamoxy\", \"metafarma capsules\", \"metifarma capsules\", \"moxacin\", \"moxatag\", \"ospamox\", \"pamoxicillin\",
|
||||||
\"piramox\", \"robamox\", \"sawamox pm\", \"tolodina\", \"unicillin\", \"utimox\", \"vetramox\")" 1.5 "g" 3 "g" "c(\"16365-9\", \"25274-2\", \"3344-9\", \"80133-2\")"
|
\"piramox\", \"robamox\", \"sawamox pm\", \"tolodina\", \"unicillin\", \"utimox\", \"vetramox\")" 1.5 "g" 3 "g" "c(\"16365-9\", \"25274-2\", \"3344-9\", \"80133-2\")"
|
||||||
"AMC" "J01CR02" 23665637 "Amoxicillin/clavulanic acid" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Combinations of penicillins, incl. beta-lactamase inhibitors" "c(\"a/c\", \"amcl\", \"aml\", \"aug\", \"xl\")" "c(\"amocla\", \"amoclan\", \"amoclav\", \"amoxsiklav\", \"augmentan\", \"augmentin\", \"augmentin xr\", \"augmentine\", \"auspilic\", \"clamentin\", \"clamobit\", \"clavamox\", \"clavinex\", \"clavoxilin plus\", \"clavulin\", \"clavumox\", \"coamoxiclav\", \"eumetinex\", \"kmoxilin\", \"spectramox\", \"spektramox\", \"viaclav\", \"xiclav\")" 1.5 "g" 3 "g" "character(0)"
|
"AMC" 23665637 "Amoxicillin/clavulanic acid" "Beta-lactams/penicillins" "J01CR02" "Beta-lactam antibacterials, penicillins" "Combinations of penicillins, incl. beta-lactamase inhibitors" "c(\"a/c\", \"amcl\", \"aml\", \"aug\", \"xl\")" "c(\"amocla\", \"amoclan\", \"amoclav\", \"amoxsiklav\", \"augmentan\", \"augmentin\", \"augmentin xr\", \"augmentine\", \"auspilic\", \"clamentin\", \"clamobit\", \"clavamox\", \"clavinex\", \"clavoxilin plus\", \"clavulin\", \"clavumox\", \"coamoxiclav\", \"eumetinex\", \"kmoxilin\", \"spectramox\", \"spektramox\", \"viaclav\", \"xiclav\")" 1.5 "g" 3 "g" "character(0)"
|
||||||
"AXS" 465441 "Amoxicillin/sulbactam" "Beta-lactams/penicillins" "" "" ""
|
"AXS" 465441 "Amoxicillin/sulbactam" "Beta-lactams/penicillins" "" "" ""
|
||||||
"AMB" "J02AA01" 5280965 "Amphotericin B" "Antifungals/antimycotics" "Antimycotics for systemic use" "Antibiotics" "c(\"amf\", \"amfb\", \"amph\")" "c(\"abelcet\", \"abelecet\", \"ambisome\", \"amfotericina b\", \"amphocin\", \"amphomoronal\", \"amphortericin b\", \"amphotec\", \"amphotericin\", \"amphotericin b\", \"amphotericine b\", \"amphotericinum b\", \"amphozone\", \"anfotericine b\", \"fungilin\", \"fungisome\", \"fungisone\", \"fungizone\", \"halizon\")" 35 "mg" "c(\"16370-9\", \"3353-0\", \"3354-8\", \"40707-2\", \"40757-7\", \"49859-2\")"
|
"AMB" 5280965 "Amphotericin B" "Antifungals/antimycotics" "c(\"A01AB04\", \"A07AA07\", \"G01AA03\", \"J02AA01\")" "Antimycotics for systemic use" "Antibiotics" "c(\"amf\", \"amfb\", \"amph\")" "c(\"abelcet\", \"abelecet\", \"ambisome\", \"amfotericina b\", \"amphocin\", \"amphomoronal\", \"amphortericin b\", \"amphotec\", \"amphotericin\", \"amphotericin b\", \"amphotericine b\", \"amphotericinum b\", \"amphozone\", \"anfotericine b\", \"fungilin\", \"fungisome\", \"fungisone\", \"fungizone\", \"halizon\")" 40 "mg" 35 "mg" "c(\"16370-9\", \"3353-0\", \"3354-8\", \"40707-2\", \"40757-7\", \"49859-2\")"
|
||||||
"AMH" "Amphotericin B-high" "Aminoglycosides" "c(\"amfo b high\", \"amhl\", \"ampho b high\", \"amphotericin high\")" "" ""
|
"AMH" "Amphotericin B-high" "Aminoglycosides" "c(\"amfo b high\", \"amhl\", \"ampho b high\", \"amphotericin high\")" "" ""
|
||||||
"AMP" "J01CA01" 6249 "Ampicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"am\", \"amp\", \"ampi\")" "c(\"acillin\", \"adobacillin\", \"amblosin\", \"amcill\", \"amfipen\", \"amfipen v\", \"amipenix s\", \"ampichel\", \"ampicil\", \"ampicilina\", \"ampicillin\", \"ampicillin a\", \"ampicillin acid\", \"ampicillin anhydrate\", \"ampicillin anhydrous\", \"ampicillin base\", \"ampicillin sodium\", \"ampicillina\", \"ampicilline\", \"ampicillinum\", \"ampicin\", \"ampifarm\", \"ampikel\", \"ampimed\", \"ampipenin\", \"ampiscel\", \"ampisyn\", \"ampivax\", \"ampivet\", \"amplacilina\", \"amplin\", \"amplipenyl\", \"amplisom\", \"amplital\", \"anhydrous ampicillin\", \"austrapen\",
|
"AMP" 6249 "Ampicillin" "Beta-lactams/penicillins" "c(\"J01CA01\", \"S01AA19\")" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"am\", \"amp\", \"ampi\")" "c(\"acillin\", \"adobacillin\", \"amblosin\", \"amcill\", \"amfipen\", \"amfipen v\", \"amipenix s\", \"ampichel\", \"ampicil\", \"ampicilina\", \"ampicillin\", \"ampicillin a\", \"ampicillin acid\", \"ampicillin anhydrate\", \"ampicillin anhydrous\", \"ampicillin base\", \"ampicillin sodium\", \"ampicillina\", \"ampicilline\", \"ampicillinum\", \"ampicin\", \"ampifarm\", \"ampikel\", \"ampimed\", \"ampipenin\", \"ampiscel\", \"ampisyn\", \"ampivax\", \"ampivet\", \"amplacilina\", \"amplin\", \"amplipenyl\", \"amplisom\", \"amplital\", \"anhydrous ampicillin\", \"austrapen\",
|
||||||
\"binotal\", \"bonapicillin\", \"britacil\", \"campicillin\", \"copharcilin\", \"delcillin\", \"deripen\", \"divercillin\", \"doktacillin\", \"duphacillin\", \"grampenil\", \"guicitrina\", \"guicitrine\", \"lifeampil\", \"marcillin\", \"morepen\", \"norobrittin\", \"nuvapen\", \"olin kid\", \"omnipen\", \"orbicilina\", \"pen a oral\", \"pen ampil\", \"penbristol\", \"penbritin\", \"penbritin paediatric\", \"penbritin syrup\", \"penbrock\", \"penicline\", \"penimic\", \"pensyn\", \"pentrex\", \"pentrexl\", \"pentrexyl\", \"pentritin\", \"pfizerpen a\", \"polycillin\", \"polyflex\",
|
\"binotal\", \"bonapicillin\", \"britacil\", \"campicillin\", \"copharcilin\", \"delcillin\", \"deripen\", \"divercillin\", \"doktacillin\", \"duphacillin\", \"grampenil\", \"guicitrina\", \"guicitrine\", \"lifeampil\", \"marcillin\", \"morepen\", \"norobrittin\", \"nuvapen\", \"olin kid\", \"omnipen\", \"orbicilina\", \"pen a oral\", \"pen ampil\", \"penbristol\", \"penbritin\", \"penbritin paediatric\", \"penbritin syrup\", \"penbrock\", \"penicline\", \"penimic\", \"pensyn\", \"pentrex\", \"pentrexl\", \"pentrexyl\", \"pentritin\", \"pfizerpen a\", \"polycillin\", \"polyflex\",
|
||||||
\"ponecil\", \"princillin\", \"principen\", \"qidamp\", \"racenacillin\", \"rosampline\", \"roscillin\", \"semicillin\", \"semicillin r\", \"servicillin\", \"sumipanto\", \"synpenin\", \"texcillin\", \"tokiocillin\", \"tolomol\", \"totacillin\", \"totalciclina\", \"totapen\", \"trifacilina\", \"ukapen\", \"ultrabion\", \"ultrabron\", \"vampen\", \"viccillin\", \"viccillin s\", \"vidocillin\", \"wypicil\")" 2 "g" 6 "g" "c(\"21066-6\", \"3355-5\", \"33562-0\", \"33919-2\", \"43883-8\", \"43884-6\", \"87604-5\")"
|
\"ponecil\", \"princillin\", \"principen\", \"qidamp\", \"racenacillin\", \"rosampline\", \"roscillin\", \"semicillin\", \"semicillin r\", \"servicillin\", \"sumipanto\", \"synpenin\", \"texcillin\", \"tokiocillin\", \"tolomol\", \"totacillin\", \"totalciclina\", \"totapen\", \"trifacilina\", \"ukapen\", \"ultrabion\", \"ultrabron\", \"vampen\", \"viccillin\", \"viccillin s\", \"vidocillin\", \"wypicil\")" 2 "g" 6 "g" "c(\"21066-6\", \"3355-5\", \"33562-0\", \"33919-2\", \"43883-8\", \"43884-6\", \"87604-5\")"
|
||||||
"SAM" "J01CR01" 119561 "Ampicillin/sulbactam" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Combinations of penicillins, incl. beta-lactamase inhibitors" "c(\"a/s\", \"ab\", \"ams\", \"amsu\", \"apsu\", \"sam\")" "" 6 "g" ""
|
"SAM" 119561 "Ampicillin/sulbactam" "Beta-lactams/penicillins" "J01CR01" "Beta-lactam antibacterials, penicillins" "Combinations of penicillins, incl. beta-lactamase inhibitors" "c(\"a/s\", \"ab\", \"ams\", \"amsu\", \"apsu\", \"sam\")" "" 6 "g" ""
|
||||||
"AMR" 73341 "Amprolium" "Other antibacterials" "" "c(\"amprocidum\", \"amprolio\", \"amprolium\", \"amprovine\")" "character(0)"
|
"AMR" 73341 "Amprolium" "Other antibacterials" "" "c(\"amprocidum\", \"amprolio\", \"amprolium\", \"amprovine\")" "character(0)"
|
||||||
"ANI" "J02AX06" 166548 "Anidulafungin" "Antifungals/antimycotics" "Antimycotics for systemic use" "Other antimycotics for systemic use" "anid" "c(\"anidulafungin\", \"anidulafungina\", \"anidulafungine\", \"anidulafunginum\", \"ecalta\", \"eraxis\")" 0.1 "g" "58420-1"
|
"ANI" 166548 "Anidulafungin" "Antifungals/antimycotics" "J02AX06" "Antimycotics for systemic use" "Other antimycotics for systemic use" "anid" "c(\"anidulafungin\", \"anidulafungina\", \"anidulafungine\", \"anidulafunginum\", \"ecalta\", \"eraxis\")" 0.1 "g" "58420-1"
|
||||||
"APL" 6602341 "Apalcillin" "Beta-lactams/penicillins" "" "c(\"apalcilina\", \"apalcillin\", \"apalcilline\", \"apalcillinum\")" "character(0)"
|
"APL" 6602341 "Apalcillin" "Beta-lactams/penicillins" "" "c(\"apalcilina\", \"apalcillin\", \"apalcilline\", \"apalcillinum\")" "character(0)"
|
||||||
"APR" 3081545 "Apramycin" "Aminoglycosides" "" "c(\"ambylan\", \"apralan\", \"apramicina\", \"apramycin\", \"apramycine\", \"apramycinum\", \"nebramycin ii\")" "character(0)"
|
"APR" 3081545 "Apramycin" "Aminoglycosides" "" "c(\"ambylan\", \"apralan\", \"apramicina\", \"apramycin\", \"apramycine\", \"apramycinum\", \"nebramycin ii\")" "character(0)"
|
||||||
"ARB" 68682 "Arbekacin" "Aminoglycosides" "" "c(\"arbekacin\", \"arbekacina\", \"arbekacine\", \"arbekacini sulfas\", \"arbekacinum\", \"habekacin\", \"haberacin\")" "character(0)"
|
"ARB" 68682 "Arbekacin" "Aminoglycosides" "J01GB12" "" "c(\"arbekacin\", \"arbekacina\", \"arbekacine\", \"arbekacini sulfas\", \"arbekacinum\", \"habekacin\", \"haberacin\")" 0.2 "g" "character(0)"
|
||||||
"APX" 71961 "Aspoxicillin" "Beta-lactams/penicillins" "" "c(\"aspoxicilina\", \"aspoxicillan\", \"aspoxicillin\", \"aspoxicilline\", \"aspoxicillinum\")" "character(0)"
|
"APX" 71961 "Aspoxicillin" "Beta-lactams/penicillins" "J01CA19" "" "c(\"aspoxicilina\", \"aspoxicillan\", \"aspoxicillin\", \"aspoxicilline\", \"aspoxicillinum\")" 4 "g" "character(0)"
|
||||||
"AST" 5284517 "Astromicin" "Aminoglycosides" "" "c(\"astromicin\", \"astromicin a\", \"astromicina\", \"astromicine\", \"astromicinum\", \"fortimicin a\")" "character(0)"
|
"AST" 5284517 "Astromicin" "Aminoglycosides" "" "c(\"astromicin\", \"astromicin a\", \"astromicina\", \"astromicine\", \"astromicinum\", \"fortimicin a\")" "character(0)"
|
||||||
"AVB" 9835049 "Avibactam" "Beta-lactams/penicillins" "" "c(\"avibactam\", \"avibactam free acid\")" "character(0)"
|
"AVB" 9835049 "Avibactam" "Beta-lactams/penicillins" "" "c(\"avibactam\", \"avibactam free acid\")" "character(0)"
|
||||||
"AVI" 71674 "Avilamycin" "Other antibacterials" "" "c(\"avilamycin\", \"avilamycina\", \"avilamycine\", \"avilamycinum\", \"surmax\")" "character(0)"
|
"AVI" 71674 "Avilamycin" "Other antibacterials" "" "c(\"avilamycin\", \"avilamycina\", \"avilamycine\", \"avilamycinum\", \"surmax\")" "character(0)"
|
||||||
"AVO" 16131159 "Avoparcin" "Glycopeptides" "" "" ""
|
"AVO" 16131159 "Avoparcin" "Glycopeptides" "" "" ""
|
||||||
"AZD" "J01CE04" 15574941 "Azidocillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "" "c(\"azidocilina\", \"azidocillin\", \"azidocillina\", \"azidocilline\", \"azidocillinum\")" 1.5 "g" "character(0)"
|
"AZD" 15574941 "Azidocillin" "Beta-lactams/penicillins" "J01CE04" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "" "c(\"azidocilina\", \"azidocillin\", \"azidocillina\", \"azidocilline\", \"azidocillinum\")" 1.5 "g" "character(0)"
|
||||||
"AZM" "J01FA10" 447043 "Azithromycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Macrolides" "c(\"az\", \"azi\", \"azit\", \"azm\")" "c(\"aritromicina\", \"azasite\", \"azenil\", \"azifast\", \"azigram\", \"azimakrol\", \"azithramycine\", \"azithromycin\", \"azithromycine\", \"azithromycinum\", \"azitrocin\", \"azitromax\", \"azitromicina\", \"azitromicine\", \"azitromin\", \"aziwok\", \"aztrin\", \"azyter\", \"azythromycin\", \"hemomycin\", \"misultina\", \"mixoterin\", \"setron\", \"sumamed\", \"tromix\", \"trulimax\", \"zentavion\", \"zithrax\", \"zithromac\", \"zithromax\", \"zithromax iv\", \"zithromycin\", \"zitrim\", \"zitromax\", \"zitrotek\", \"zmax sr\")" 0.3 "g" 0.5 "g" "c(\"16420-2\", \"25233-8\")"
|
"AZM" 447043 "Azithromycin" "Macrolides/lincosamides" "c(\"J01FA10\", \"S01AA26\")" "Macrolides, lincosamides and streptogramins" "Macrolides" "c(\"az\", \"azi\", \"azit\", \"azm\")" "c(\"aritromicina\", \"azasite\", \"azenil\", \"azifast\", \"azigram\", \"azimakrol\", \"azithramycine\", \"azithromycin\", \"azithromycine\", \"azithromycinum\", \"azitrocin\", \"azitromax\", \"azitromicina\", \"azitromicine\", \"azitromin\", \"aziwok\", \"aztrin\", \"azyter\", \"azythromycin\", \"hemomycin\", \"misultina\", \"mixoterin\", \"setron\", \"sumamed\", \"tromix\", \"trulimax\", \"zentavion\", \"zithrax\", \"zithromac\", \"zithromax\", \"zithromax iv\", \"zithromycin\", \"zitrim\", \"zitromax\", \"zitrotek\", \"zmax sr\")" 0.3 "g" 0.5 "g" "c(\"16420-2\", \"25233-8\")"
|
||||||
"AZL" "J01CA09" 6479523 "Azlocillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"az\", \"azl\", \"azlo\")" "" 12 "g" ""
|
"AZL" 6479523 "Azlocillin" "Beta-lactams/penicillins" "J01CA09" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"az\", \"azl\", \"azlo\")" "" 12 "g" ""
|
||||||
"ATM" "J01DF01" 5742832 "Aztreonam" "Beta-lactams/penicillins" "Other beta-lactam antibacterials" "Monobactams" "c(\"at\", \"atm\", \"azm\", \"azt\", \"aztr\")" "c(\"azactam\", \"azetreonam\", \"azthreonam\", \"aztreonam\", \"primbactam\")" 4 "g" "c(\"16423-6\", \"25234-6\", \"3369-6\")"
|
"ATM" 5742832 "Aztreonam" "Beta-lactams/penicillins" "J01DF01" "Other beta-lactam antibacterials" "Monobactams" "c(\"at\", \"atm\", \"azm\", \"azt\", \"aztr\")" "c(\"azactam\", \"azetreonam\", \"azthreonam\", \"aztreonam\", \"primbactam\")" 4 "g" "c(\"16423-6\", \"25234-6\", \"3369-6\")"
|
||||||
"AZA" "Aztreonam/avibactam" "Beta-lactams/penicillins" "" "" ""
|
"AZA" "Aztreonam/avibactam" "Beta-lactams/penicillins" "" "" ""
|
||||||
"BAM" "J01CA06" 441397 "Bacampicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"bacampicilina\", \"bacampicillin\", \"bacampicilline\", \"bacampicillinum\", \"penglobe\")" 1.2 "g" "character(0)"
|
"BAM" 441397 "Bacampicillin" "Beta-lactams/penicillins" "J01CA06" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"bacampicilina\", \"bacampicillin\", \"bacampicilline\", \"bacampicillinum\", \"penglobe\")" 1.2 "g" "character(0)"
|
||||||
"BAC" "R02AB04" 78358334 "Bacitracin zinc" "Other antibacterials" "baci" "" ""
|
"BAC" 78358334 "Bacitracin zinc" "Other antibacterials" "R02AB04" "baci" "" ""
|
||||||
"BDQ" 5388906 "Bedaquiline" "Other antibacterials" "" "c(\"bedaquiline\", \"sirturo\")" "80637-2"
|
"BDQ" 5388906 "Bedaquiline" "Other antibacterials" "J04AK05" "" "c(\"bedaquiline\", \"sirturo\")" 86 "mg" "80637-2"
|
||||||
"BEK" 439318 "Bekanamycin" "Aminoglycosides" "" "c(\"aminodeoxykanamycin\", \"becanamicina\", \"bekanamycin\", \"bekanamycine\", \"bekanamycinum\", \"nebramycin v\")" "character(0)"
|
"BEK" 439318 "Bekanamycin" "Aminoglycosides" "J01GB13" "" "c(\"aminodeoxykanamycin\", \"becanamicina\", \"bekanamycin\", \"bekanamycine\", \"bekanamycinum\", \"nebramycin v\")" 0.6 "g" "character(0)"
|
||||||
"BNB" "J01CE08" "Benzathine benzylpenicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "" "" 3.6 "g" ""
|
"BNB" "Benzathine benzylpenicillin" "Beta-lactams/penicillins" "J01CE08" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "" "" 3.6 "g" ""
|
||||||
"BNP" "J01CE10" 64725 "Benzathine phenoxymethylpenicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "" "c(\"bicillin v\", \"biphecillin\")" 2 "g" "character(0)"
|
"BNP" 64725 "Benzathine phenoxymethylpenicillin" "Beta-lactams/penicillins" "J01CE10" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "" "c(\"bicillin v\", \"biphecillin\")" 2 "g" "character(0)"
|
||||||
"PEN" "J01CE01" 5904 "Benzylpenicillin" "Beta-lactams/penicillins" "Combinations of antibacterials" "Combinations of antibacterials" "c(\"bepe\", \"pen\", \"peni\", \"peni g\", \"penicillin\", \"penicillin g\", \"pg\")" "c(\"abbocillin\", \"ayercillin\", \"bencilpenicilina\", \"benzopenicillin\", \"benzyl penicillin\", \"benzylpenicillin\", \"benzylpenicillin g\", \"benzylpenicilline\", \"benzylpenicillinum\", \"bicillin\", \"cillora\", \"cilloral\", \"cilopen\", \"compocillin g\", \"cosmopen\", \"dropcillin\", \"free penicillin g\", \"free penicillin ii\", \"galofak\", \"gelacillin\", \"liquacillin\", \"megacillin\", \"pencillin g\", \"penicillin\", \"penicilling\", \"pentids\", \"permapen\", \"pfizerpen\", \"pfizerpen g\", \"pharmacillin\", \"pradupen\", \"specilline g\", \"ursopen\"
|
"PEN" 5904 "Benzylpenicillin" "Beta-lactams/penicillins" "c(\"J01CE01\", \"S01AA14\")" "Combinations of antibacterials" "Combinations of antibacterials" "c(\"bepe\", \"pen\", \"peni\", \"peni g\", \"penicillin\", \"penicillin g\", \"pg\")" "c(\"abbocillin\", \"ayercillin\", \"bencilpenicilina\", \"benzopenicillin\", \"benzyl penicillin\", \"benzylpenicillin\", \"benzylpenicillin g\", \"benzylpenicilline\", \"benzylpenicillinum\", \"bicillin\", \"cillora\", \"cilloral\", \"cilopen\", \"compocillin g\", \"cosmopen\", \"dropcillin\", \"free penicillin g\", \"free penicillin ii\", \"galofak\", \"gelacillin\", \"liquacillin\", \"megacillin\", \"pencillin g\", \"penicillin\", \"penicilling\", \"pentids\", \"permapen\", \"pfizerpen\", \"pfizerpen g\", \"pharmacillin\", \"pradupen\", \"specilline g\", \"ursopen\"
|
||||||
)" 3.6 "g" "3913-1"
|
)" 3.6 "g" "3913-1"
|
||||||
"BES" 10178705 "Besifloxacin" "Quinolones" "" "besifloxacin" "character(0)"
|
"BES" 10178705 "Besifloxacin" "Quinolones" "S01AE08" "" "besifloxacin" "character(0)"
|
||||||
"BIA" 71339 "Biapenem" "Carbapenems" "" "c(\"biapenem\", \"biapenern\", \"bipenem\", \"omegacin\")" "character(0)"
|
"BIA" 71339 "Biapenem" "Carbapenems" "J01DH05" "" "c(\"biapenem\", \"biapenern\", \"bipenem\", \"omegacin\")" 1.2 "g" "character(0)"
|
||||||
"BCZ" 65807 "Bicyclomycin (Bicozamycin)" "Other antibacterials" "" "c(\"aizumycin\", \"bacfeed\", \"bacteron\", \"bicozamicina\", \"bicozamycin\", \"bicozamycine\", \"bicozamycinum\")" "character(0)"
|
"BCZ" 65807 "Bicyclomycin (Bicozamycin)" "Other antibacterials" "" "c(\"aizumycin\", \"bacfeed\", \"bacteron\", \"bicozamicina\", \"bicozamycin\", \"bicozamycine\", \"bicozamycinum\")" "character(0)"
|
||||||
"BDP" "J01EA02" 68760 "Brodimoprim" "Trimethoprims" "Sulfonamides and trimethoprim" "Trimethoprim and derivatives" "" "c(\"brodimoprim\", \"brodimoprima\", \"brodimoprime\", \"brodimoprimum\", \"bromdimoprim\", \"hyprim\", \"unitrim\")" 0.2 "g" "character(0)"
|
"BDP" 68760 "Brodimoprim" "Trimethoprims" "J01EA02" "Sulfonamides and trimethoprim" "Trimethoprim and derivatives" "" "c(\"brodimoprim\", \"brodimoprima\", \"brodimoprime\", \"brodimoprimum\", \"bromdimoprim\", \"hyprim\", \"unitrim\")" 0.2 "g" "character(0)"
|
||||||
"BUT" 47472 "Butoconazole" "Antifungals/antimycotics" "" "c(\"butaconazole\", \"butoconazol\", \"butoconazole\", \"butoconazolum\", \"compositenstarke\", \"dahlin\", \"femstat\", \"gynofort\", \"polyfructosanum\")" "character(0)"
|
"BUT" 47472 "Butoconazole" "Antifungals/antimycotics" "G01AF15" "" "c(\"butaconazole\", \"butoconazol\", \"butoconazole\", \"butoconazolum\", \"compositenstarke\", \"dahlin\", \"femstat\", \"gynofort\", \"polyfructosanum\")" "character(0)"
|
||||||
"CDZ" "J01DD09" 44242317 "Cadazolid" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "" "cadazolid" 2 "g" "character(0)"
|
"CDZ" 44242317 "Cadazolid" "Oxazolidinones" "" "cadazolid" "character(0)"
|
||||||
"CLA" "J04AA03" "Calcium aminosalicylate" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Aminosalicylic acid and derivatives" "" "" 15 ""
|
"CLA" "Calcium aminosalicylate" "Antimycobacterials" "J04AA03" "Drugs for treatment of tuberculosis" "Aminosalicylic acid and derivatives" "" "" 15 "g" ""
|
||||||
"CAP" "J04AB30" 135565060 "Capreomycin" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Antibiotics" "c(\"\", \"capr\")" "" 1 "g" ""
|
"CAP" 135565060 "Capreomycin" "Antimycobacterials" "J04AB30" "Drugs for treatment of tuberculosis" "Antibiotics" "c(\"\", \"capr\")" "" 1 "g" ""
|
||||||
"CRB" "J01CA03" 20824 "Carbenicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"bar\", \"carb\", \"cb\")" "c(\"anabactyl\", \"carbenicilina\", \"carbenicillin\", \"carbenicillina\", \"carbenicilline\", \"carbenicillinum\", \"geopen\", \"pyopen\")" 12 "g" "3434-8"
|
"CRB" 20824 "Carbenicillin" "Beta-lactams/penicillins" "J01CA03" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"bar\", \"carb\", \"cb\")" "c(\"anabactyl\", \"carbenicilina\", \"carbenicillin\", \"carbenicillina\", \"carbenicilline\", \"carbenicillinum\", \"geopen\", \"pyopen\")" 12 "g" "3434-8"
|
||||||
"CRN" "J01CA05" 93184 "Carindacillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"carindacilina\", \"carindacillin\", \"carindacilline\", \"carindacillinum\")" 4 "g" "character(0)"
|
"CRN" 93184 "Carindacillin" "Beta-lactams/penicillins" "J01CA05" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"carindacilina\", \"carindacillin\", \"carindacilline\", \"carindacillinum\")" 4 "g" "character(0)"
|
||||||
"CAR" 6540466 "Carumonam" "Other antibacterials" "" "c(\"carumonam\", \"carumonamum\")" "character(0)"
|
"CAR" 6540466 "Carumonam" "Other antibacterials" "J01DF02" "" "c(\"carumonam\", \"carumonamum\")" 2 "g" "character(0)"
|
||||||
"CAS" "J02AX04" 2826718 "Caspofungin" "Antifungals/antimycotics" "Antimycotics for systemic use" "Other antimycotics for systemic use" "casp" "c(\"cancidas\", \"capsofungin\", \"caspofungin\")" 50 "mg" "58419-3"
|
"CAS" 2826718 "Caspofungin" "Antifungals/antimycotics" "J02AX04" "Antimycotics for systemic use" "Other antimycotics for systemic use" "casp" "c(\"cancidas\", \"capsofungin\", \"caspofungin\")" 50 "mg" "58419-3"
|
||||||
"CAC" "J01DB10" 91562 "Cefacetrile" "Cephalosporins (1st gen.)" "Other beta-lactam antibacterials" "First-generation cephalosporins" "" "c(\"cefacetril\", \"cefacetrile\", \"cefacetrilo\", \"cefacetrilum\", \"celospor\", \"celtol\", \"cephacetrile\", \"cristacef\", \"vetrimast\")" "character(0)"
|
"CAC" 91562 "Cefacetrile" "Cephalosporins (1st gen.)" "J01DB10" "Other beta-lactam antibacterials" "First-generation cephalosporins" "" "c(\"cefacetril\", \"cefacetrile\", \"cefacetrilo\", \"cefacetrilum\", \"celospor\", \"celtol\", \"cephacetrile\", \"cristacef\", \"vetrimast\")" "character(0)"
|
||||||
"CEC" "J01DC04" 51039 "Cefaclor" "Cephalosporins (2nd gen.)" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "c(\"ccl\", \"cec\", \"cf\", \"cfac\", \"cfc\", \"cfcl\", \"cfr\", \"fac\")" "c(\"alenfral\", \"alfacet\", \"ceclor\", \"ceclor cd\", \"cefaclor\", \"cefaclor anhydrous\", \"cefaclor monohydrate\", \"cefacloro\", \"cefaclorum\", \"cefeaclor\", \"cephaclor\", \"dystaclor mr\", \"keflor\", \"kefral\", \"raniclor\")" 1 "g" "c(\"16564-7\", \"21149-0\")"
|
"CEC" 51039 "Cefaclor" "Cephalosporins (2nd gen.)" "J01DC04" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "c(\"ccl\", \"cec\", \"cf\", \"cfac\", \"cfc\", \"cfcl\", \"cfr\", \"fac\")" "c(\"alenfral\", \"alfacet\", \"ceclor\", \"ceclor cd\", \"cefaclor\", \"cefaclor anhydrous\", \"cefaclor monohydrate\", \"cefacloro\", \"cefaclorum\", \"cefeaclor\", \"cephaclor\", \"dystaclor mr\", \"keflor\", \"kefral\", \"raniclor\")" 1 "g" "c(\"16564-7\", \"21149-0\")"
|
||||||
"CFR" "J01DB05" 47965 "Cefadroxil" "Cephalosporins (1st gen.)" "Other beta-lactam antibacterials" "First-generation cephalosporins" "c(\"cfdx\", \"cfr\", \"fad\")" "c(\"cefadrops\", \"cefadroxil\", \"cefadroxil anhydrous\", \"cefadroxilo\", \"cefadroxilum\", \"cefradroxil\", \"cephadroxil\", \"duricef\", \"sumacef\", \"ultracef\")" 2 "g" "16565-4"
|
"CFR" 47965 "Cefadroxil" "Cephalosporins (1st gen.)" "J01DB05" "Other beta-lactam antibacterials" "First-generation cephalosporins" "c(\"cfdx\", \"cfr\", \"fad\")" "c(\"cefadrops\", \"cefadroxil\", \"cefadroxil anhydrous\", \"cefadroxilo\", \"cefadroxilum\", \"cefradroxil\", \"cephadroxil\", \"duricef\", \"sumacef\", \"ultracef\")" 2 "g" "16565-4"
|
||||||
"RID" "J01DB02" 5773 "Cefaloridine" "Cephalosporins (1st gen.)" "Other beta-lactam antibacterials" "First-generation cephalosporins" "cefa" "c(\"aliporina\", \"ampligram\", \"cefaloridin\", \"cefaloridina\", \"cefaloridine\", \"cefaloridinum\", \"cefalorizin\", \"ceflorin\", \"cepaloridin\", \"cepalorin\", \"cephalomycine\", \"cephaloridin\", \"cephaloridine\", \"cephaloridinum\", \"ceporan\", \"ceporin\", \"ceporine\", \"cilifor\", \"deflorin\", \"faredina\", \"floridin\", \"glaxoridin\", \"intrasporin\", \"keflodin\", \"keflordin\", \"kefloridin\", \"kefspor\", \"lloncefal\", \"loridine\", \"sasperin\", \"sefacin\", \"verolgin\", \"vioviantine\")" 3 "g" "character(0)"
|
"RID" 5773 "Cefaloridine" "Cephalosporins (1st gen.)" "J01DB02" "Other beta-lactam antibacterials" "First-generation cephalosporins" "cefa" "c(\"aliporina\", \"ampligram\", \"cefaloridin\", \"cefaloridina\", \"cefaloridine\", \"cefaloridinum\", \"cefalorizin\", \"ceflorin\", \"cepaloridin\", \"cepalorin\", \"cephalomycine\", \"cephaloridin\", \"cephaloridine\", \"cephaloridinum\", \"ceporan\", \"ceporin\", \"ceporine\", \"cilifor\", \"deflorin\", \"faredina\", \"floridin\", \"glaxoridin\", \"intrasporin\", \"keflodin\", \"keflordin\", \"kefloridin\", \"kefspor\", \"lloncefal\", \"loridine\", \"sasperin\", \"sefacin\", \"verolgin\", \"vioviantine\")" 3 "g" "character(0)"
|
||||||
"MAN" "J01DC03" 456255 "Cefamandole" "Cephalosporins (2nd gen.)" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "c(\"cfam\", \"cfmn\")" "c(\"cefadole\", \"cefamandol\", \"cefamandole\", \"cefamandolum\", \"cephadole\", \"cephamandole\", \"kefamandol\", \"kefdole\", \"mancef\")" 6 "g" "3441-3"
|
"MAN" 456255 "Cefamandole" "Cephalosporins (2nd gen.)" "J01DC03" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "c(\"cfam\", \"cfmn\")" "c(\"cefadole\", \"cefamandol\", \"cefamandole\", \"cefamandolum\", \"cephadole\", \"cephamandole\", \"kefamandol\", \"kefdole\", \"mancef\")" 6 "g" "3441-3"
|
||||||
"CTZ" "J01DB07" 6410758 "Cefatrizine" "Cephalosporins (1st gen.)" "Other beta-lactam antibacterials" "First-generation cephalosporins" "" "c(\"bricef\", \"cefatrix\", \"cefatrizine\", \"cefatrizino\", \"cefatrizinum\", \"cepticol\", \"cetrazil\", \"latocef\", \"orosporina\", \"trizina\")" 1 "g" "character(0)"
|
"CTZ" 6410758 "Cefatrizine" "Cephalosporins (1st gen.)" "J01DB07" "Other beta-lactam antibacterials" "First-generation cephalosporins" "" "c(\"bricef\", \"cefatrix\", \"cefatrizine\", \"cefatrizino\", \"cefatrizinum\", \"cepticol\", \"cetrazil\", \"latocef\", \"orosporina\", \"trizina\")" 1 "g" "character(0)"
|
||||||
"CZD" "J01DB06" 71736 "Cefazedone" "Cephalosporins (1st gen.)" "Other beta-lactam antibacterials" "First-generation cephalosporins" "" "c(\"cefazedon\", \"cefazedona\", \"cefazedone\", \"cefazedone acid\", \"cefazedonum\", \"refosporen\", \"refosporene\", \"refosporin\")" 3 "g" "character(0)"
|
"CZD" 71736 "Cefazedone" "Cephalosporins (1st gen.)" "J01DB06" "Other beta-lactam antibacterials" "First-generation cephalosporins" "" "c(\"cefazedon\", \"cefazedona\", \"cefazedone\", \"cefazedone acid\", \"cefazedonum\", \"refosporen\", \"refosporene\", \"refosporin\")" 3 "g" "character(0)"
|
||||||
"CZO" "J01DB04" 33255 "Cefazolin" "Cephalosporins (1st gen.)" "Other beta-lactam antibacterials" "First-generation cephalosporins" "c(\"cfz\", \"cfzl\", \"cz\", \"czol\", \"faz\", \"kz\")" "c(\"atirin\", \"cefamezin\", \"cefamezine\", \"cefazina\", \"cefazolin\", \"cefazolin acid\", \"cefazolina\", \"cefazoline\", \"cefazolinum\", \"cephamezine\", \"cephazolidin\", \"cephazolin\", \"cephazoline\", \"elzogram\", \"firmacef\", \"kefzol\", \"liviclina\", \"totacef\")" 3 "g" "c(\"16566-2\", \"25235-3\", \"3442-1\", \"3443-9\", \"80962-4\")"
|
"CZO" 33255 "Cefazolin" "Cephalosporins (1st gen.)" "J01DB04" "Other beta-lactam antibacterials" "First-generation cephalosporins" "c(\"cfz\", \"cfzl\", \"cz\", \"czol\", \"faz\", \"kz\")" "c(\"atirin\", \"cefamezin\", \"cefamezine\", \"cefazina\", \"cefazolin\", \"cefazolin acid\", \"cefazolina\", \"cefazoline\", \"cefazolinum\", \"cephamezine\", \"cephazolidin\", \"cephazolin\", \"cephazoline\", \"elzogram\", \"firmacef\", \"kefzol\", \"liviclina\", \"totacef\")" 3 "g" "c(\"16566-2\", \"25235-3\", \"3442-1\", \"3443-9\", \"80962-4\")"
|
||||||
"CFB" 127527 "Cefbuperazone" "Other antibacterials" "" "c(\"cefbuperazona\", \"cefbuperazone\", \"cefbuperazonum\", \"cefbuperzaone\", \"cerbuperazone\", \"tomiporan\")" "character(0)"
|
"CFB" 127527 "Cefbuperazone" "Other antibacterials" "J01DC13" "" "c(\"cefbuperazona\", \"cefbuperazone\", \"cefbuperazonum\", \"cefbuperzaone\", \"cerbuperazone\", \"tomiporan\")" 2 "g" "character(0)"
|
||||||
"CCP" 6436055 "Cefcapene" "Cephalosporins (3rd gen.)" "" "c(\"cefcamate\", \"cefcapene\")" "character(0)"
|
"CCP" 6436055 "Cefcapene" "Cephalosporins (3rd gen.)" "J01DD17" "" "c(\"cefcamate\", \"cefcapene\")" 0.45 "g" "character(0)"
|
||||||
"CCX" 5282438 "Cefcapene pivoxil" "Cephalosporins (3rd gen.)" "" "c(\"cefcamate pivoxil\", \"cefcapene piroxil\")" "character(0)"
|
"CCX" 5282438 "Cefcapene pivoxil" "Cephalosporins (3rd gen.)" "" "c(\"cefcamate pivoxil\", \"cefcapene piroxil\")" "character(0)"
|
||||||
"CDR" "J01DD15" 6915944 "Cefdinir" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cd\", \"cdn\", \"cdr\", \"cfd\", \"din\")" "c(\"cefdinir\", \"cefdinirum\", \"cefdinyl\", \"cefdirnir\", \"ceftinex\", \"cefzon\", \"omnicef\")" 0.6 "g" "character(0)"
|
"CDR" 6915944 "Cefdinir" "Cephalosporins (3rd gen.)" "J01DD15" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cd\", \"cdn\", \"cdr\", \"cfd\", \"din\")" "c(\"cefdinir\", \"cefdinirum\", \"cefdinyl\", \"cefdirnir\", \"ceftinex\", \"cefzon\", \"omnicef\")" 0.6 "g" "character(0)"
|
||||||
"DIT" "J01DD16" 9870843 "Cefditoren" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "cdn" "cefditoren" 0.4 "g" "character(0)"
|
"DIT" 9870843 "Cefditoren" "Cephalosporins (3rd gen.)" "J01DD16" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "cdn" "cefditoren" 0.4 "g" "character(0)"
|
||||||
"DIX" 6437877 "Cefditoren pivoxil" "Cephalosporins (3rd gen.)" "" "c(\"cefditoren\", \"cefditoren pi voxil\", \"cefditoren pivoxil\", \"cefditorin\", \"cefditorin pivoxil\", \"meiact\", \"spectracef\")" "character(0)"
|
"DIX" 6437877 "Cefditoren pivoxil" "Cephalosporins (3rd gen.)" "" "c(\"cefditoren\", \"cefditoren pi voxil\", \"cefditoren pivoxil\", \"cefditorin\", \"cefditorin pivoxil\", \"meiact\", \"spectracef\")" "character(0)"
|
||||||
"FEP" "J01DE01" 5479537 "Cefepime" "Cephalosporins (4th gen.)" "Other beta-lactam antibacterials" "Fourth-generation cephalosporins" "c(\"cfep\", \"cfpi\", \"cpe\", \"cpm\", \"fep\", \"pm\", \"xpm\")" "c(\"axepim\", \"cefepima\", \"cefepime\", \"cefepimum\", \"cepimax\", \"cepimex\", \"maxcef\", \"maxipime\")" 4 "g" "38363-8"
|
"FEP" 5479537 "Cefepime" "Cephalosporins (4th gen.)" "J01DE01" "Other beta-lactam antibacterials" "Fourth-generation cephalosporins" "c(\"cfep\", \"cfpi\", \"cpe\", \"cpm\", \"fep\", \"pm\", \"xpm\")" "c(\"axepim\", \"cefepima\", \"cefepime\", \"cefepimum\", \"cepimax\", \"cepimex\", \"maxcef\", \"maxipime\")" 4 "g" "38363-8"
|
||||||
"CPC" 9567559 "Cefepime/clavulanic acid" "Cephalosporins (4th gen.)" "c(\"cicl\", \"xpml\")" "" ""
|
"CPC" 9567559 "Cefepime/clavulanic acid" "Cephalosporins (4th gen.)" "c(\"cicl\", \"xpml\")" "" ""
|
||||||
"FPT" 9567558 "Cefepime/tazobactam" "Cephalosporins (4th gen.)" "" "" ""
|
"FPT" 9567558 "Cefepime/tazobactam" "Cephalosporins (4th gen.)" "" "" ""
|
||||||
"FPZ" "Cefepime/zidebactam" "Other antibacterials" "" "" ""
|
"FPZ" "Cefepime/zidebactam" "Other antibacterials" "" "" ""
|
||||||
"CAT" "J01DD10" 5487888 "Cefetamet" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "" "c(\"cefetamet\", \"cefetametum\", \"cepime o\", \"deacetoxycefotaxime\")" 1 "g" "character(0)"
|
"CAT" 5487888 "Cefetamet" "Cephalosporins (3rd gen.)" "J01DD10" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "" "c(\"cefetamet\", \"cefetametum\", \"cepime o\", \"deacetoxycefotaxime\")" 1 "g" "character(0)"
|
||||||
"CPI" 5486182 "Cefetamet pivoxil" "Cephalosporins (3rd gen.)" "" "c(\"cefetamet pivoxyl\", \"globocef\")" "character(0)"
|
"CPI" 5486182 "Cefetamet pivoxil" "Cephalosporins (3rd gen.)" "" "c(\"cefetamet pivoxyl\", \"globocef\")" "character(0)"
|
||||||
"CCL" 71719688 "Cefetecol (Cefcatacol)" "Cephalosporins (4th gen.)" "" "" ""
|
"CCL" 71719688 "Cefetecol (Cefcatacol)" "Cephalosporins (4th gen.)" "" "" ""
|
||||||
"CZL" 193956 "Cefetrizole" "Cephalosporins (unclassified gen.)" "" "c(\"cefetrizole\", \"cefetrizolum\")" "character(0)"
|
"CZL" 193956 "Cefetrizole" "Cephalosporins (unclassified gen.)" "" "c(\"cefetrizole\", \"cefetrizolum\")" "character(0)"
|
||||||
"FDC" 77843966 "Cefiderocol" "Other antibacterials" "" "cefiderocol" "character(0)"
|
"FDC" 77843966 "Cefiderocol" "Other antibacterials" "J01DI04" "" "cefiderocol" "character(0)"
|
||||||
"CFM" "J01DD08" 5362065 "Cefixime" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cfe\", \"cfix\", \"cfxm\", \"dcfm\", \"fix\", \"ix\")" "c(\"cefixim\", \"cefixima\", \"cefixime\", \"cefixime anhydrous\", \"cefiximum\", \"cefixoral\", \"cefspan\", \"cephoral\", \"denvar\", \"necopen\", \"suprax\", \"tricef\", \"unixime\")" 0.4 "g" "c(\"16567-0\", \"25236-1\")"
|
"CFM" 5362065 "Cefixime" "Cephalosporins (3rd gen.)" "J01DD08" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cfe\", \"cfix\", \"cfxm\", \"dcfm\", \"fix\", \"ix\")" "c(\"cefixim\", \"cefixima\", \"cefixime\", \"cefixime anhydrous\", \"cefiximum\", \"cefixoral\", \"cefspan\", \"cephoral\", \"denvar\", \"necopen\", \"suprax\", \"tricef\", \"unixime\")" 0.4 "g" "c(\"16567-0\", \"25236-1\")"
|
||||||
"CMX" "J01DD05" 9570757 "Cefmenoxime" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "" "c(\"bestron\", \"cefmax\", \"cefmenoxima\", \"cefmenoxime\", \"cefmenoximum\")" 2 "g" "character(0)"
|
"CMX" 9570757 "Cefmenoxime" "Cephalosporins (3rd gen.)" "J01DD05" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "" "c(\"bestron\", \"cefmax\", \"cefmenoxima\", \"cefmenoxime\", \"cefmenoximum\")" 2 "g" "character(0)"
|
||||||
"CMZ" "J01DC09" 42008 "Cefmetazole" "Cephalosporins (2nd gen.)" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "" "c(\"cefmetazole\", \"cefmetazolo\", \"cefmetazolum\")" 4 "g" "character(0)"
|
"CMZ" 42008 "Cefmetazole" "Cephalosporins (2nd gen.)" "J01DC09" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "" "c(\"cefmetazole\", \"cefmetazolo\", \"cefmetazolum\")" 4 "g" "character(0)"
|
||||||
"CNX" 71141 "Cefminox" "Other antibacterials" "" "c(\"cefminox\", \"cefminoxum\")" "character(0)"
|
"CNX" 71141 "Cefminox" "Other antibacterials" "J01DC12" "" "c(\"cefminox\", \"cefminoxum\")" 4 "g" "character(0)"
|
||||||
"DIZ" "J01DD09" 5361871 "Cefodizime" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "" "c(\"cefodizima\", \"cefodizime\", \"cefodizime acid\", \"cefodizimum\", \"cefodizme\", \"diezime\", \"modivid\", \"neucef\", \"timecef\")" 2 "g" "character(0)"
|
"DIZ" 5361871 "Cefodizime" "Cephalosporins (3rd gen.)" "J01DD09" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "" "c(\"cefodizima\", \"cefodizime\", \"cefodizime acid\", \"cefodizimum\", \"cefodizme\", \"diezime\", \"modivid\", \"neucef\", \"timecef\")" 2 "g" "character(0)"
|
||||||
"CID" "J01DC06" 43594 "Cefonicid" "Cephalosporins (2nd gen.)" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "" "c(\"cefonicid\", \"cefonicido\", \"cefonicidum\", \"monocef\")" 1 "g" "c(\"25237-9\", \"3444-7\")"
|
"CID" 43594 "Cefonicid" "Cephalosporins (2nd gen.)" "J01DC06" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "" "c(\"cefonicid\", \"cefonicido\", \"cefonicidum\", \"monocef\")" 1 "g" "c(\"25237-9\", \"3444-7\")"
|
||||||
"CFP" "J01DD12" 44187 "Cefoperazone" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cfp\", \"cfpz\", \"cp\", \"cpz\", \"fop\", \"per\")" "c(\"bioperazone\", \"cefobid\", \"cefoperazine\", \"cefoperazon\", \"cefoperazone\", \"cefoperazone acid\", \"cefoperazono\", \"cefoperazonum\", \"cefozon\", \"medocef\", \"myticef\", \"pathozone\", \"peracef\")" 4 "g" "3445-4"
|
"CFP" 44187 "Cefoperazone" "Cephalosporins (3rd gen.)" "J01DD12" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cfp\", \"cfpz\", \"cp\", \"cpz\", \"fop\", \"per\")" "c(\"bioperazone\", \"cefobid\", \"cefoperazine\", \"cefoperazon\", \"cefoperazone\", \"cefoperazone acid\", \"cefoperazono\", \"cefoperazonum\", \"cefozon\", \"medocef\", \"myticef\", \"pathozone\", \"peracef\")" 4 "g" "3445-4"
|
||||||
"CSL" "J01DD62" "Cefoperazone/sulbactam" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "" "" 4 "g" ""
|
"CSL" "Cefoperazone/sulbactam" "Cephalosporins (3rd gen.)" "J01DD62" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "" "" 4 "g" ""
|
||||||
"CND" "J01DC11" 43507 "Ceforanide" "Cephalosporins (2nd gen.)" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "" "c(\"ceforanide\", \"ceforanido\", \"ceforanidum\", \"precef\", \"radacef\")" 4 "g" "character(0)"
|
"CND" 43507 "Ceforanide" "Cephalosporins (2nd gen.)" "J01DC11" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "" "c(\"ceforanide\", \"ceforanido\", \"ceforanidum\", \"precef\", \"radacef\")" 4 "g" "character(0)"
|
||||||
"CSE" 9830519 "Cefoselis" "Cephalosporins (4th gen.)" "" "c(\"cefoselis\", \"cefoselis sulfate\", \"winsef\")" "character(0)"
|
"CSE" 9830519 "Cefoselis" "Cephalosporins (4th gen.)" "" "c(\"cefoselis\", \"cefoselis sulfate\", \"winsef\")" "character(0)"
|
||||||
"CTX" "J01DD01" 5742673 "Cefotaxime" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cfot\", \"cft\", \"cftx\", \"ct\", \"ctx\", \"fot\", \"tax\", \"xct\")" "c(\"cefotaxim\", \"cefotaxim hikma\", \"cefotaxima\", \"cefotaxime\", \"cefotaxime acid\", \"cefotaximum\", \"cephotaxime\", \"claforan\", \"omnatax\")" 4 "g" "c(\"25238-7\", \"3446-2\", \"80961-6\")"
|
"CTX" 5742673 "Cefotaxime" "Cephalosporins (3rd gen.)" "J01DD01" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cfot\", \"cft\", \"cftx\", \"ct\", \"ctx\", \"fot\", \"tax\", \"xct\")" "c(\"cefotaxim\", \"cefotaxim hikma\", \"cefotaxima\", \"cefotaxime\", \"cefotaxime acid\", \"cefotaximum\", \"cephotaxime\", \"claforan\", \"omnatax\")" 4 "g" "c(\"25238-7\", \"3446-2\", \"80961-6\")"
|
||||||
"CTC" 9575353 "Cefotaxime/clavulanic acid" "Cephalosporins (3rd gen.)" "c(\"cxcl\", \"xctl\")" "" ""
|
"CTC" 9575353 "Cefotaxime/clavulanic acid" "Cephalosporins (3rd gen.)" "c(\"cxcl\", \"xctl\")" "" ""
|
||||||
"CTS" 9574753 "Cefotaxime/sulbactam" "Cephalosporins (3rd gen.)" "" "" ""
|
"CTS" 9574753 "Cefotaxime/sulbactam" "Cephalosporins (3rd gen.)" "" "" ""
|
||||||
"CTT" "J01DC05" 53025 "Cefotetan" "Cephalosporins (2nd gen.)" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "c(\"cftt\", \"cn\", \"cte\", \"ctn\", \"ctt\", \"tans\")" "c(\"apacef\", \"cefotetan\", \"cefotetan free acid\", \"cefotetanum\")" 4 "g" "c(\"25239-5\", \"3447-0\")"
|
"CTT" 53025 "Cefotetan" "Cephalosporins (2nd gen.)" "J01DC05" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "c(\"cftt\", \"cn\", \"cte\", \"ctn\", \"ctt\", \"tans\")" "c(\"apacef\", \"cefotetan\", \"cefotetan free acid\", \"cefotetanum\")" 4 "g" "c(\"25239-5\", \"3447-0\")"
|
||||||
"CTF" "J01DC07" 43708 "Cefotiam" "Cephalosporins (2nd gen.)" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "" "c(\"cefotiam\", \"cefotiam?\", \"cefotiamum\", \"ceradolan\", \"ceradon\", \"haloapor\")" 1.2 "g" 4 "g" "character(0)"
|
"CTF" 43708 "Cefotiam" "Cephalosporins (2nd gen.)" "J01DC07" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "" "c(\"cefotiam\", \"cefotiam?\", \"cefotiamum\", \"ceradolan\", \"ceradon\", \"haloapor\")" 1.2 "g" 4 "g" "character(0)"
|
||||||
"CHE" 125846 "Cefotiam hexetil" "Cephalosporins (3rd gen.)" "" "c(\"cefotiam cilexetil\", \"pansporin t\")" "character(0)"
|
"CHE" 125846 "Cefotiam hexetil" "Cephalosporins (3rd gen.)" "" "c(\"cefotiam cilexetil\", \"pansporin t\")" "character(0)"
|
||||||
"FOV" 9578573 "Cefovecin" "Cephalosporins (3rd gen.)" "" "" ""
|
"FOV" 9578573 "Cefovecin" "Cephalosporins (3rd gen.)" "" "" ""
|
||||||
"FOX" "J01DC01" 441199 "Cefoxitin" "Cephalosporins (2nd gen.)" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "c(\"cfox\", \"cfx\", \"cfxt\", \"cx\", \"fox\", \"fx\")" "c(\"cefoxitin\", \"cefoxitina\", \"cefoxitine\", \"cefoxitinum\", \"cefoxotin\", \"cephoxitin\", \"mefoxin\", \"mefoxitin\", \"rephoxitin\")" 6 "g" "c(\"25240-3\", \"3448-8\")"
|
"FOX" 441199 "Cefoxitin" "Cephalosporins (2nd gen.)" "J01DC01" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "c(\"cfox\", \"cfx\", \"cfxt\", \"cx\", \"fox\", \"fx\")" "c(\"cefoxitin\", \"cefoxitina\", \"cefoxitine\", \"cefoxitinum\", \"cefoxotin\", \"cephoxitin\", \"mefoxin\", \"mefoxitin\", \"rephoxitin\")" 6 "g" "c(\"25240-3\", \"3448-8\")"
|
||||||
"FOX1" "Cefoxitin screening" "Cephalosporins (2nd gen.)" "cfsc" "" ""
|
"FOX1" "Cefoxitin screening" "Cephalosporins (2nd gen.)" "cfsc" "" ""
|
||||||
"ZOP" 9571080 "Cefozopran" "Cephalosporins (4th gen.)" "" "cefozopran" "character(0)"
|
"ZOP" 9571080 "Cefozopran" "Cephalosporins (4th gen.)" "J01DE03" "" "cefozopran" 4 "g" "character(0)"
|
||||||
"CFZ" 68597 "Cefpimizole" "Cephalosporins (3rd gen.)" "" "c(\"cefpimizol\", \"cefpimizole\", \"cefpimizole sodium\", \"cefpimizolum\")" "character(0)"
|
"CFZ" 68597 "Cefpimizole" "Cephalosporins (3rd gen.)" "" "c(\"cefpimizol\", \"cefpimizole\", \"cefpimizole sodium\", \"cefpimizolum\")" "character(0)"
|
||||||
"CPM" "J01DD11" 636405 "Cefpiramide" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "" "c(\"cefpiramide\", \"cefpiramide acid\", \"cefpiramido\", \"cefpiramidum\")" 2 "g" "character(0)"
|
"CPM" 636405 "Cefpiramide" "Cephalosporins (3rd gen.)" "J01DD11" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "" "c(\"cefpiramide\", \"cefpiramide acid\", \"cefpiramido\", \"cefpiramidum\")" 2 "g" "character(0)"
|
||||||
"CPO" "J01DE02" 5479539 "Cefpirome" "Cephalosporins (4th gen.)" "Other beta-lactam antibacterials" "Fourth-generation cephalosporins" "c(\"\", \"cfpr\")" "c(\"broact\", \"cefpiroma\", \"cefpirome\", \"cefpiromum\", \"cefrom\", \"cerfpirome\", \"keiten\")" 4 "g" "character(0)"
|
"CPO" 5479539 "Cefpirome" "Cephalosporins (4th gen.)" "J01DE02" "Other beta-lactam antibacterials" "Fourth-generation cephalosporins" "c(\"\", \"cfpr\")" "c(\"broact\", \"cefpiroma\", \"cefpirome\", \"cefpiromum\", \"cefrom\", \"cerfpirome\", \"keiten\")" 4 "g" "character(0)"
|
||||||
"CPD" "J01DD13" 6335986 "Cefpodoxime" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cfpd\", \"cfpo\", \"cpd\", \"pod\", \"px\")" "c(\"cefpodoxim acid\", \"cefpodoxima\", \"cefpodoxime\", \"cefpodoxime acid\", \"cefpodoximum\", \"epoxim\")" 0.4 "g" "25241-1"
|
"CPD" 6335986 "Cefpodoxime" "Cephalosporins (3rd gen.)" "J01DD13" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cfpd\", \"cfpo\", \"cpd\", \"pod\", \"px\")" "c(\"cefpodoxim acid\", \"cefpodoxima\", \"cefpodoxime\", \"cefpodoxime acid\", \"cefpodoximum\", \"epoxim\")" 0.4 "g" "25241-1"
|
||||||
"CPX" 6526396 "Cefpodoxime proxetil" "Cephalosporins (3rd gen.)" "" "c(\"cefodox\", \"cefoprox\", \"cefpodoxime proxetil\", \"cepodem\", \"orelox\", \"otreon\", \"podomexef\", \"simplicef\", \"vantin\")" "character(0)"
|
"CPX" 6526396 "Cefpodoxime proxetil" "Cephalosporins (3rd gen.)" "" "c(\"cefodox\", \"cefoprox\", \"cefpodoxime proxetil\", \"cepodem\", \"orelox\", \"otreon\", \"podomexef\", \"simplicef\", \"vantin\")" "character(0)"
|
||||||
"CDC" "Cefpodoxime/clavulanic acid" "Cephalosporins (3rd gen.)" "c(\"\", \"cecl\")" "" ""
|
"CDC" "Cefpodoxime/clavulanic acid" "Cephalosporins (3rd gen.)" "c(\"\", \"cecl\")" "" ""
|
||||||
"CPR" "J01DC10" 5281006 "Cefprozil" "Cephalosporins (2nd gen.)" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "c(\"cpr\", \"cpz\", \"fp\")" "c(\"arzimol\", \"brisoral\", \"cefprozil\", \"cefprozil anhydrous\", \"cefprozil hydrate\", \"cefprozilo\", \"cefprozilum\", \"cefzil\", \"cronocef\", \"procef\", \"serozil\")" 1 "g" "character(0)"
|
"CPR" 5281006 "Cefprozil" "Cephalosporins (2nd gen.)" "J01DC10" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "c(\"cpr\", \"cpz\", \"fp\")" "c(\"arzimol\", \"brisoral\", \"cefprozil\", \"cefprozil anhydrous\", \"cefprozil hydrate\", \"cefprozilo\", \"cefprozilum\", \"cefzil\", \"cronocef\", \"procef\", \"serozil\")" 1 "g" "character(0)"
|
||||||
"CEQ" 5464355 "Cefquinome" "Cephalosporins (4th gen.)" "" "c(\"cefquinoma\", \"cefquinome\", \"cefquinomum\", \"cobactan\")" "character(0)"
|
"CEQ" 5464355 "Cefquinome" "Cephalosporins (4th gen.)" "" "c(\"cefquinoma\", \"cefquinome\", \"cefquinomum\", \"cobactan\")" "character(0)"
|
||||||
"CRD" "J01DB11" 5284529 "Cefroxadine" "Cephalosporins (1st gen.)" "Other beta-lactam antibacterials" "First-generation cephalosporins" "" "c(\"cefroxadine\", \"cefroxadino\", \"cefroxadinum\")" 2.1 "character(0)"
|
"CRD" 5284529 "Cefroxadine" "Cephalosporins (1st gen.)" "J01DB11" "Other beta-lactam antibacterials" "First-generation cephalosporins" "" "c(\"cefroxadine\", \"cefroxadino\", \"cefroxadinum\")" 2.1 "g" "character(0)"
|
||||||
"CFS" "J01DD03" 656575 "Cefsulodin" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cfsl\", \"cfsu\")" "c(\"cefsulodin\", \"cefsulodine\", \"cefsulodino\", \"cefsulodinum\")" 4 "g" "c(\"131-3\", \"25242-9\")"
|
"CFS" 656575 "Cefsulodin" "Cephalosporins (3rd gen.)" "J01DD03" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cfsl\", \"cfsu\")" "c(\"cefsulodin\", \"cefsulodine\", \"cefsulodino\", \"cefsulodinum\")" 4 "g" "c(\"131-3\", \"25242-9\")"
|
||||||
"CSU" 68718 "Cefsumide" "Cephalosporins (unclassified gen.)" "" "c(\"cefsumide\", \"cefsumido\", \"cefsumidum\")" "character(0)"
|
"CSU" 68718 "Cefsumide" "Cephalosporins (unclassified gen.)" "" "c(\"cefsumide\", \"cefsumido\", \"cefsumidum\")" "character(0)"
|
||||||
"CPT" "J01DI02" 56841980 "Ceftaroline" "Cephalosporins (5th gen.)" "c(\"\", \"cfro\")" "c(\"teflaro\", \"zinforo\")" 1.2 "character(0)"
|
"CPT" 56841980 "Ceftaroline" "Cephalosporins (5th gen.)" "J01DI02" "c(\"\", \"cfro\")" "c(\"teflaro\", \"zinforo\")" 1.2 "g" "character(0)"
|
||||||
"CPA" "Ceftaroline/avibactam" "Cephalosporins (5th gen.)" "" "" ""
|
"CPA" "Ceftaroline/avibactam" "Cephalosporins (5th gen.)" "" "" ""
|
||||||
"CAZ" "J01DD02" 5481173 "Ceftazidime" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"caz\", \"cefta\", \"cfta\", \"cftz\", \"taz\", \"tz\", \"xtz\")" "c(\"ceftazidim\", \"ceftazidima\", \"ceftazidime\", \"ceftazidimum\", \"ceptaz\", \"fortaz\", \"fortum\", \"pentacef\", \"tazicef\", \"tazidime\")" 4 "g" "c(\"21151-6\", \"3449-6\", \"80960-8\")"
|
"CAZ" 5481173 "Ceftazidime" "Cephalosporins (3rd gen.)" "J01DD02" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"caz\", \"cefta\", \"cfta\", \"cftz\", \"taz\", \"tz\", \"xtz\")" "c(\"ceftazidim\", \"ceftazidima\", \"ceftazidime\", \"ceftazidimum\", \"ceptaz\", \"fortaz\", \"fortum\", \"pentacef\", \"tazicef\", \"tazidime\")" 4 "g" "c(\"21151-6\", \"3449-6\", \"80960-8\")"
|
||||||
"CZA" "J01DD52" 90643431 "Ceftazidime/avibactam" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"\", \"cfav\")" "c(\"avycaz\", \"zavicefta\")" 6 "g" ""
|
"CZA" 90643431 "Ceftazidime/avibactam" "Cephalosporins (3rd gen.)" "c(\"\", \"cfav\")" "c(\"avycaz\", \"zavicefta\")" ""
|
||||||
"CCV" "J01DD52" 9575352 "Ceftazidime/clavulanic acid" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"czcl\", \"xtzl\")" "" 6 ""
|
"CCV" 9575352 "Ceftazidime/clavulanic acid" "Cephalosporins (3rd gen.)" "J01DD52" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"czcl\", \"xtzl\")" "" 6 "g" ""
|
||||||
"CEM" 6537431 "Cefteram" "Cephalosporins (3rd gen.)" "" "c(\"cefteram\", \"cefterame\", \"cefteramum\", \"ceftetrame\")" "character(0)"
|
"CEM" 6537431 "Cefteram" "Cephalosporins (3rd gen.)" "J01DD18" "" "c(\"cefteram\", \"cefterame\", \"cefteramum\", \"ceftetrame\")" 0.4 "g" "character(0)"
|
||||||
"CPL" 5362114 "Cefteram pivoxil" "Cephalosporins (3rd gen.)" "" "c(\"cefteram pivoxil\", \"tomiron\")" "character(0)"
|
"CPL" 5362114 "Cefteram pivoxil" "Cephalosporins (3rd gen.)" "" "c(\"cefteram pivoxil\", \"tomiron\")" "character(0)"
|
||||||
"CTL" "J01DB12" 65755 "Ceftezole" "Cephalosporins (1st gen.)" "Other beta-lactam antibacterials" "First-generation cephalosporins" "" "c(\"ceftezol\", \"ceftezole\", \"ceftezolo\", \"ceftezolum\", \"demethylcefazolin\")" 3 "g" "character(0)"
|
"CTL" 65755 "Ceftezole" "Cephalosporins (1st gen.)" "J01DB12" "Other beta-lactam antibacterials" "First-generation cephalosporins" "" "c(\"ceftezol\", \"ceftezole\", \"ceftezolo\", \"ceftezolum\", \"demethylcefazolin\")" 3 "g" "character(0)"
|
||||||
"CTB" "J01DD14" 5282242 "Ceftibuten" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cb\", \"cfbu\", \"ctb\", \"tib\")" "c(\"ceftem\", \"ceftibuten\", \"ceftibuten hydrate\", \"ceftibutene\", \"ceftibuteno\", \"ceftibutenum\", \"cephem\", \"ceprifran\", \"isocef\", \"keimax\")" 0.4 "g" "character(0)"
|
"CTB" 5282242 "Ceftibuten" "Cephalosporins (3rd gen.)" "J01DD14" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cb\", \"cfbu\", \"ctb\", \"tib\")" "c(\"ceftem\", \"ceftibuten\", \"ceftibuten hydrate\", \"ceftibutene\", \"ceftibuteno\", \"ceftibutenum\", \"cephem\", \"ceprifran\", \"isocef\", \"keimax\")" 0.4 "g" "character(0)"
|
||||||
"TIO" 6328657 "Ceftiofur" "Cephalosporins (3rd gen.)" "" "c(\"ceftiofur\", \"ceftiofurum\", \"excede\", \"excenel\", \"naxcel\")" "character(0)"
|
"TIO" 6328657 "Ceftiofur" "Cephalosporins (3rd gen.)" "" "c(\"ceftiofur\", \"ceftiofurum\", \"excede\", \"excenel\", \"naxcel\")" "character(0)"
|
||||||
"CZX" "J01DD07" 6533629 "Ceftizoxime" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cfzx\", \"ctz\", \"cz\", \"czx\", \"tiz\", \"zox\")" "c(\"cefizox\", \"ceftisomin\", \"ceftix\", \"ceftizoxima\", \"ceftizoxime\", \"ceftizoximum\", \"epocelin\", \"eposerin\")" 4 "g" "c(\"25243-7\", \"3450-4\")"
|
"CZX" 6533629 "Ceftizoxime" "Cephalosporins (3rd gen.)" "J01DD07" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"cfzx\", \"ctz\", \"cz\", \"czx\", \"tiz\", \"zox\")" "c(\"cefizox\", \"ceftisomin\", \"ceftix\", \"ceftizoxima\", \"ceftizoxime\", \"ceftizoximum\", \"epocelin\", \"eposerin\")" 4 "g" "c(\"25243-7\", \"3450-4\")"
|
||||||
"CZP" 9578661 "Ceftizoxime alapivoxil" "Cephalosporins (3rd gen.)" "" "" ""
|
"CZP" 9578661 "Ceftizoxime alapivoxil" "Cephalosporins (3rd gen.)" "" "" ""
|
||||||
"BPR" "J01DI01" 135413542 "Ceftobiprole" "Cephalosporins (5th gen.)" "" "ceftobiprole" 1.5 "character(0)"
|
"BPR" 135413542 "Ceftobiprole" "Cephalosporins (5th gen.)" "" "ceftobiprole" "character(0)"
|
||||||
"CFM1" "J01DI01" 135413544 "Ceftobiprole medocaril" "Cephalosporins (5th gen.)" "Other beta-lactam antibacterials" "Other cephalosporins" "" "" 1.5 ""
|
"CFM1" 135413544 "Ceftobiprole medocaril" "Cephalosporins (5th gen.)" "J01DI01" "Other beta-lactam antibacterials" "Other cephalosporins and penems" "" "" 1.5 "g" ""
|
||||||
"CEI" "J01DI54" "Ceftolozane/enzyme inhibitor" "Cephalosporins (5th gen.)" "Other beta-lactam antibacterials" "Other cephalosporins" "" "" 3 ""
|
"CEI" "Ceftolozane/enzyme inhibitor" "Cephalosporins (5th gen.)" "J01DI54" "Other beta-lactam antibacterials" "Other cephalosporins and penems" "" "" 3 "g" ""
|
||||||
"CZT" "Ceftolozane/tazobactam" "Cephalosporins (5th gen.)" "" "" ""
|
"CZT" "Ceftolozane/tazobactam" "Cephalosporins (5th gen.)" "" "" ""
|
||||||
"CRO" "J01DD04" 5479530 "Ceftriaxone" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"axo\", \"cax\", \"cftr\", \"cro\", \"ctr\", \"frx\", \"tx\")" "c(\"biotrakson\", \"cefatriaxone\", \"cefatriaxone hydrate\", \"ceftriaxon\", \"ceftriaxona\", \"ceftriaxone\", \"ceftriaxone sodium\", \"ceftriaxonum\", \"ceftriazone\", \"cephtriaxone\", \"longacef\", \"rocefin\", \"rocephalin\", \"rocephin\", \"rocephine\", \"rophex\")" 2 "g" "c(\"25244-5\", \"3451-2\", \"80957-4\")"
|
"CRO" 5479530 "Ceftriaxone" "Cephalosporins (3rd gen.)" "J01DD04" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"axo\", \"cax\", \"cftr\", \"cro\", \"ctr\", \"frx\", \"tx\")" "c(\"biotrakson\", \"cefatriaxone\", \"cefatriaxone hydrate\", \"ceftriaxon\", \"ceftriaxona\", \"ceftriaxone\", \"ceftriaxone sodium\", \"ceftriaxonum\", \"ceftriazone\", \"cephtriaxone\", \"longacef\", \"rocefin\", \"rocephalin\", \"rocephin\", \"rocephine\", \"rophex\")" 2 "g" "c(\"25244-5\", \"3451-2\", \"80957-4\")"
|
||||||
"CXM" "J01DC02" 5479529 "Cefuroxime" "Cephalosporins (2nd gen.)" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "c(\"cfrx\", \"cfur\", \"cfx\", \"crm\", \"cxm\", \"fur\", \"rox\", \"xm\")" "c(\"biofuroksym\", \"cefuril\", \"cefuroxim\", \"cefuroxime\", \"cefuroximine\", \"cefuroximo\", \"cefuroximum\", \"cephuroxime\", \"kefurox\", \"sharox\", \"zinacef\", \"zinacef danmark\")" 0.5 "g" 3 "g" "c(\"25245-2\", \"3452-0\", \"80608-3\", \"80617-4\")"
|
"CXM" 5479529 "Cefuroxime" "Cephalosporins (2nd gen.)" "c(\"J01DC02\", \"S01AA27\")" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "c(\"cfrx\", \"cfur\", \"cfx\", \"crm\", \"cxm\", \"fur\", \"rox\", \"xm\")" "c(\"biofuroksym\", \"cefuril\", \"cefuroxim\", \"cefuroxime\", \"cefuroximine\", \"cefuroximo\", \"cefuroximum\", \"cephuroxime\", \"kefurox\", \"sharox\", \"zinacef\", \"zinacef danmark\")" 0.5 "g" 3 "g" "c(\"25245-2\", \"3452-0\", \"80608-3\", \"80617-4\")"
|
||||||
"CXA" 6321416 "Cefuroxime axetil" "Cephalosporins (2nd gen.)" "c(\"\", \"cfax\")" "c(\"altacef\", \"bioracef\", \"cefaks\", \"cefazine\", \"ceftin\", \"cefuroximaxetil\", \"cefuroxime axetil\", \"celocid\", \"cepazine\", \"cethixim\", \"cetoxil\", \"coliofossim\", \"elobact\", \"forcef\", \"furoxime\", \"kalcef\", \"maxitil\", \"medoxm\", \"nivador\", \"zinnat\")" "character(0)"
|
"CXA" 6321416 "Cefuroxime axetil" "Cephalosporins (2nd gen.)" "c(\"\", \"cfax\")" "c(\"altacef\", \"bioracef\", \"cefaks\", \"cefazine\", \"ceftin\", \"cefuroximaxetil\", \"cefuroxime axetil\", \"celocid\", \"cepazine\", \"cethixim\", \"cetoxil\", \"coliofossim\", \"elobact\", \"forcef\", \"furoxime\", \"kalcef\", \"maxitil\", \"medoxm\", \"nivador\", \"zinnat\")" "character(0)"
|
||||||
"CFM2" "J01RA03" "Cefuroxime/metronidazole" "Other antibacterials" "Combinations of antibacterials" "Combinations of antibacterials" "" "" ""
|
"CFM2" "Cefuroxime/metronidazole" "Other antibacterials" "J01RA03" "Combinations of antibacterials" "Combinations of antibacterials" "" "" ""
|
||||||
"ZON" 6336505 "Cefuzonam" "Other antibacterials" "" "c(\"cefuzonam\", \"cefuzonam sodium\", \"cefuzoname\", \"cefuzonamum\")" "character(0)"
|
"ZON" 6336505 "Cefuzonam" "Other antibacterials" "" "c(\"cefuzonam\", \"cefuzonam sodium\", \"cefuzoname\", \"cefuzonamum\")" "character(0)"
|
||||||
"LEX" "J01DB01" 27447 "Cephalexin" "Cephalosporins (1st gen.)" "Other beta-lactam antibacterials" "First-generation cephalosporins" "c(\"\", \"cflx\")" "c(\"alcephin\", \"alexin\", \"alsporin\", \"anhydrous cefalexin\", \"anhydrous cephalexin\", \"biocef\", \"carnosporin\", \"cefablan\", \"cefadal\", \"cefadin\", \"cefadina\", \"cefaleksin\", \"cefalessina\", \"cefalexin\", \"cefalexin anhydrous\", \"cefalexina\", \"cefalexine\", \"cefalexinum\", \"cefalin\", \"cefaloto\", \"cefaseptin\", \"ceflax\", \"ceforal\", \"cefovit\", \"celexin\", \"cepastar\", \"cepexin\", \"cephacillin\", \"cephalexin\", \"cephalexin anhydrous\", \"cephalexine\", \"cephalexinum\", \"cephanasten\", \"cephaxin\", \"cephin\", \"ceporex\", \"ceporex forte\",
|
"LEX" 27447 "Cephalexin" "Cephalosporins (1st gen.)" "J01DB01" "Other beta-lactam antibacterials" "First-generation cephalosporins" "c(\"\", \"cflx\")" "c(\"alcephin\", \"alexin\", \"alsporin\", \"anhydrous cefalexin\", \"anhydrous cephalexin\", \"biocef\", \"carnosporin\", \"cefablan\", \"cefadal\", \"cefadin\", \"cefadina\", \"cefaleksin\", \"cefalessina\", \"cefalexin\", \"cefalexin anhydrous\", \"cefalexina\", \"cefalexine\", \"cefalexinum\", \"cefalin\", \"cefaloto\", \"cefaseptin\", \"ceflax\", \"ceforal\", \"cefovit\", \"celexin\", \"cepastar\", \"cepexin\", \"cephacillin\", \"cephalexin\", \"cephalexin anhydrous\", \"cephalexine\", \"cephalexinum\", \"cephanasten\", \"cephaxin\", \"cephin\", \"ceporex\", \"ceporex forte\",
|
||||||
\"ceporexin\", \"ceporexine\", \"cerexin\", \"cerexins\", \"cophalexin\", \"durantel\", \"durantel ds\", \"erocetin\", \"factagard\", \"felexin\", \"ibilex\", \"ibrexin\", \"inphalex\", \"kefalospes\", \"keflet\", \"keflex\", \"kefolan\", \"keforal\", \"keftab\", \"kekrinal\", \"kidolex\", \"lafarine\", \"larixin\", \"lenocef\", \"lexibiotico\", \"lonflex\", \"lopilexin\", \"madlexin\", \"mamalexin\", \"mamlexin\", \"medoxine\", \"neokef\", \"neolexina\", \"novolexin\", \"optocef\", \"oracef\", \"oriphex\", \"oroxin\", \"ortisporina\", \"ospexin\", \"palitrex\", \"panixine disperdose\",
|
\"ceporexin\", \"ceporexine\", \"cerexin\", \"cerexins\", \"cophalexin\", \"durantel\", \"durantel ds\", \"erocetin\", \"factagard\", \"felexin\", \"ibilex\", \"ibrexin\", \"inphalex\", \"kefalospes\", \"keflet\", \"keflex\", \"kefolan\", \"keforal\", \"keftab\", \"kekrinal\", \"kidolex\", \"lafarine\", \"larixin\", \"lenocef\", \"lexibiotico\", \"lonflex\", \"lopilexin\", \"madlexin\", \"mamalexin\", \"mamlexin\", \"medoxine\", \"neokef\", \"neolexina\", \"novolexin\", \"optocef\", \"oracef\", \"oriphex\", \"oroxin\", \"ortisporina\", \"ospexin\", \"palitrex\", \"panixine disperdose\",
|
||||||
\"pectril\", \"pyassan\", \"roceph\", \"roceph distab\", \"sanaxin\", \"sartosona\", \"sencephalin\", \"sepexin\", \"servispor\", \"sialexin\", \"sinthecillin\", \"sporicef\", \"sporidex\", \"syncle\", \"synecl\", \"tepaxin\", \"tokiolexin\", \"uphalexin\", \"voxxim\", \"winlex\", \"zozarine\")" 2 "g" "c(\"21175-5\", \"3453-8\")"
|
\"pectril\", \"pyassan\", \"roceph\", \"roceph distab\", \"sanaxin\", \"sartosona\", \"sencephalin\", \"sepexin\", \"servispor\", \"sialexin\", \"sinthecillin\", \"sporicef\", \"sporidex\", \"syncle\", \"synecl\", \"tepaxin\", \"tokiolexin\", \"uphalexin\", \"voxxim\", \"winlex\", \"zozarine\")" 2 "g" "c(\"21175-5\", \"3453-8\")"
|
||||||
"CEP" "J01DB03" 6024 "Cephalothin" "Cephalosporins (1st gen.)" "Other beta-lactam antibacterials" "First-generation cephalosporins" "c(\"cfal\", \"cflt\")" "c(\"cefalothin\", \"cefalotin\", \"cefalotina\", \"cefalotina fabra\", \"cefalotine\", \"cefalotinum\", \"cemastin\", \"cephalothinum\", \"cephalotin\", \"coaxin\", \"keflin\", \"seffin\")" 4 "g" "c(\"25246-0\", \"3454-6\")"
|
"CEP" 6024 "Cephalothin" "Cephalosporins (1st gen.)" "J01DB03" "Other beta-lactam antibacterials" "First-generation cephalosporins" "c(\"cfal\", \"cflt\")" "c(\"cefalothin\", \"cefalotin\", \"cefalotina\", \"cefalotina fabra\", \"cefalotine\", \"cefalotinum\", \"cemastin\", \"cephalothinum\", \"cephalotin\", \"coaxin\", \"keflin\", \"seffin\")" 4 "g" "c(\"25246-0\", \"3454-6\")"
|
||||||
"HAP" "J01DB08" 30699 "Cephapirin" "Cephalosporins (1st gen.)" "Other beta-lactam antibacterials" "First-generation cephalosporins" "" "c(\"ambrocef\", \"cefadyl\", \"cefapilin\", \"cefapirin\", \"cefapirina\", \"cefapirine\", \"cefapirinum\", \"cefaprin\", \"cefaprin sodium\", \"cefatrex\", \"cefatrexyl\", \"cephapirine\", \"metricure\")" 4 "g" "10980-1"
|
"HAP" 30699 "Cephapirin" "Cephalosporins (1st gen.)" "J01DB08" "Other beta-lactam antibacterials" "First-generation cephalosporins" "" "c(\"ambrocef\", \"cefadyl\", \"cefapilin\", \"cefapirin\", \"cefapirina\", \"cefapirine\", \"cefapirinum\", \"cefaprin\", \"cefaprin sodium\", \"cefatrex\", \"cefatrexyl\", \"cephapirine\", \"metricure\")" 4 "g" "10980-1"
|
||||||
"CED" "J01DB09" 38103 "Cephradine" "Cephalosporins (1st gen.)" "Other beta-lactam antibacterials" "First-generation cephalosporins" "c(\"cfra\", \"cfrd\")" "c(\"anspor\", \"cefradin\", \"cefradina\", \"cefradine\", \"cefradinum\", \"cekodin\", \"cephradin\", \"cephradine\", \"eskacef\", \"infexin\", \"megace f\", \"megacef\", \"sefril\", \"velocef\", \"velosef\")" 2 "g" 2 "g" "character(0)"
|
"CED" 38103 "Cephradine" "Cephalosporins (1st gen.)" "J01DB09" "Other beta-lactam antibacterials" "First-generation cephalosporins" "c(\"cfra\", \"cfrd\")" "c(\"anspor\", \"cefradin\", \"cefradina\", \"cefradine\", \"cefradinum\", \"cekodin\", \"cephradin\", \"cephradine\", \"eskacef\", \"infexin\", \"megace f\", \"megacef\", \"sefril\", \"velocef\", \"velosef\")" 2 "g" 2 "g" "character(0)"
|
||||||
"CTO" 71402 "Cetocycline" "Tetracyclines" "" "c(\"cetocycline\", \"cetocyline\", \"cetotetrine\")" "character(0)"
|
"CTO" 71402 "Cetocycline" "Tetracyclines" "" "c(\"cetocycline\", \"cetocyline\", \"cetotetrine\")" "character(0)"
|
||||||
"CHL" "J01BA01" 5959 "Chloramphenicol" "Amphenicols" "Amphenicols" "Amphenicols" "c(\"c\", \"chl\", \"chlo\", \"cl\")" "c(\"alficetyn\", \"ambofen\", \"amphenicol\", \"amphicol\", \"amseclor\", \"anacetin\", \"aquamycetin\", \"austracil\", \"austracol\", \"biocetin\", \"biophenicol\", \"catilan\", \"ch loramex\", \"chemiceticol\", \"chemicetin\", \"chemicetina\", \"chlomin\", \"chlomycol\", \"chloramex\", \"chloramfenikol\", \"chloramficin\", \"chloramfilin\", \"chloramphenicol\", \"chloramphenicole\", \"chloramphenicolum\", \"chloramsaar\", \"chlorasol\", \"chlorbiotic\", \"chloricol\", \"chlormycetin r\", \"chlornitromycin\", \"chloroamphenicol\", \"chlorocaps\", \"chlorocid\",
|
"CHL" 5959 "Chloramphenicol" "Amphenicols" "c(\"D06AX02\", \"D10AF03\", \"G01AA05\", \"J01BA01\", \"S01AA01\", \"S02AA01\", \"S03AA08\")" "Amphenicols" "Amphenicols" "c(\"c\", \"chl\", \"chlo\", \"cl\")" "c(\"alficetyn\", \"ambofen\", \"amphenicol\", \"amphicol\", \"amseclor\", \"anacetin\", \"aquamycetin\", \"austracil\", \"austracol\", \"biocetin\", \"biophenicol\", \"catilan\", \"ch loramex\", \"chemiceticol\", \"chemicetin\", \"chemicetina\", \"chlomin\", \"chlomycol\", \"chloramex\", \"chloramfenikol\", \"chloramficin\", \"chloramfilin\", \"chloramphenicol\", \"chloramphenicole\", \"chloramphenicolum\", \"chloramsaar\", \"chlorasol\", \"chlorbiotic\", \"chloricol\", \"chlormycetin r\", \"chlornitromycin\", \"chloroamphenicol\", \"chlorocaps\", \"chlorocid\",
|
||||||
\"chlorocid s\", \"chlorocide\", \"chlorocidin c\", \"chlorocidin c tetran\", \"chlorocin\", \"chlorocol\", \"chlorofair\", \"chloroject l\", \"chloromax\", \"chloromycetin\", \"chloromycetny\", \"chloromyxin\", \"chloronitrin\", \"chloroptic\", \"chloroptic s.o.p\", \"chloroptic s.o.p.\", \"chlorovules\", \"chlorsig\", \"cidocetine\", \"ciplamycetin\", \"cloramfen\", \"cloramfenicol\", \"cloramfenicolo\", \"cloramficin\", \"cloramical\", \"cloramicol\", \"cloramidina\", \"cloranfenicol\", \"cloroamfenicolo\", \"clorocyn\", \"cloromisan\", \"cloromissan\", \"clorosintex\",
|
\"chlorocid s\", \"chlorocide\", \"chlorocidin c\", \"chlorocidin c tetran\", \"chlorocin\", \"chlorocol\", \"chlorofair\", \"chloroject l\", \"chloromax\", \"chloromycetin\", \"chloromycetny\", \"chloromyxin\", \"chloronitrin\", \"chloroptic\", \"chloroptic s.o.p\", \"chloroptic s.o.p.\", \"chlorovules\", \"chlorsig\", \"cidocetine\", \"ciplamycetin\", \"cloramfen\", \"cloramfenicol\", \"cloramfenicolo\", \"cloramficin\", \"cloramical\", \"cloramicol\", \"cloramidina\", \"cloranfenicol\", \"cloroamfenicolo\", \"clorocyn\", \"cloromisan\", \"cloromissan\", \"clorosintex\",
|
||||||
\"comycetin\", \"cylphenicol\", \"desphen\", \"detreomycin\", \"detreomycine\", \"dextromycetin\", \"doctamicina\", \"duphenicol\", \"econochlor\", \"embacetin\", \"emetren\", \"enicol\", \"enteromycetin\", \"erbaplast\", \"ertilen\", \"f armicetina\", \"farmicetina\", \"fenicol\", \"globenicol\", \"glorous\", \"halomycetin\", \"hortfenicol\", \"interomycetine\", \"intramycetin\", \"intramyctin\", \"isicetin\", \"ismicetina\", \"isophenicol\", \"isopto fenicol\", \"juvamycetin\", \"kamaver\", \"kemicetina\", \"kemicetine\", \"kloramfenikol\", \"klorita\", \"klorocid s\",
|
\"comycetin\", \"cylphenicol\", \"desphen\", \"detreomycin\", \"detreomycine\", \"dextromycetin\", \"doctamicina\", \"duphenicol\", \"econochlor\", \"embacetin\", \"emetren\", \"enicol\", \"enteromycetin\", \"erbaplast\", \"ertilen\", \"f armicetina\", \"farmicetina\", \"fenicol\", \"globenicol\", \"glorous\", \"halomycetin\", \"hortfenicol\", \"interomycetine\", \"intramycetin\", \"intramyctin\", \"isicetin\", \"ismicetina\", \"isophenicol\", \"isopto fenicol\", \"juvamycetin\", \"kamaver\", \"kemicetina\", \"kemicetine\", \"kloramfenikol\", \"klorita\", \"klorocid s\",
|
||||||
\"laevomycetinum\", \"leukamycin\", \"leukomyan\", \"leukomycin\", \"levocin\", \"levomicetina\", \"levomitsetin\", \"levomycetin\", \"levoplast\", \"levosin\", \"levovetin\", \"loromicetina\", \"loromisan\", \"loromisin\", \"mastiphen\", \"mediamycetine\", \"medichol\", \"micloretin\", \"micochlorine\", \"micoclorina\", \"microcetina\", \"mychel\", \"mycinol\", \"myclocin\", \"mycochlorin\", \"myscel\", \"normimycin v\", \"novochlorocap\", \"novomycetin\", \"novophenicol\", \"ocuphenicol\", \"oftalent\", \"oleomycetin\", \"opclor\", \"opelor\", \"ophthochlor\", \"ophthocort\",
|
\"laevomycetinum\", \"leukamycin\", \"leukomyan\", \"leukomycin\", \"levocin\", \"levomicetina\", \"levomitsetin\", \"levomycetin\", \"levoplast\", \"levosin\", \"levovetin\", \"loromicetina\", \"loromisan\", \"loromisin\", \"mastiphen\", \"mediamycetine\", \"medichol\", \"micloretin\", \"micochlorine\", \"micoclorina\", \"microcetina\", \"mychel\", \"mycinol\", \"myclocin\", \"mycochlorin\", \"myscel\", \"normimycin v\", \"novochlorocap\", \"novomycetin\", \"novophenicol\", \"ocuphenicol\", \"oftalent\", \"oleomycetin\", \"opclor\", \"opelor\", \"ophthochlor\", \"ophthocort\",
|
||||||
\"ophtochlor\", \"optomycin\", \"otachron\", \"otophen\", \"pantovernil\", \"paraxin\", \"pentamycetin\", \"quemicetina\", \"rivomycin\", \"romphenil\", \"ronfenil\", \"ronphenil\", \"septicol\", \"sificetina\", \"sintomicetina\", \"sintomicetine r\", \"sno phenicol\", \"soluthor\", \"stanomycetin\", \"synthomycetin\", \"synthomycetine\", \"synthomycine\", \"syntomycin\", \"tevcocin\", \"tevcosin\", \"tifomycin\", \"tifomycine\", \"tiromycetin\", \"treomicetina\", \"unimycetin\", \"veticol\", \"vice ton\", \"viceton\")" 3 "g" 3 "g" "c(\"15101-9\", \"16603-3\", \"16604-1\", \"25247-8\", \"29214-4\", \"29346-4\", \"29347-2\", \"3455-3\")"
|
\"ophtochlor\", \"optomycin\", \"otachron\", \"otophen\", \"pantovernil\", \"paraxin\", \"pentamycetin\", \"quemicetina\", \"rivomycin\", \"romphenil\", \"ronfenil\", \"ronphenil\", \"septicol\", \"sificetina\", \"sintomicetina\", \"sintomicetine r\", \"sno phenicol\", \"soluthor\", \"stanomycetin\", \"synthomycetin\", \"synthomycetine\", \"synthomycine\", \"syntomycin\", \"tevcocin\", \"tevcosin\", \"tifomycin\", \"tifomycine\", \"tiromycetin\", \"treomicetina\", \"unimycetin\", \"veticol\", \"vice ton\", \"viceton\")" 3 "g" 3 "g" "c(\"15101-9\", \"16603-3\", \"16604-1\", \"25247-8\", \"29214-4\", \"29346-4\", \"29347-2\", \"3455-3\")"
|
||||||
"CTE" "J01AA03" 54675777 "Chlortetracycline" "Tetracyclines" "Tetracyclines" "Tetracyclines" "" "c(\"acronize\", \"aueromycin\", \"aureocina\", \"aureomycin\", \"aureomykoin\", \"biomitsin\", \"biomycin\", \"biomycin a\", \"chlormax\", \"chlorotetracycline\", \"chlortetracycline\", \"chlortetracyclinum\", \"chrysomykine\", \"clortetraciclina\", \"duomycin\", \"flamycin\", \"uromycin\")" 1 "g" "87600-3"
|
"CTE" 54675777 "Chlortetracycline" "Tetracyclines" "c(\"A01AB21\", \"D06AA02\", \"J01AA03\", \"S01AA02\")" "Tetracyclines" "Tetracyclines" "" "c(\"acronize\", \"aueromycin\", \"aureocina\", \"aureomycin\", \"aureomykoin\", \"biomitsin\", \"biomycin\", \"biomycin a\", \"chlormax\", \"chlorotetracycline\", \"chlortetracycline\", \"chlortetracyclinum\", \"chrysomykine\", \"clortetraciclina\", \"duomycin\", \"flamycin\", \"uromycin\")" 1 "g" "87600-3"
|
||||||
"CIC" 19003 "Ciclacillin" "Beta-lactams/penicillins" "" "c(\"bastcillin\", \"calthor\", \"ciclacilina\", \"ciclacillin\", \"ciclacilline\", \"ciclacillinum\", \"ciclacillum\", \"citosarin\", \"cyclacillin\", \"cyclapen\", \"noblicil\", \"orfilina\", \"peamezin\", \"syngacillin\", \"ultracillin\", \"vastcillin\", \"vipicil\", \"wyvital\")" "character(0)"
|
"CIC" 19003 "Ciclacillin" "Beta-lactams/penicillins" "" "c(\"bastcillin\", \"calthor\", \"ciclacilina\", \"ciclacillin\", \"ciclacilline\", \"ciclacillinum\", \"ciclacillum\", \"citosarin\", \"cyclacillin\", \"cyclapen\", \"noblicil\", \"orfilina\", \"peamezin\", \"syngacillin\", \"ultracillin\", \"vastcillin\", \"vipicil\", \"wyvital\")" "character(0)"
|
||||||
"CIX" "D01AE14" 47472 "Ciclopirox" "Antifungals/antimycotics" "Antifungals for topical use" "Other antifungals for topical use" "cipx" "c(\"butaconazole\", \"butoconazol\", \"butoconazole\", \"butoconazolum\", \"compositenstarke\", \"dahlin\", \"femstat\", \"gynofort\", \"polyfructosanum\")" "character(0)"
|
"CIX" 47472 "Ciclopirox" "Antifungals/antimycotics" "c(\"D01AE14\", \"G01AX12\")" "Antifungals for topical use" "Other antifungals for topical use" "cipx" "c(\"butaconazole\", \"butoconazol\", \"butoconazole\", \"butoconazolum\", \"compositenstarke\", \"dahlin\", \"femstat\", \"gynofort\", \"polyfructosanum\")" "character(0)"
|
||||||
"CIN" "J01MB06" 2762 "Cinoxacin" "Quinolones" "Quinolone antibacterials" "Other quinolones" "c(\"cino\", \"cnox\")" "c(\"azolinic acid\", \"cinobac\", \"cinobactin\", \"cinoxacin\", \"cinoxacine\", \"cinoxacino\", \"cinoxacinum\", \"clinoxacin\", \"noxigram\", \"uronorm\")" 1 "g" "character(0)"
|
"CIN" 2762 "Cinoxacin" "Quinolones" "J01MB06" "Quinolone antibacterials" "Other quinolones" "c(\"cino\", \"cnox\")" "c(\"azolinic acid\", \"cinobac\", \"cinobactin\", \"cinoxacin\", \"cinoxacine\", \"cinoxacino\", \"cinoxacinum\", \"clinoxacin\", \"noxigram\", \"uronorm\")" 1 "g" "character(0)"
|
||||||
"CIP" "J01MA02" 2764 "Ciprofloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "c(\"ci\", \"cip\", \"cipr\", \"cp\")" "c(\"alcon cilox\", \"auripro\", \"bacquinor\", \"baflox\", \"baycip\", \"bernoflox\", \"cetraxal\", \"ciflox\", \"cifloxin\", \"ciloxan\", \"ciplus\", \"ciprecu\", \"ciprine\", \"ciprinol\", \"cipro i.v.\", \"cipro iv\", \"cipro xl\", \"cipro xr\", \"ciprobay\", \"ciprobay uro\", \"ciprocinol\", \"ciprodar\", \"ciproflox\", \"ciprofloxacin\", \"ciprofloxacina\", \"ciprofloxacine\", \"ciprofloxacino\", \"ciprofloxacinum\", \"ciprogis\", \"ciprolin\", \"ciprolon\", \"cipromycin\", \"ciproquinol\", \"ciprowin\", \"ciproxan\", \"ciproxin\", \"ciproxina\", \"ciproxine\", \"ciriax\",
|
"CIP" 2764 "Ciprofloxacin" "Quinolones" "c(\"J01MA02\", \"S01AE03\", \"S02AA15\", \"S03AA07\")" "Quinolone antibacterials" "Fluoroquinolones" "c(\"ci\", \"cip\", \"cipr\", \"cp\")" "c(\"alcon cilox\", \"auripro\", \"bacquinor\", \"baflox\", \"baycip\", \"bernoflox\", \"cetraxal\", \"ciflox\", \"cifloxin\", \"ciloxan\", \"ciplus\", \"ciprecu\", \"ciprine\", \"ciprinol\", \"cipro i.v.\", \"cipro iv\", \"cipro xl\", \"cipro xr\", \"ciprobay\", \"ciprobay uro\", \"ciprocinol\", \"ciprodar\", \"ciproflox\", \"ciprofloxacin\", \"ciprofloxacina\", \"ciprofloxacine\", \"ciprofloxacino\", \"ciprofloxacinum\", \"ciprogis\", \"ciprolin\", \"ciprolon\", \"cipromycin\", \"ciproquinol\", \"ciprowin\", \"ciproxan\", \"ciproxin\", \"ciproxina\", \"ciproxine\", \"ciriax\",
|
||||||
\"citopcin\", \"corsacin\", \"cyprobay\", \"fimoflox\", \"flociprin\", \"ipiflox\", \"italnik\", \"linhaliq\", \"otiprio\", \"probiox\", \"proflaxin\", \"quinolid\", \"quintor\", \"rancif\", \"roxytal\", \"septicide\", \"sophixin ofteno\", \"spitacin\", \"superocin\", \"velmonit\", \"velomonit\", \"zumaflox\")" 1 "g" 0.8 "g" "c(\"14031-9\", \"14032-7\", \"14058-2\", \"14059-0\", \"25248-6\", \"34636-1\", \"3484-3\")"
|
\"citopcin\", \"corsacin\", \"cyprobay\", \"fimoflox\", \"flociprin\", \"ipiflox\", \"italnik\", \"linhaliq\", \"otiprio\", \"probiox\", \"proflaxin\", \"quinolid\", \"quintor\", \"rancif\", \"roxytal\", \"septicide\", \"sophixin ofteno\", \"spitacin\", \"superocin\", \"velmonit\", \"velomonit\", \"zumaflox\")" 1 "g" 0.8 "g" "c(\"14031-9\", \"14032-7\", \"14058-2\", \"14059-0\", \"25248-6\", \"34636-1\", \"3484-3\")"
|
||||||
"CLR" "J01FA09" 84029 "Clarithromycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Macrolides" "c(\"ch\", \"cla\", \"clar\", \"clm\", \"clr\")" "c(\"abbotic\", \"astromen\", \"biaxin\", \"biaxin filmtab\", \"biaxin hp\", \"biaxin xl\", \"biaxin xl filmtab\", \"bicrolid\", \"clacee\", \"clacid\", \"clacine\", \"clambiotic\", \"clarem\", \"claribid\", \"claricide\", \"claridar\", \"claripen\", \"clarith\", \"clarithromycin\", \"clarithromycine\", \"clarithromycinum\", \"claritromicina\", \"clathromycin\", \"crixan\", \"cyllid\", \"cyllind\", \"fromilid\", \"heliclar\", \"klabax\", \"klacid\", \"klaciped\", \"klaricid\", \"klaricid h.p\", \"klaricid h.p.\", \"klaricid pediatric\", \"klaricid xl\", \"klarid\", \"klarin\",
|
"CLR" 84029 "Clarithromycin" "Macrolides/lincosamides" "J01FA09" "Macrolides, lincosamides and streptogramins" "Macrolides" "c(\"ch\", \"cla\", \"clar\", \"clm\", \"clr\")" "c(\"abbotic\", \"astromen\", \"biaxin\", \"biaxin filmtab\", \"biaxin hp\", \"biaxin xl\", \"biaxin xl filmtab\", \"bicrolid\", \"clacee\", \"clacid\", \"clacine\", \"clambiotic\", \"clarem\", \"claribid\", \"claricide\", \"claridar\", \"claripen\", \"clarith\", \"clarithromycin\", \"clarithromycine\", \"clarithromycinum\", \"claritromicina\", \"clathromycin\", \"crixan\", \"cyllid\", \"cyllind\", \"fromilid\", \"heliclar\", \"klabax\", \"klacid\", \"klaciped\", \"klaricid\", \"klaricid h.p\", \"klaricid h.p.\", \"klaricid pediatric\", \"klaricid xl\", \"klarid\", \"klarin\",
|
||||||
\"kofron\", \"mabicrol\", \"macladin\", \"maclar\", \"veclam\", \"vikrol\", \"zeclar\")" 0.5 "g" 1 "g" "c(\"16619-9\", \"25253-6\", \"34638-7\", \"80559-8\")"
|
\"kofron\", \"mabicrol\", \"macladin\", \"maclar\", \"veclam\", \"vikrol\", \"zeclar\")" 0.5 "g" 1 "g" "c(\"16619-9\", \"25253-6\", \"34638-7\", \"80559-8\")"
|
||||||
"CLA1" 5280980 "Clavulanic acid" "Other antibacterials" "" "c(\"acide clavulanique\", \"acido clavulanico\", \"acidum clavulanicum\", \"clavulanate\", \"clavulanate acid\", \"clavulanate lithium\", \"clavulanic acid\", \"clavulansaeure\", \"clavulansaure\", \"clavulinic acid\", \"clavulox\", \"sodium clavulanate\")" "character(0)"
|
"CLA1" 5280980 "Clavulanic acid" "Other antibacterials" "" "c(\"acide clavulanique\", \"acido clavulanico\", \"acidum clavulanicum\", \"clavulanate\", \"clavulanate acid\", \"clavulanate lithium\", \"clavulanic acid\", \"clavulansaeure\", \"clavulansaure\", \"clavulinic acid\", \"clavulox\", \"sodium clavulanate\")" "character(0)"
|
||||||
"CLX" 60063 "Clinafloxacin" "Quinolones" "" "clinafloxacin" "character(0)"
|
"CLX" 60063 "Clinafloxacin" "Quinolones" "" "clinafloxacin" "character(0)"
|
||||||
"CLI" "J01FF01" 446598 "Clindamycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Lincosamides" "c(\"cc\", \"cd\", \"cli\", \"clin\", \"cm\", \"da\")" "c(\"antirobe\", \"chlolincocin\", \"clindaderm\", \"clindamicina\", \"clindamycin\", \"clindamycine\", \"clindamycinum\", \"clinimycin\", \"dalacin c\", \"dalacine\", \"klimicin\", \"sobelin\")" 1.2 "g" 1.8 "g" "c(\"16621-5\", \"16622-3\", \"25249-4\", \"3486-8\")"
|
"CLI" 446598 "Clindamycin" "Macrolides/lincosamides" "c(\"D10AF01\", \"G01AA10\", \"J01FF01\")" "Macrolides, lincosamides and streptogramins" "Lincosamides" "c(\"cc\", \"cd\", \"cli\", \"clin\", \"cm\", \"da\")" "c(\"antirobe\", \"chlolincocin\", \"clindaderm\", \"clindamicina\", \"clindamycin\", \"clindamycine\", \"clindamycinum\", \"clinimycin\", \"dalacin c\", \"dalacine\", \"klimicin\", \"sobelin\")" 1.2 "g" 1.8 "g" "c(\"16621-5\", \"16622-3\", \"25249-4\", \"3486-8\")"
|
||||||
"CLF" "J04BA01" 2794 "Clofazimine" "Antimycobacterials" "Drugs for treatment of lepra" "Drugs for treatment of lepra" "clof" "c(\"chlofazimine\", \"clofazimin\", \"clofazimina\", \"clofazimine\", \"clofaziminum\", \"lampren\", \"lamprene\", \"riminophenazine\")" 0.1 "g" "character(0)"
|
"CLF" 2794 "Clofazimine" "Antimycobacterials" "J04BA01" "Drugs for treatment of lepra" "Drugs for treatment of lepra" "clof" "c(\"chlofazimine\", \"clofazimin\", \"clofazimina\", \"clofazimine\", \"clofaziminum\", \"lampren\", \"lamprene\", \"riminophenazine\")" 0.1 "g" "character(0)"
|
||||||
"CLF1" "J01XX03" 2799 "Clofoctol" "Other antibacterials" "Other antibacterials" "Other antibacterials" "" "c(\"clofoctol\", \"clofoctolo\", \"clofoctolum\", \"gramplus\", \"octofene\")" "character(0)"
|
"CLF1" 2799 "Clofoctol" "Other antibacterials" "J01XX03" "Other antibacterials" "Other antibacterials" "" "c(\"clofoctol\", \"clofoctolo\", \"clofoctolum\", \"gramplus\", \"octofene\")" "character(0)"
|
||||||
"CLM" "J01CE07" 71807 "Clometocillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "" "c(\"chlomethocillin\", \"clometacillin\", \"clometocilina\", \"clometocillin\", \"clometocilline\", \"clometocillinum\", \"rixapen\")" 1 "g" "character(0)"
|
"CLM" 71807 "Clometocillin" "Beta-lactams/penicillins" "J01CE07" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "" "c(\"chlomethocillin\", \"clometacillin\", \"clometocilina\", \"clometocillin\", \"clometocilline\", \"clometocillinum\", \"rixapen\")" 1 "g" "character(0)"
|
||||||
"CLM1" "J01AA11" 54680675 "Clomocycline" "Tetracyclines" "Tetracyclines" "Tetracyclines" "" "c(\"chlormethylencycline\", \"clomociclina\", \"clomocyclin\", \"clomocycline\", \"clomocyclinum\", \"megaclor\")" 1 "g" "character(0)"
|
"CLM1" 54680675 "Clomocycline" "Tetracyclines" "J01AA11" "Tetracyclines" "Tetracyclines" "" "c(\"chlormethylencycline\", \"clomociclina\", \"clomocyclin\", \"clomocycline\", \"clomocyclinum\", \"megaclor\")" 1 "g" "character(0)"
|
||||||
"CTR" "G01AF02" 2812 "Clotrimazole" "Antifungals/antimycotics" "clot" "c(\"canesten\", \"canesten cream\", \"canesten solution\", \"canestene\", \"canestine\", \"canifug\", \"chlotrimazole\", \"cimitidine\", \"clomatin\", \"clotrimaderm\", \"clotrimaderm cream\", \"clotrimazol\", \"clotrimazole\", \"clotrimazolum\", \"cutistad\", \"desamix f\", \"diphenylmethane\", \"empecid\", \"esparol\", \"fem care\", \"femcare\", \"gyne lotrimin\", \"jidesheng\", \"kanesten\", \"klotrimazole\", \"lotrimax\", \"lotrimin\", \"lotrimin af\", \"lotrimin af cream\", \"lotrimin af lotion\", \"lotrimin af solution\", \"lotrimin cream\", \"lotrimin lotion\",
|
"CTR" 2812 "Clotrimazole" "Antifungals/antimycotics" "c(\"A01AB18\", \"D01AC01\", \"G01AF02\")" "clot" "c(\"canesten\", \"canesten cream\", \"canesten solution\", \"canestene\", \"canestine\", \"canifug\", \"chlotrimazole\", \"cimitidine\", \"clomatin\", \"clotrimaderm\", \"clotrimaderm cream\", \"clotrimazol\", \"clotrimazole\", \"clotrimazolum\", \"cutistad\", \"desamix f\", \"diphenylmethane\", \"empecid\", \"esparol\", \"fem care\", \"femcare\", \"gyne lotrimin\", \"jidesheng\", \"kanesten\", \"klotrimazole\", \"lotrimax\", \"lotrimin\", \"lotrimin af\", \"lotrimin af cream\", \"lotrimin af lotion\", \"lotrimin af solution\", \"lotrimin cream\", \"lotrimin lotion\",
|
||||||
\"lotrimin solution\", \"monobaycuten\", \"mycelax\", \"mycelex\", \"mycelex cream\", \"mycelex g\", \"mycelex otc\", \"mycelex solution\", \"mycelex troches\", \"mycelex twin pack\", \"myclo cream\", \"myclo solution\", \"myclo spray solution\", \"mycofug\", \"mycosporin\", \"mykosporin\", \"nalbix\", \"otomax\", \"pedisafe\", \"rimazole\", \"stiemazol\", \"tibatin\", \"trimysten\", \"veltrim\")" "character(0)"
|
\"lotrimin solution\", \"monobaycuten\", \"mycelax\", \"mycelex\", \"mycelex cream\", \"mycelex g\", \"mycelex otc\", \"mycelex solution\", \"mycelex troches\", \"mycelex twin pack\", \"myclo cream\", \"myclo solution\", \"myclo spray solution\", \"mycofug\", \"mycosporin\", \"mykosporin\", \"nalbix\", \"otomax\", \"pedisafe\", \"rimazole\", \"stiemazol\", \"tibatin\", \"trimysten\", \"veltrim\")" "character(0)"
|
||||||
"CLO" "J01CF02" 6098 "Cloxacillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase resistant penicillins" "c(\"\", \"clox\")" "c(\"chloroxacillin\", \"clossacillina\", \"cloxacilina\", \"cloxacillin\", \"cloxacillin sodium\", \"cloxacilline\", \"cloxacillinna\", \"cloxacillinum\", \"cloxapen\", \"methocillin s\", \"orbenin\", \"syntarpen\", \"tegopen\")" 2 "g" 2 "g" "c(\"16628-0\", \"25250-2\")"
|
"CLO" 6098 "Cloxacillin" "Beta-lactams/penicillins" "J01CF02" "Beta-lactam antibacterials, penicillins" "Beta-lactamase resistant penicillins" "c(\"\", \"clox\")" "c(\"chloroxacillin\", \"clossacillina\", \"cloxacilina\", \"cloxacillin\", \"cloxacillin sodium\", \"cloxacilline\", \"cloxacillinna\", \"cloxacillinum\", \"cloxapen\", \"methocillin s\", \"orbenin\", \"syntarpen\", \"tegopen\")" 2 "g" 2 "g" "c(\"16628-0\", \"25250-2\")"
|
||||||
"COL" "J01XB01" 5311054 "Colistin" "Polymyxins" "Other antibacterials" "Polymyxins" "c(\"cl\", \"coli\", \"cs\", \"cst\", \"ct\")" "c(\"belcomycine\", \"colimycin\", \"colimycin sulphate\", \"colisticin\", \"colistimethate\", \"colistimethate sodium\", \"colistin sulfate\", \"colistin sulphate\", \"colomycin\", \"coly-mycin\", \"polymyxin e\", \"polymyxin e. sulfate\", \"promixin\", \"totazina\")" 9 "MU" "c(\"16645-4\", \"29493-4\")"
|
"COL" 5311054 "Colistin" "Polymyxins" "c(\"A07AA10\", \"J01XB01\")" "Other antibacterials" "Polymyxins" "c(\"cl\", \"coli\", \"cs\", \"cst\", \"ct\")" "c(\"belcomycine\", \"colimycin\", \"colimycin sulphate\", \"colisticin\", \"colistimethate\", \"colistimethate sodium\", \"colistin sulfate\", \"colistin sulphate\", \"colomycin\", \"coly-mycin\", \"polymyxin e\", \"polymyxin e. sulfate\", \"promixin\", \"totazina\")" 9 "MU" 9 "MU" "c(\"16645-4\", \"29493-4\")"
|
||||||
"COP" "Colistin/polysorbate" "Other antibacterials" "" "" ""
|
"COP" "Colistin/polysorbate" "Other antibacterials" "" "" ""
|
||||||
"CYC" "J04AB01" 6234 "Cycloserine" "Oxazolidinones" "Drugs for treatment of tuberculosis" "Antibiotics" "cycl" "c(\"cicloserina\", \"closerin\", \"closina\", \"cyclorin\", \"cycloserin\", \"cycloserine\", \"cycloserinum\", \"farmiserina\", \"micoserina\", \"miroserina\", \"miroseryn\", \"novoserin\", \"oxamicina\", \"oxamycin\", \"seromycin\", \"tebemicina\", \"tisomycin\", \"wasserina\")" 0.75 "g" "c(\"16702-3\", \"25251-0\", \"3519-6\")"
|
"CYC" 6234 "Cycloserine" "Oxazolidinones" "J04AB01" "Drugs for treatment of tuberculosis" "Antibiotics" "cycl" "c(\"cicloserina\", \"closerin\", \"closina\", \"cyclorin\", \"cycloserin\", \"cycloserine\", \"cycloserinum\", \"farmiserina\", \"micoserina\", \"miroserina\", \"miroseryn\", \"novoserin\", \"oxamicina\", \"oxamycin\", \"seromycin\", \"tebemicina\", \"tisomycin\", \"wasserina\")" 0.75 "g" "c(\"16702-3\", \"25251-0\", \"3519-6\")"
|
||||||
"DAL" "J01XA04" 23724878 "Dalbavancin" "Glycopeptides" "Other antibacterials" "Glycopeptide antibacterials" "dalb" "c(\"dalbavancin\", \"dalvance\")" 1.5 "character(0)"
|
"DAL" 23724878 "Dalbavancin" "Glycopeptides" "J01XA04" "Other antibacterials" "Glycopeptide antibacterials" "dalb" "c(\"dalbavancin\", \"dalvance\")" 1.5 "g" "character(0)"
|
||||||
"DAN" 71335 "Danofloxacin" "Quinolones" "" "c(\"advocin\", \"danofloxacin\", \"danofloxacine\", \"danofloxacino\", \"danofloxacinum\")" "character(0)"
|
"DAN" 71335 "Danofloxacin" "Quinolones" "" "c(\"advocin\", \"danofloxacin\", \"danofloxacine\", \"danofloxacino\", \"danofloxacinum\")" "character(0)"
|
||||||
"DPS" "J04BA02" 2955 "Dapsone" "Other antibacterials" "Drugs for treatment of lepra" "Drugs for treatment of lepra" "" "c(\"aczone\", \"araldite ht\", \"atrisone\", \"avlosulfon\", \"avlosulfone\", \"avlosulphone\", \"avsulfor\", \"bis sulfone\", \"bissulfone\", \"bissulphone\", \"croysulfone\", \"croysulphone\", \"dapson\", \"dapsona\", \"dapsone\", \"dapsonum\", \"di sulfone\", \"diaphenyl sulfone\", \"diaphenylsulfon\", \"diaphenylsulfone\", \"diaphenylsulphon\", \"diaphenylsulphone\", \"dimitone\", \"diphenasone\", \"diphone\", \"disulfone\", \"disulone\", \"disulphone\", \"dubronax\", \"dubronaz\", \"dumitone\", \"eporal\", \"metabolite c\", \"novophone\", \"protogen\", \"servidapson\",
|
"DPS" 2955 "Dapsone" "Other antibacterials" "c(\"D10AX05\", \"J04BA02\")" "Drugs for treatment of lepra" "Drugs for treatment of lepra" "" "c(\"aczone\", \"araldite ht\", \"atrisone\", \"avlosulfon\", \"avlosulfone\", \"avlosulphone\", \"avsulfor\", \"bis sulfone\", \"bissulfone\", \"bissulphone\", \"croysulfone\", \"croysulphone\", \"dapson\", \"dapsona\", \"dapsone\", \"dapsonum\", \"di sulfone\", \"diaphenyl sulfone\", \"diaphenylsulfon\", \"diaphenylsulfone\", \"diaphenylsulphon\", \"diaphenylsulphone\", \"dimitone\", \"diphenasone\", \"diphone\", \"disulfone\", \"disulone\", \"disulphone\", \"dubronax\", \"dubronaz\", \"dumitone\", \"eporal\", \"metabolite c\", \"novophone\", \"protogen\", \"servidapson\",
|
||||||
\"slphadione\", \"sulfadione\", \"sulfona\", \"sulfone ucb\", \"sulfonyldianiline\", \"sulphadione\", \"sulphonyldianiline\", \"sumicure s\", \"tarimyl\", \"udolac\", \"wln: zr dswr dz\")" 50 "mg" "9747-7"
|
\"slphadione\", \"sulfadione\", \"sulfona\", \"sulfone ucb\", \"sulfonyldianiline\", \"sulphadione\", \"sulphonyldianiline\", \"sumicure s\", \"tarimyl\", \"udolac\", \"wln: zr dswr dz\")" 50 "mg" "9747-7"
|
||||||
"DAP" "J01XX09" 16134395 "Daptomycin" "Other antibacterials" "Other antibacterials" "Other antibacterials" "c(\"dap\", \"dapt\")" "c(\"cidecin\", \"cubicin\", \"dapcin\", \"daptomicina\", \"daptomycine\", \"daptomycinum\")" 0.28 "g" "character(0)"
|
"DAP" 16134395 "Daptomycin" "Other antibacterials" "J01XX09" "Other antibacterials" "Other antibacterials" "c(\"dap\", \"dapt\")" "c(\"cidecin\", \"cubicin\", \"dapcin\", \"daptomicina\", \"daptomycine\", \"daptomycinum\")" 0.28 "g" "character(0)"
|
||||||
"DFX" 487101 "Delafloxacin" "Quinolones" "" "c(\"baxdela\", \"delafloxacin\", \"delafloxacinum\")" "character(0)"
|
"DFX" 487101 "Delafloxacin" "Quinolones" "J01MA23" "" "c(\"baxdela\", \"delafloxacin\", \"delafloxacinum\")" 0.9 "g" 0.6 "g" "character(0)"
|
||||||
"DLM" "J04AK06" 6480466 "Delamanid" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Other drugs for treatment of tuberculosis" "dela" "c(\"delamanid\", \"deltyba\")" 0.2 "character(0)"
|
"DLM" 6480466 "Delamanid" "Antimycobacterials" "J04AK06" "Drugs for treatment of tuberculosis" "Other drugs for treatment of tuberculosis" "dela" "c(\"delamanid\", \"deltyba\")" 0.2 "g" "character(0)"
|
||||||
"DEM" "J01AA01" 54680690 "Demeclocycline" "Tetracyclines" "Tetracyclines" "Tetracyclines" "" "c(\"bioterciclin\", \"clortetrin\", \"deganol\", \"demeclociclina\", \"demeclocycline\", \"demeclocyclinum\", \"demeclor\", \"demetraclin\", \"diuciclin\", \"elkamicina\", \"ledermycin\", \"mexocine\", \"novotriclina\", \"perciclina\", \"sumaclina\")" 0.6 "g" "c(\"10982-7\", \"29494-2\")"
|
"DEM" 54680690 "Demeclocycline" "Tetracyclines" "c(\"D06AA01\", \"J01AA01\")" "Tetracyclines" "Tetracyclines" "" "c(\"bioterciclin\", \"clortetrin\", \"deganol\", \"demeclociclina\", \"demeclocycline\", \"demeclocyclinum\", \"demeclor\", \"demetraclin\", \"diuciclin\", \"elkamicina\", \"ledermycin\", \"mexocine\", \"novotriclina\", \"perciclina\", \"sumaclina\")" 0.6 "g" "c(\"10982-7\", \"29494-2\")"
|
||||||
"DKB" "J01GB09" 470999 "Dibekacin" "Aminoglycosides" "Aminoglycoside antibacterials" "Other aminoglycosides" "" "c(\"debecacin\", \"dibekacin\", \"dibekacin sulfate\", \"dibekacina\", \"dibekacine\", \"dibekacinum\", \"dideoxykanamycin b\", \"kappati\", \"orbicin\", \"panamicin\")" 0.14 "g" "character(0)"
|
"DKB" 470999 "Dibekacin" "Aminoglycosides" "J01GB09" "Aminoglycoside antibacterials" "Other aminoglycosides" "" "c(\"debecacin\", \"dibekacin\", \"dibekacin sulfate\", \"dibekacina\", \"dibekacine\", \"dibekacinum\", \"dideoxykanamycin b\", \"kappati\", \"orbicin\", \"panamicin\")" 0.14 "g" "character(0)"
|
||||||
"DIC" "J01CF01" 18381 "Dicloxacillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase resistant penicillins" "c(\"\", \"dicl\")" "c(\"dichloroxacillin\", \"diclossacillina\", \"dicloxaciclin\", \"dicloxacilin\", \"dicloxacilina\", \"dicloxacillin\", \"dicloxacillin sodium\", \"dicloxacillina\", \"dicloxacilline\", \"dicloxacillinum\", \"dicloxacycline\", \"dycill\", \"dynapen\", \"maclicine\", \"nm|| dicloxacillin\", \"pathocil\")" 2 "g" 2 "g" "c(\"10984-3\", \"16769-2\", \"25252-8\")"
|
"DIC" 18381 "Dicloxacillin" "Beta-lactams/penicillins" "J01CF01" "Beta-lactam antibacterials, penicillins" "Beta-lactamase resistant penicillins" "c(\"\", \"dicl\")" "c(\"dichloroxacillin\", \"diclossacillina\", \"dicloxaciclin\", \"dicloxacilin\", \"dicloxacilina\", \"dicloxacillin\", \"dicloxacillin sodium\", \"dicloxacillina\", \"dicloxacilline\", \"dicloxacillinum\", \"dicloxacycline\", \"dycill\", \"dynapen\", \"maclicine\", \"nm|| dicloxacillin\", \"pathocil\")" 2 "g" 2 "g" "c(\"10984-3\", \"16769-2\", \"25252-8\")"
|
||||||
"DIF" 56206 "Difloxacin" "Quinolones" "" "difloxacin" "character(0)"
|
"DIF" 56206 "Difloxacin" "Quinolones" "" "difloxacin" "character(0)"
|
||||||
"DIR" "J01FA13" 6473883 "Dirithromycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"dirithromycin\", \"dirithromycine\", \"dirithromycinum\", \"diritromicina\", \"divitross\", \"dynabac\", \"noriclan\", \"valodin\")" 0.5 "g" "character(0)"
|
"DIR" 6473883 "Dirithromycin" "Macrolides/lincosamides" "J01FA13" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"dirithromycin\", \"dirithromycine\", \"dirithromycinum\", \"diritromicina\", \"divitross\", \"dynabac\", \"noriclan\", \"valodin\")" 0.5 "g" "character(0)"
|
||||||
"DOR" "J01DH04" 73303 "Doripenem" "Carbapenems" "Other beta-lactam antibacterials" "Carbapenems" "dori" "c(\"doribax\", \"doripenem\", \"doripenem hydrate\", \"finibax\")" 1.5 "character(0)"
|
"DOR" 73303 "Doripenem" "Carbapenems" "J01DH04" "Other beta-lactam antibacterials" "Carbapenems" "dori" "c(\"doribax\", \"doripenem\", \"doripenem hydrate\", \"finibax\")" 1.5 "g" "character(0)"
|
||||||
"DOX" "J01AA02" 54671203 "Doxycycline" "Tetracyclines" "Tetracyclines" "Tetracyclines" "c(\"dox\", \"doxy\")" "c(\"atridox\", \"azudoxat\", \"deoxymykoin\", \"dossiciclina\", \"doxcycline anhydrous\", \"doxiciclina\", \"doxitard\", \"doxivetin\", \"doxycen\", \"doxychel\", \"doxycin\", \"doxycyclin\", \"doxycycline\", \"doxycycline calcium\", \"doxycycline hyclate\", \"doxycyclinum\", \"doxylin\", \"doxysol\", \"doxytec\", \"doxytetracycline\", \"hydramycin\", \"investin\", \"jenacyclin\", \"liviatin\", \"monodox\", \"oracea\", \"periostat\", \"ronaxan\", \"spanor\", \"supracyclin\", \"vibramycin\", \"vibramycin novum\", \"vibramycine\", \"vibravenos\", \"zenavod\")" 0.1 "g" 0.1 "g" "c(\"10986-8\", \"21250-6\", \"26902-7\")"
|
"DOX" 54671203 "Doxycycline" "Tetracyclines" "c(\"A01AB22\", \"J01AA02\")" "Tetracyclines" "Tetracyclines" "c(\"dox\", \"doxy\")" "c(\"atridox\", \"azudoxat\", \"deoxymykoin\", \"dossiciclina\", \"doxcycline anhydrous\", \"doxiciclina\", \"doxitard\", \"doxivetin\", \"doxycen\", \"doxychel\", \"doxycin\", \"doxycyclin\", \"doxycycline\", \"doxycycline calcium\", \"doxycycline hyclate\", \"doxycyclinum\", \"doxylin\", \"doxysol\", \"doxytec\", \"doxytetracycline\", \"hydramycin\", \"investin\", \"jenacyclin\", \"liviatin\", \"monodox\", \"oracea\", \"periostat\", \"ronaxan\", \"spanor\", \"supracyclin\", \"vibramycin\", \"vibramycin novum\", \"vibramycine\", \"vibravenos\", \"zenavod\")" 0.1 "g" 0.1 "g" "c(\"10986-8\", \"21250-6\", \"26902-7\")"
|
||||||
"ECO" "J01XDXX" 3198 "Econazole" "Antifungals/antimycotics" "econ" "c(\"econazol\", \"econazole\", \"econazolum\", \"ecostatin\", \"ecostatin cream\", \"palavale\", \"pevaryl\", \"spectazole\", \"spectazole cream\")" "character(0)"
|
"ECO" 3198 "Econazole" "Antifungals/antimycotics" "c(\"D01AC03\", \"G01AF05\")" "Antifungals for topical use" "Imidazole and triazole derivatives" "econ" "c(\"econazol\", \"econazole\", \"econazolum\", \"ecostatin\", \"ecostatin cream\", \"palavale\", \"pevaryl\", \"spectazole\", \"spectazole cream\")" "character(0)"
|
||||||
"ENX" "J01MA04" 3229 "Enoxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"enox\")" "c(\"almitil\", \"bactidan\", \"bactidron\", \"comprecin\", \"enofloxacine\", \"enoksetin\", \"enoram\", \"enoxacin\", \"enoxacina\", \"enoxacine\", \"enoxacino\", \"enoxacinum\", \"enoxen\", \"enoxin\", \"enoxor\", \"flumark\", \"penetrex\")" 0.8 "g" "c(\"16816-1\", \"3590-7\")"
|
"ENX" 3229 "Enoxacin" "Quinolones" "J01MA04" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"enox\")" "c(\"almitil\", \"bactidan\", \"bactidron\", \"comprecin\", \"enofloxacine\", \"enoksetin\", \"enoram\", \"enoxacin\", \"enoxacina\", \"enoxacine\", \"enoxacino\", \"enoxacinum\", \"enoxen\", \"enoxin\", \"enoxor\", \"flumark\", \"penetrex\")" 0.8 "g" "c(\"16816-1\", \"3590-7\")"
|
||||||
"ENR" 71188 "Enrofloxacin" "Quinolones" "" "c(\"baytril\", \"enrofloxacin\", \"enrofloxacine\", \"enrofloxacino\", \"enrofloxacinum\")" "character(0)"
|
"ENR" 71188 "Enrofloxacin" "Quinolones" "" "c(\"baytril\", \"enrofloxacin\", \"enrofloxacine\", \"enrofloxacino\", \"enrofloxacinum\")" "character(0)"
|
||||||
"ENV" 135565326 "Enviomycin (Tuberactinomycin)" "Antimycobacterials" "" "c(\"enviomicina\", \"enviomycin\", \"enviomycina\", \"enviomycinum\")" "character(0)"
|
"ENV" 135565326 "Enviomycin (Tuberactinomycin)" "Antimycobacterials" "" "c(\"enviomicina\", \"enviomycin\", \"enviomycina\", \"enviomycinum\")" "character(0)"
|
||||||
"EPE" "Eperozolid" "Other antibacterials" "" "" ""
|
"EPE" "Eperozolid" "Other antibacterials" "" "" ""
|
||||||
"EPC" "J01CA07" 71392 "Epicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"dexacillin\", \"dihydroampicillin\", \"epicilina\", \"epicillin\", \"epicilline\", \"epicillinum\")" 2 "g" 2 "g" "character(0)"
|
"EPC" 71392 "Epicillin" "Beta-lactams/penicillins" "J01CA07" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"dexacillin\", \"dihydroampicillin\", \"epicilina\", \"epicillin\", \"epicilline\", \"epicillinum\")" 2 "g" 2 "g" "character(0)"
|
||||||
"EPP" 68916 "Epiroprim" "Other antibacterials" "" "c(\"epiroprim\", \"epiroprima\", \"epiroprime\", \"epiroprimum\")" "character(0)"
|
"EPP" 68916 "Epiroprim" "Other antibacterials" "" "c(\"epiroprim\", \"epiroprima\", \"epiroprime\", \"epiroprimum\")" "character(0)"
|
||||||
"ERV" "J01AA13" 54726192 "Eravacycline" "Tetracyclines" "Tetracyclines" "Tetracyclines" "erav" "eravacycline" "character(0)"
|
"ERV" 54726192 "Eravacycline" "Tetracyclines" "J01AA13" "Tetracyclines" "Tetracyclines" "erav" "eravacycline" "character(0)"
|
||||||
"ETP" "J01DH03" 150610 "Ertapenem" "Carbapenems" "Other beta-lactam antibacterials" "Carbapenems" "c(\"erta\", \"etp\")" "c(\"ertapenem\", \"invanz\")" 1 "g" "character(0)"
|
"ETP" 150610 "Ertapenem" "Carbapenems" "J01DH03" "Other beta-lactam antibacterials" "Carbapenems" "c(\"erta\", \"etp\")" "c(\"ertapenem\", \"invanz\")" 1 "g" "character(0)"
|
||||||
"ERY" "J01FA01" 12560 "Erythromycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Macrolides" "c(\"e\", \"em\", \"ery\", \"eryt\")" "c(\"abboticin\", \"abomacetin\", \"acneryne\", \"acnesol\", \"akne cordes losung\", \"aknederm ery gel\", \"aknemycin\", \"austrias\", \"benzamycin\", \"derimer\", \"deripil\", \"dotycin\", \"dumotrycin\", \"emuvin\", \"emycin\", \"endoeritrin\", \"erecin\", \"erisone\", \"eritomicina\", \"eritrocina\", \"eritromicina\", \"ermycin\", \"eryacne\", \"eryacnen\", \"eryc sprinkles\", \"erycen\", \"erycette\", \"erycin\", \"erycinum\", \"eryderm\", \"erydermer\", \"erygel\", \"eryhexal\", \"erymax\", \"erymed\", \"erysafe\", \"erytab\", \"erythrocin\", \"erythrocin stearate\",
|
"ERY" 12560 "Erythromycin" "Macrolides/lincosamides" "c(\"D10AF02\", \"J01FA01\", \"S01AA17\")" "Macrolides, lincosamides and streptogramins" "Macrolides" "c(\"e\", \"em\", \"ery\", \"eryt\")" "c(\"abboticin\", \"abomacetin\", \"acneryne\", \"acnesol\", \"akne cordes losung\", \"aknederm ery gel\", \"aknemycin\", \"austrias\", \"benzamycin\", \"derimer\", \"deripil\", \"dotycin\", \"dumotrycin\", \"emuvin\", \"emycin\", \"endoeritrin\", \"erecin\", \"erisone\", \"eritomicina\", \"eritrocina\", \"eritromicina\", \"ermycin\", \"eryacne\", \"eryacnen\", \"eryc sprinkles\", \"erycen\", \"erycette\", \"erycin\", \"erycinum\", \"eryderm\", \"erydermer\", \"erygel\", \"eryhexal\", \"erymax\", \"erymed\", \"erysafe\", \"erytab\", \"erythrocin\", \"erythrocin stearate\",
|
||||||
\"erythroderm\", \"erythrogran\", \"erythroguent\", \"erythromid\", \"erythromycin\", \"erythromycin a\", \"erythromycin base\", \"erythromycin lactate\", \"erythromycine\", \"erythromycines\", \"erythromycinum\", \"erytop\", \"erytrociclin\", \"ilocaps\", \"ilosone\", \"iloticina\", \"ilotycin\", \"ilotycin gluceptate\", \"ilotycin t.s.\", \"inderm\", \"inderm gel\", \"indermretcin\", \"latotryd\", \"lederpax\", \"mephamycin\", \"mercina\", \"oftamolets\", \"paediathrocin\", \"pantoderm\", \"pantodrin\", \"pantomicina\", \"pce dispertab\", \"pharyngocin\", \"primacine\",
|
\"erythroderm\", \"erythrogran\", \"erythroguent\", \"erythromid\", \"erythromycin\", \"erythromycin a\", \"erythromycin base\", \"erythromycin lactate\", \"erythromycine\", \"erythromycines\", \"erythromycinum\", \"erytop\", \"erytrociclin\", \"ilocaps\", \"ilosone\", \"iloticina\", \"ilotycin\", \"ilotycin gluceptate\", \"ilotycin t.s.\", \"inderm\", \"inderm gel\", \"indermretcin\", \"latotryd\", \"lederpax\", \"mephamycin\", \"mercina\", \"oftamolets\", \"paediathrocin\", \"pantoderm\", \"pantodrin\", \"pantomicina\", \"pce dispertab\", \"pharyngocin\", \"primacine\",
|
||||||
\"propiocine\", \"proterytrin\", \"retcin\", \"robimycin\", \"romycin\", \"sansac\", \"skid gel e\", \"staticin\", \"stiemicyn\", \"stiemycin\", \"theramycin z\", \"tiloryth\", \"tiprocin\", \"torlamicina\", \"udima ery gel\", \"wyamycin s\")" 2 "g" 1 "g" "c(\"12298-6\", \"16829-4\", \"25275-9\", \"3597-2\")"
|
\"propiocine\", \"proterytrin\", \"retcin\", \"robimycin\", \"romycin\", \"sansac\", \"skid gel e\", \"staticin\", \"stiemicyn\", \"stiemycin\", \"theramycin z\", \"tiloryth\", \"tiprocin\", \"torlamicina\", \"udima ery gel\", \"wyamycin s\")" 2 "g" 1 "g" "c(\"12298-6\", \"16829-4\", \"25275-9\", \"3597-2\")"
|
||||||
"ETH" "J04AK02" 14052 "Ethambutol" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Other drugs for treatment of tuberculosis" "etha" "c(\"aethambutolum\", \"ebutol\", \"etambutol\", \"etambutolo\", \"etapiam\", \"ethambutol\", \"ethambutolum\", \"myambutol\", \"mycobutol\", \"purderal\", \"servambutol\")" 1.2 "g" 1.2 "g" "c(\"25404-5\", \"3607-9\")"
|
"ETH" 14052 "Ethambutol" "Antimycobacterials" "J04AK02" "Drugs for treatment of tuberculosis" "Other drugs for treatment of tuberculosis" "etha" "c(\"aethambutolum\", \"ebutol\", \"etambutol\", \"etambutolo\", \"etapiam\", \"ethambutol\", \"ethambutolum\", \"myambutol\", \"mycobutol\", \"purderal\", \"servambutol\")" 1.2 "g" 1.2 "g" "c(\"25404-5\", \"3607-9\")"
|
||||||
"ETI" "J04AM03" 456476 "Ethambutol/isoniazid" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Combinations of drugs for treatment of tuberculosis" "" "" ""
|
"ETI" 456476 "Ethambutol/isoniazid" "Antimycobacterials" "J04AM03" "Drugs for treatment of tuberculosis" "Combinations of drugs for treatment of tuberculosis" "" "" ""
|
||||||
"ETI1" "J04AD03" 2761171 "Ethionamide" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Thiocarbamide derivatives" "ethi" "c(\"aethionamidum\", \"aetina\", \"aetiva\", \"amidazin\", \"amidazine\", \"ethatyl\", \"ethimide\", \"ethina\", \"ethinamide\", \"ethionamide\", \"ethionamidum\", \"ethioniamide\", \"ethylisothiamide\", \"ethyonomide\", \"etimid\", \"etiocidan\", \"etionamid\", \"etionamida\", \"etionamide\", \"etioniamid\", \"etionid\", \"etionizin\", \"etionizina\", \"etionizine\", \"fatoliamid\", \"iridocin\", \"iridocin bayer\", \"iridozin\", \"isothin\", \"isotiamida\", \"itiocide\", \"nicotion\", \"nisotin\", \"nizotin\", \"rigenicid\", \"sertinon\", \"teberus\", \"thianid\", \"thianide\",
|
"ETI1" 2761171 "Ethionamide" "Antimycobacterials" "J04AD03" "Drugs for treatment of tuberculosis" "Thiocarbamide derivatives" "ethi" "c(\"aethionamidum\", \"aetina\", \"aetiva\", \"amidazin\", \"amidazine\", \"ethatyl\", \"ethimide\", \"ethina\", \"ethinamide\", \"ethionamide\", \"ethionamidum\", \"ethioniamide\", \"ethylisothiamide\", \"ethyonomide\", \"etimid\", \"etiocidan\", \"etionamid\", \"etionamida\", \"etionamide\", \"etioniamid\", \"etionid\", \"etionizin\", \"etionizina\", \"etionizine\", \"fatoliamid\", \"iridocin\", \"iridocin bayer\", \"iridozin\", \"isothin\", \"isotiamida\", \"itiocide\", \"nicotion\", \"nisotin\", \"nizotin\", \"rigenicid\", \"sertinon\", \"teberus\", \"thianid\", \"thianide\",
|
||||||
\"thioamide\", \"thiodine\", \"thiomid\", \"thioniden\", \"tianid\", \"tiomid\", \"trecator\", \"trecator sc\", \"trekator\", \"trescatyl\", \"trescazide\", \"tubenamide\", \"tubermin\", \"tuberoid\", \"tuberoson\")" 0.75 "g" "16845-0"
|
\"thioamide\", \"thiodine\", \"thiomid\", \"thioniden\", \"tianid\", \"tiomid\", \"trecator\", \"trecator sc\", \"trekator\", \"trescatyl\", \"trescazide\", \"tubenamide\", \"tubermin\", \"tuberoid\", \"tuberoson\")" 0.75 "g" "16845-0"
|
||||||
"ETO" 6034 "Ethopabate" "Other antibacterials" "" "c(\"amprol plus\", \"ethopabat\", \"ethopabate\", \"ethyl pabate\")" "character(0)"
|
"ETO" 6034 "Ethopabate" "Other antibacterials" "" "c(\"amprol plus\", \"ethopabat\", \"ethopabate\", \"ethyl pabate\")" "character(0)"
|
||||||
"FAR" "J01DI03" 65894 "Faropenem" "Other antibacterials" "" "c(\"faropenem\", \"faropenem sodium\", \"fropenem\", \"fropenum sodium\")" 0.75 "character(0)"
|
"FAR" 65894 "Faropenem" "Other antibacterials" "J01DI03" "Other beta-lactam antibacterials" "Other cephalosporins and penems" "" "c(\"faropenem\", \"faropenem sodium\", \"fropenem\", \"fropenum sodium\")" 0.75 "g" "character(0)"
|
||||||
"FDX" 10034073 "Fidaxomicin" "Other antibacterials" "" "c(\"dificid\", \"dificlir\", \"difimicin\", \"fidaxomicin\", \"lipiarmycin\", \"tiacumicin b\")" "character(0)"
|
"FDX" 10034073 "Fidaxomicin" "Other antibacterials" "A07AA12" "" "c(\"dificid\", \"dificlir\", \"difimicin\", \"fidaxomicin\", \"lipiarmycin\", \"tiacumicin b\")" 0.4 "g" "character(0)"
|
||||||
"FIN" 11567473 "Finafloxacin" "Quinolones" "" "finafloxacin" "character(0)"
|
"FIN" 11567473 "Finafloxacin" "Quinolones" "" "finafloxacin" "character(0)"
|
||||||
"FLA" 46783781 "Flavomycin" "Other antibacterials" "" "moenomycin complex" "character(0)"
|
"FLA" 46783781 "Flavomycin" "Other antibacterials" "" "moenomycin complex" "character(0)"
|
||||||
"FLE" "J01MA08" 3357 "Fleroxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"fler\")" "c(\"fleroxacin\", \"fleroxacine\", \"fleroxacino\", \"fleroxacinum\", \"fleroxicin\", \"megalocin\", \"megalone\", \"megalosin\", \"quinodis\")" 0.4 "g" 0.4 "g" "character(0)"
|
"FLE" 3357 "Fleroxacin" "Quinolones" "J01MA08" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"fler\")" "c(\"fleroxacin\", \"fleroxacine\", \"fleroxacino\", \"fleroxacinum\", \"fleroxicin\", \"megalocin\", \"megalone\", \"megalosin\", \"quinodis\")" 0.4 "g" 0.4 "g" "character(0)"
|
||||||
"FLO" 65864 "Flomoxef" "Other antibacterials" "" "c(\"flomoxef\", \"flomoxefo\", \"flomoxefum\")" "character(0)"
|
"FLO" 65864 "Flomoxef" "Other antibacterials" "J01DC14" "" "c(\"flomoxef\", \"flomoxefo\", \"flomoxefum\")" 2 "g" "character(0)"
|
||||||
"FLR" 114811 "Florfenicol" "Other antibacterials" "" "c(\"aquafen\", \"florfenicol\", \"nuflor\", \"nuflor gold\")" "87599-7"
|
"FLR" 114811 "Florfenicol" "Other antibacterials" "" "c(\"aquafen\", \"florfenicol\", \"nuflor\", \"nuflor gold\")" "87599-7"
|
||||||
"FLC" "J01CF05" 21319 "Flucloxacillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase resistant penicillins" "c(\"clox\", \"flux\")" "c(\"floxacillin\", \"floxapen\", \"floxapen sodium salt\", \"fluclox\", \"flucloxacilina\", \"flucloxacillin\", \"flucloxacilline\", \"flucloxacillinum\", \"fluorochloroxacillin\")" 2 "g" 2 "g" "character(0)"
|
"FLC" 21319 "Flucloxacillin" "Beta-lactams/penicillins" "J01CF05" "Beta-lactam antibacterials, penicillins" "Beta-lactamase resistant penicillins" "c(\"clox\", \"flux\")" "c(\"floxacillin\", \"floxapen\", \"floxapen sodium salt\", \"fluclox\", \"flucloxacilina\", \"flucloxacillin\", \"flucloxacilline\", \"flucloxacillinum\", \"fluorochloroxacillin\")" 2 "g" 2 "g" "character(0)"
|
||||||
"FLU" "J02AC01" 3365 "Fluconazole" "Antifungals/antimycotics" "Antimycotics for systemic use" "Triazole derivatives" "c(\"fluc\", \"fluz\", \"flz\")" "c(\"alflucoz\", \"alfumet\", \"biocanol\", \"biozole\", \"biozolene\", \"canzol\", \"cryptal\", \"diflazon\", \"diflucan\", \"dimycon\", \"elazor\", \"flucazol\", \"fluconazol\", \"fluconazole\", \"fluconazole capsules\", \"fluconazolum\", \"flucostat\", \"flukezol\", \"flunazol\", \"flunizol\", \"flusol\", \"fluzon\", \"fluzone\", \"forcan\", \"fuconal\", \"fungata\", \"loitin\", \"oxifugol\", \"pritenzol\", \"syscan\", \"trican\", \"triconal\", \"triflucan\", \"zoltec\")" 0.2 "g" 0.2 "g" "c(\"10987-6\", \"16870-8\", \"25255-1\", \"80530-9\")"
|
"FLU" 3365 "Fluconazole" "Antifungals/antimycotics" "c(\"D01AC15\", \"J02AC01\")" "Antimycotics for systemic use" "Triazole derivatives" "c(\"fluc\", \"fluz\", \"flz\")" "c(\"alflucoz\", \"alfumet\", \"biocanol\", \"biozole\", \"biozolene\", \"canzol\", \"cryptal\", \"diflazon\", \"diflucan\", \"dimycon\", \"elazor\", \"flucazol\", \"fluconazol\", \"fluconazole\", \"fluconazole capsules\", \"fluconazolum\", \"flucostat\", \"flukezol\", \"flunazol\", \"flunizol\", \"flusol\", \"fluzon\", \"fluzone\", \"forcan\", \"fuconal\", \"fungata\", \"loitin\", \"oxifugol\", \"pritenzol\", \"syscan\", \"trican\", \"triconal\", \"triflucan\", \"zoltec\")" 0.2 "g" 0.2 "g" "c(\"10987-6\", \"16870-8\", \"25255-1\", \"80530-9\")"
|
||||||
"FLM" "J01MB07" 3374 "Flumequine" "Quinolones" "Quinolone antibacterials" "Other quinolones" "" "c(\"apurone\", \"fantacin\", \"flumequine\", \"flumequino\", \"flumequinum\", \"flumigal\", \"flumiquil\", \"flumisol\", \"flumix\", \"imequyl\")" 1.2 "g" "character(0)"
|
"FLM" 3374 "Flumequine" "Quinolones" "J01MB07" "Quinolone antibacterials" "Other quinolones" "" "c(\"apurone\", \"fantacin\", \"flumequine\", \"flumequino\", \"flumequinum\", \"flumigal\", \"flumiquil\", \"flumisol\", \"flumix\", \"imequyl\")" 1.2 "g" "character(0)"
|
||||||
"FLR1" "J01FA14" 71260 "Flurithromycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"flurithromicina\", \"flurithromycime\", \"flurithromycin\", \"flurithromycine\", \"flurithromycinum\", \"fluritromicina\", \"fluritromycinum\", \"flurizic\")" 0.75 "g" "character(0)"
|
"FLR1" 71260 "Flurithromycin" "Macrolides/lincosamides" "J01FA14" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"flurithromicina\", \"flurithromycime\", \"flurithromycin\", \"flurithromycine\", \"flurithromycinum\", \"fluritromicina\", \"fluritromycinum\", \"flurizic\")" 0.75 "g" "character(0)"
|
||||||
"FFL" 214356 "Fosfluconazole" "Antifungals/antimycotics" "" "c(\"fosfluconazole\", \"phosfluconazole\", \"procif\", \"prodif\")" "character(0)"
|
"FFL" 214356 "Fosfluconazole" "Antifungals/antimycotics" "" "c(\"fosfluconazole\", \"phosfluconazole\", \"procif\", \"prodif\")" "character(0)"
|
||||||
"FOS" "J01XX01" 446987 "Fosfomycin" "Other antibacterials" "Other antibacterials" "Other antibacterials" "c(\"ff\", \"fm\", \"fo\", \"fof\", \"fos\", \"fosf\")" "c(\"fosfocina\", \"fosfomicina\", \"fosfomycin\", \"fosfomycin sodium\", \"fosfomycine\", \"fosfomycinum\", \"fosfonomycin\", \"monuril\", \"monurol\", \"phosphonemycin\", \"phosphonomycin\", \"veramina\")" 3 "g" 8 "g" "character(0)"
|
"FOS" 446987 "Fosfomycin" "Other antibacterials" "J01XX01" "Other antibacterials" "Other antibacterials" "c(\"ff\", \"fm\", \"fo\", \"fof\", \"fos\", \"fosf\")" "c(\"fosfocina\", \"fosfomicina\", \"fosfomycin\", \"fosfomycin sodium\", \"fosfomycine\", \"fosfomycinum\", \"fosfonomycin\", \"monuril\", \"monurol\", \"phosphonemycin\", \"phosphonomycin\", \"veramina\")" 3 "g" 8 "g" "character(0)"
|
||||||
"FMD" 572 "Fosmidomycin" "Other antibacterials" "" "c(\"fosmidomycin\", \"fosmidomycina\", \"fosmidomycine\", \"fosmidomycinum\")" "character(0)"
|
"FMD" 572 "Fosmidomycin" "Other antibacterials" "" "c(\"fosmidomycin\", \"fosmidomycina\", \"fosmidomycine\", \"fosmidomycinum\")" "character(0)"
|
||||||
"FRM" 8378 "Framycetin" "Aminoglycosides" "c(\"\", \"fram\")" "c(\"actilin\", \"actiline\", \"antibiotique\", \"bycomycin\", \"endomixin\", \"enterfram\", \"fradiomycin\", \"fradiomycin b\", \"fradiomycinum\", \"framicetina\", \"framycetin\", \"framycetin sulfate\", \"framycetine\", \"framycetinum\", \"framygen\", \"fraquinol\", \"jernadex\", \"myacine\", \"myacyne\", \"mycerin\", \"mycifradin\", \"neobrettin\", \"neolate\", \"neomas\", \"neomcin\", \"neomicina\", \"neomin\", \"neomycin\", \"neomycin b\", \"neomycin b sulfate\", \"neomycin solution\", \"neomycin sulfate\", \"neomycin sulphate\", \"neomycinb\", \"neomycine\", \"neomycinum\",
|
"FRM" 8378 "Framycetin" "Aminoglycosides" "c(\"D09AA01\", \"R01AX08\", \"S01AA07\")" "c(\"\", \"fram\")" "c(\"actilin\", \"actiline\", \"antibiotique\", \"bycomycin\", \"endomixin\", \"enterfram\", \"fradiomycin\", \"fradiomycin b\", \"fradiomycinum\", \"framicetina\", \"framycetin\", \"framycetin sulfate\", \"framycetine\", \"framycetinum\", \"framygen\", \"fraquinol\", \"jernadex\", \"myacine\", \"myacyne\", \"mycerin\", \"mycifradin\", \"neobrettin\", \"neolate\", \"neomas\", \"neomcin\", \"neomicina\", \"neomin\", \"neomycin\", \"neomycin b\", \"neomycin b sulfate\", \"neomycin solution\", \"neomycin sulfate\", \"neomycin sulphate\", \"neomycinb\", \"neomycine\", \"neomycinum\",
|
||||||
\"nivemycin\", \"pimavecort\", \"soframycin\", \"soframycine\", \"tuttomycin\", \"vonamycin\", \"vonamycin powder v\")" "character(0)"
|
\"nivemycin\", \"pimavecort\", \"soframycin\", \"soframycine\", \"tuttomycin\", \"vonamycin\", \"vonamycin powder v\")" "character(0)"
|
||||||
"FRZ" 5323714 "Furazolidone" "Other antibacterials" "" "c(\"bifuron\", \"corizium\", \"coryzium\", \"diafuron\", \"enterotoxon\", \"furall\", \"furaxon\", \"furaxone\", \"furazol\", \"furazolidine\", \"furazolidon\", \"furazolidona\", \"furazolidone\", \"furazolidonum\", \"furazolum\", \"furazon\", \"furidon\", \"furovag\", \"furox aerosol powder\", \"furoxal\", \"furoxane\", \"furoxon\", \"furoxone\", \"furoxone liquid\", \"furoxone swine mix\", \"furozolidine\", \"giardil\", \"giarlam\", \"medaron\", \"neftin\", \"nicolen\", \"nifulidone\", \"nifuran\", \"nifurazolidone\", \"nifurazolidonum\", \"nitrofurazolidone\", \"nitrofurazolidonum\",
|
"FRZ" 5323714 "Furazolidone" "Other antibacterials" "G01AX06" "" "c(\"bifuron\", \"corizium\", \"coryzium\", \"diafuron\", \"enterotoxon\", \"furall\", \"furaxon\", \"furaxone\", \"furazol\", \"furazolidine\", \"furazolidon\", \"furazolidona\", \"furazolidone\", \"furazolidonum\", \"furazolum\", \"furazon\", \"furidon\", \"furovag\", \"furox aerosol powder\", \"furoxal\", \"furoxane\", \"furoxon\", \"furoxone\", \"furoxone liquid\", \"furoxone swine mix\", \"furozolidine\", \"giardil\", \"giarlam\", \"medaron\", \"neftin\", \"nicolen\", \"nifulidone\", \"nifuran\", \"nifurazolidone\", \"nifurazolidonum\", \"nitrofurazolidone\", \"nitrofurazolidonum\",
|
||||||
\"nitrofuroxon\", \"optazol\", \"ortazol\", \"puradin\", \"roptazol\", \"sclaventerol\", \"tikofuran\", \"topazone\", \"trichofuron\", \"tricofuron\", \"tricoron\", \"trifurox\", \"viofuragyn\")" "character(0)"
|
\"nitrofuroxon\", \"optazol\", \"ortazol\", \"puradin\", \"roptazol\", \"sclaventerol\", \"tikofuran\", \"topazone\", \"trichofuron\", \"tricofuron\", \"tricoron\", \"trifurox\", \"viofuragyn\")" "character(0)"
|
||||||
"FUS" "J01XC01" 3000226 "Fusidic acid" "Other antibacterials" "Other antibacterials" "Steroid antibacterials" "c(\"fa\", \"fusi\")" "c(\"acide fusidique\", \"acido fusidico\", \"acidum fusidicum\", \"flucidin\", \"fucidate\", \"fucidate sodium\", \"fucidic acid\", \"fucidin\", \"fucidin acid\", \"fucithalmic\", \"fusidate\", \"fusidate acid\", \"fusidic acid\", \"fusidine\", \"fusidinic acid\", \"ramycin\")" 1.5 "g" 1.5 "g" "character(0)"
|
"FUS" 3000226 "Fusidic acid" "Other antibacterials" "c(\"D06AX01\", \"D09AA02\", \"J01XC01\", \"S01AA13\")" "Other antibacterials" "Steroid antibacterials" "c(\"fa\", \"fusi\")" "c(\"acide fusidique\", \"acido fusidico\", \"acidum fusidicum\", \"flucidin\", \"fucidate\", \"fucidate sodium\", \"fucidic acid\", \"fucidin\", \"fucidin acid\", \"fucithalmic\", \"fusidate\", \"fusidate acid\", \"fusidic acid\", \"fusidine\", \"fusidinic acid\", \"ramycin\")" 1.5 "g" 1.5 "g" "character(0)"
|
||||||
"GAM" 59364992 "Gamithromycin" "Macrolides/lincosamides" "" "gamithromycin" "character(0)"
|
"GAM" 59364992 "Gamithromycin" "Macrolides/lincosamides" "" "gamithromycin" "character(0)"
|
||||||
"GRN" 124093 "Garenoxacin" "Quinolones" "" "c(\"ganefloxacin\", \"garenfloxacin\", \"garenoxacin\")" "character(0)"
|
"GRN" 124093 "Garenoxacin" "Quinolones" "J01MA19" "" "c(\"ganefloxacin\", \"garenfloxacin\", \"garenoxacin\")" 0.4 "g" "character(0)"
|
||||||
"GAT" "J01MA16" 5379 "Gatifloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"gati\")" "c(\"gatiflo\", \"gatifloxacin\", \"gatifloxacine\", \"gatifloxcin\", \"gatilox\", \"gatiquin\", \"gatispan\", \"tequin\", \"tequin and zymar\", \"zymaxid\")" 0.4 "g" 0.4 "g" "character(0)"
|
"GAT" 5379 "Gatifloxacin" "Quinolones" "c(\"J01MA16\", \"S01AE06\")" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"gati\")" "c(\"gatiflo\", \"gatifloxacin\", \"gatifloxacine\", \"gatifloxcin\", \"gatilox\", \"gatiquin\", \"gatispan\", \"tequin\", \"tequin and zymar\", \"zymaxid\")" 0.4 "g" 0.4 "g" "character(0)"
|
||||||
"GEM" "J01MA15" 9571107 "Gemifloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "" "c(\"factiv\", \"factive\", \"gemifioxacin\", \"gemifloxacin\", \"gemifloxacine\", \"gemifloxacino\", \"gemifloxacinum\")" 0.32 "character(0)"
|
"GEM" 9571107 "Gemifloxacin" "Quinolones" "J01MA15" "Quinolone antibacterials" "Fluoroquinolones" "" "c(\"factiv\", \"factive\", \"gemifioxacin\", \"gemifloxacin\", \"gemifloxacine\", \"gemifloxacino\", \"gemifloxacinum\")" 0.32 "g" "character(0)"
|
||||||
"GEN" "J01GB03" 3467 "Gentamicin" "Aminoglycosides" "Aminoglycoside antibacterials" "Other aminoglycosides" "c(\"cn\", \"gen\", \"gent\", \"gm\")" "c(\"apogen\", \"centicin\", \"cidomycin\", \"garasol\", \"genoptic liquifilm\", \"genoptic s.o.p.\", \"gentacycol\", \"gentafair\", \"gentak\", \"gentamar\", \"gentamcin sulfate\", \"gentamicin\", \"gentamicina\", \"gentamicine\", \"gentamicins\", \"gentamicinum\", \"gentamycin\", \"gentamycins\", \"gentamycinum\", \"gentavet\", \"gentocin\", \"jenamicin\", \"lyramycin\", \"oksitselanim\", \"refobacin\", \"refobacin tm\", \"septigen\", \"uromycine\")" 0.24 "g" "c(\"13561-6\", \"13562-4\", \"15106-8\", \"22746-2\", \"22747-0\", \"31091-2\", \"31092-0\", \"31093-8\", \"35668-3\", \"3663-2\", \"3664-0\", \"3665-7\", \"39082-3\", \"47109-4\", \"59379-8\", \"80971-5\", \"88111-0\")"
|
"GEN" 3467 "Gentamicin" "Aminoglycosides" "c(\"D06AX07\", \"J01GB03\", \"S01AA11\", \"S02AA14\", \"S03AA06\")" "Aminoglycoside antibacterials" "Other aminoglycosides" "c(\"cn\", \"gen\", \"gent\", \"gm\")" "c(\"apogen\", \"centicin\", \"cidomycin\", \"garasol\", \"genoptic liquifilm\", \"genoptic s.o.p.\", \"gentacycol\", \"gentafair\", \"gentak\", \"gentamar\", \"gentamcin sulfate\", \"gentamicin\", \"gentamicina\", \"gentamicine\", \"gentamicins\", \"gentamicinum\", \"gentamycin\", \"gentamycins\", \"gentamycinum\", \"gentavet\", \"gentocin\", \"jenamicin\", \"lyramycin\", \"oksitselanim\", \"refobacin\", \"refobacin tm\", \"septigen\", \"uromycine\")" 0.24 "g" "c(\"13561-6\", \"13562-4\", \"15106-8\", \"22746-2\", \"22747-0\", \"31091-2\", \"31092-0\", \"31093-8\", \"35668-3\", \"3663-2\", \"3664-0\", \"3665-7\", \"39082-3\", \"47109-4\", \"59379-8\", \"80971-5\", \"88111-0\")"
|
||||||
"GEH" "Gentamicin-high" "Aminoglycosides" "c(\"g_h\", \"gehl\", \"genta high\", \"gentamicin high\")" "" ""
|
"GEH" "Gentamicin-high" "Aminoglycosides" "c(\"g_h\", \"gehl\", \"genta high\", \"gentamicin high\")" "" ""
|
||||||
"GEP" 25101874 "Gepotidacin" "Other antibacterials" "" "gepotidacin" "character(0)"
|
"GEP" 25101874 "Gepotidacin" "Other antibacterials" "" "gepotidacin" "character(0)"
|
||||||
"GRX" "J01MA11" 72474 "Grepafloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"grep\")" "grepafloxacin" 0.4 "g" "character(0)"
|
"GRX" 72474 "Grepafloxacin" "Quinolones" "J01MA11" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"grep\")" "grepafloxacin" 0.4 "g" "character(0)"
|
||||||
"GRI" 441140 "Griseofulvin" "Antifungals/antimycotics" "" "c(\"amudane\", \"curling factor\", \"delmofulvina\", \"fulcin\", \"fulcine\", \"fulvican grisactin\", \"fulvicin\", \"fulvicin bolus\", \"fulvidex\", \"fulvina\", \"fulvinil\", \"fulvistatin\", \"fungivin\", \"greosin\", \"gresfeed\", \"gricin\", \"grifulin\", \"grifulvin\", \"grifulvin v\", \"grisactin\", \"grisactin ultra\", \"grisactin v\", \"griscofulvin\", \"grise ostatin\", \"grisefuline\", \"griseo\", \"griseofulvin\", \"griseofulvin forte\", \"griseofulvina\", \"griseofulvine\", \"griseofulvinum\", \"griseomix\", \"griseostatin\", \"grisetin\", \"grisofulvin\",
|
"GRI" 441140 "Griseofulvin" "Antifungals/antimycotics" "c(\"D01AA08\", \"D01BA01\")" "" "c(\"amudane\", \"curling factor\", \"delmofulvina\", \"fulcin\", \"fulcine\", \"fulvican grisactin\", \"fulvicin\", \"fulvicin bolus\", \"fulvidex\", \"fulvina\", \"fulvinil\", \"fulvistatin\", \"fungivin\", \"greosin\", \"gresfeed\", \"gricin\", \"grifulin\", \"grifulvin\", \"grifulvin v\", \"grisactin\", \"grisactin ultra\", \"grisactin v\", \"griscofulvin\", \"grise ostatin\", \"grisefuline\", \"griseo\", \"griseofulvin\", \"griseofulvin forte\", \"griseofulvina\", \"griseofulvine\", \"griseofulvinum\", \"griseomix\", \"griseostatin\", \"grisetin\", \"grisofulvin\",
|
||||||
\"grisovin\", \"grisovin fp\", \"grizeofulvin\", \"grysio\", \"guservin\", \"lamoryl\", \"likuden\", \"likunden\", \"murfulvin\", \"poncyl\", \"spirofulvin\", \"sporostatin xan\", \"xuanjing\")" "12402-4"
|
\"grisovin\", \"grisovin fp\", \"grizeofulvin\", \"grysio\", \"guservin\", \"lamoryl\", \"likuden\", \"likunden\", \"murfulvin\", \"poncyl\", \"spirofulvin\", \"sporostatin xan\", \"xuanjing\")" 0.5 "g" "12402-4"
|
||||||
"HAB" 175989 "Habekacin" "Aminoglycosides" "" "c(\"arbekacin sulfate\", \"habekacin\", \"habekacin sulfate\", \"habekacin xsulfate\")" "character(0)"
|
"HAB" 175989 "Habekacin" "Aminoglycosides" "" "c(\"arbekacin sulfate\", \"habekacin\", \"habekacin sulfate\", \"habekacin xsulfate\")" "character(0)"
|
||||||
"HCH" "J02AA02" 11979956 "Hachimycin" "Antifungals/antimycotics" "Antimycotics for systemic use" "Antibiotics" "" "c(\"cabimicina\", \"hachimicina\", \"hachimycin\", \"hachimycine\", \"hachimycinum\", \"trichomycinum\", \"trichonat\")" "character(0)"
|
"HCH" 11979956 "Hachimycin" "Antifungals/antimycotics" "c(\"D01AA03\", \"G01AA06\", \"J02AA02\")" "Antimycotics for systemic use" "Antibiotics" "" "c(\"cabimicina\", \"hachimicina\", \"hachimycin\", \"hachimycine\", \"hachimycinum\", \"trichomycinum\", \"trichonat\")" "character(0)"
|
||||||
"HET" "J01CA18" 443387 "Hetacillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"etacillina\", \"hetacilina\", \"hetacillin\", \"hetacilline\", \"hetacillinum\", \"phenazacillin\", \"versapen\")" 2 "g" "character(0)"
|
"HET" 443387 "Hetacillin" "Beta-lactams/penicillins" "J01CA18" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"etacillina\", \"hetacilina\", \"hetacillin\", \"hetacilline\", \"hetacillinum\", \"phenazacillin\", \"versapen\")" 2 "g" "character(0)"
|
||||||
"HYG" 56928061 "Hygromycin" "Aminoglycosides" "" "c(\"antihelmycin\", \"hydromycin b\", \"hygrovetine\")" "character(0)"
|
"HYG" 56928061 "Hygromycin" "Aminoglycosides" "" "c(\"antihelmycin\", \"hydromycin b\", \"hygrovetine\")" "character(0)"
|
||||||
"ICL" 213043 "Iclaprim" "Other antibacterials" "" "c(\"iclaprim\", \"mersarex\")" "character(0)"
|
"ICL" 213043 "Iclaprim" "Other antibacterials" "J01EA03" "" "c(\"iclaprim\", \"mersarex\")" "character(0)"
|
||||||
"IPM" "J01DH51" 104838 "Imipenem" "Carbapenems" "Other beta-lactam antibacterials" "Carbapenems" "c(\"imci\", \"imi\", \"imip\", \"imp\")" "c(\"imipemide\", \"imipenem\", \"imipenem anhydrous\", \"imipenem/cilastatin\", \"imipenemum\", \"imipenen\", \"primaxin\", \"tienamycin\")" 2 "g" "c(\"17010-0\", \"25257-7\", \"27331-8\", \"3688-9\")"
|
"IPM" 104838 "Imipenem" "Carbapenems" "J01DH51" "Other beta-lactam antibacterials" "Carbapenems" "c(\"imci\", \"imi\", \"imip\", \"imp\")" "c(\"imipemide\", \"imipenem\", \"imipenem anhydrous\", \"imipenem/cilastatin\", \"imipenemum\", \"imipenen\", \"primaxin\", \"tienamycin\")" 2 "g" "c(\"17010-0\", \"25257-7\", \"27331-8\", \"3688-9\")"
|
||||||
"IPE" "Imipenem/EDTA" "Carbapenems" "" "" ""
|
"IPE" "Imipenem/EDTA" "Carbapenems" "" "" ""
|
||||||
"IMR" "Imipenem/relebactam" "Carbapenems" "" "" ""
|
"IMR" "Imipenem/relebactam" "Carbapenems" "" "" ""
|
||||||
"ISV" 6918485 "Isavuconazole" "Antifungals/antimycotics" "c(\"\", \"isav\")" "isavuconazole" "character(0)"
|
"ISV" 6918485 "Isavuconazole" "Antifungals/antimycotics" "J02AC05" "c(\"\", \"isav\")" "isavuconazole" 0.2 "g" 0.2 "g" "character(0)"
|
||||||
"ISE" "J01GB11" 3037209 "Isepamicin" "Aminoglycosides" "Aminoglycoside antibacterials" "Other aminoglycosides" "" "c(\"isepacin\", \"isepalline\", \"isepamicin\", \"isepamicina\", \"isepamicine\", \"isepamicinum\")" 0.4 "g" "character(0)"
|
"ISE" 3037209 "Isepamicin" "Aminoglycosides" "J01GB11" "Aminoglycoside antibacterials" "Other aminoglycosides" "" "c(\"isepacin\", \"isepalline\", \"isepamicin\", \"isepamicina\", \"isepamicine\", \"isepamicinum\")" 0.4 "g" "character(0)"
|
||||||
"ISO" "D01AC05" 3760 "Isoconazole" "Antifungals/antimycotics" "Antimycotics for topic use" "Triazole derivatives" "" "c(\"isoconazol\", \"isoconazole\", \"isoconazolum\", \"travogen\")" "character(0)"
|
"ISO" 3760 "Isoconazole" "Antifungals/antimycotics" "c(\"D01AC05\", \"G01AF07\")" "Antimycotics for topic use" "Triazole derivatives" "" "c(\"isoconazol\", \"isoconazole\", \"isoconazolum\", \"travogen\")" "character(0)"
|
||||||
"INH" "J04AC01" 3767 "Isoniazid" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Hydrazides" "inh" "c(\"abdizide\", \"andrazide\", \"anidrasona\", \"antimicina\", \"antituberkulosum\", \"armacide\", \"armazid\", \"armazide\", \"atcotibine\", \"azt + isoniazid\", \"azuren\", \"bacillin\", \"cemidon\", \"chemiazid\", \"chemidon\", \"continazine\", \"cortinazine\", \"cotinazin\", \"cotinizin\", \"defonin\", \"dibutin\", \"diforin\", \"dinacrin\", \"ditubin\", \"ebidene\", \"eralon\", \"ertuban\", \"eutizon\", \"evalon\", \"fetefu\", \"fimalene\", \"hid rasonil\", \"hidranizil\", \"hidrasonil\", \"hidrulta\", \"hidrun\", \"hycozid\", \"hydrazid\", \"hydrazide\", \"hyozid\", \"i.a.i.\",
|
"INH" 3767 "Isoniazid" "Antimycobacterials" "J04AC01" "Drugs for treatment of tuberculosis" "Hydrazides" "inh" "c(\"abdizide\", \"andrazide\", \"anidrasona\", \"antimicina\", \"antituberkulosum\", \"armacide\", \"armazid\", \"armazide\", \"atcotibine\", \"azt + isoniazid\", \"azuren\", \"bacillin\", \"cemidon\", \"chemiazid\", \"chemidon\", \"continazine\", \"cortinazine\", \"cotinazin\", \"cotinizin\", \"defonin\", \"dibutin\", \"diforin\", \"dinacrin\", \"ditubin\", \"ebidene\", \"eralon\", \"ertuban\", \"eutizon\", \"evalon\", \"fetefu\", \"fimalene\", \"hid rasonil\", \"hidranizil\", \"hidrasonil\", \"hidrulta\", \"hidrun\", \"hycozid\", \"hydrazid\", \"hydrazide\", \"hyozid\", \"i.a.i.\",
|
||||||
\"idrazil\", \"inizid\", \"iscotin\", \"isidrina\", \"ismazide\", \"isobicina\", \"isocid\", \"isocidene\", \"isocotin\", \"isohydrazide\", \"isokin\", \"isolyn\", \"isonerit\", \"isonex\", \"isoniacid\", \"isoniazid\", \"isoniazid sa\", \"isoniazida\", \"isoniazide\", \"isoniazidum\", \"isonicazide\", \"isonicid\", \"isonico\", \"isonicotan\", \"isonicotil\", \"isonicotinhydrazid\", \"isonicotinohydrazide\", \"isonide\", \"isonidrin\", \"isonikazid\", \"isonilex\", \"isonin\", \"isonindon\", \"isonirit\", \"isoniton\", \"isonizida\", \"isonizide\", \"isotamine\", \"isotebe\",
|
\"idrazil\", \"inizid\", \"iscotin\", \"isidrina\", \"ismazide\", \"isobicina\", \"isocid\", \"isocidene\", \"isocotin\", \"isohydrazide\", \"isokin\", \"isolyn\", \"isonerit\", \"isonex\", \"isoniacid\", \"isoniazid\", \"isoniazid sa\", \"isoniazida\", \"isoniazide\", \"isoniazidum\", \"isonicazide\", \"isonicid\", \"isonico\", \"isonicotan\", \"isonicotil\", \"isonicotinhydrazid\", \"isonicotinohydrazide\", \"isonide\", \"isonidrin\", \"isonikazid\", \"isonilex\", \"isonin\", \"isonindon\", \"isonirit\", \"isoniton\", \"isonizida\", \"isonizide\", \"isotamine\", \"isotebe\",
|
||||||
\"isotebezid\", \"isotinyl\", \"isozid\", \"isozide\", \"isozyd\", \"laniazid\", \"laniozid\", \"lanizid\", \"mayambutol\", \"mybasan\", \"neoteben\", \"neoxin\", \"neumandin\", \"niadrin\", \"nicazide\", \"nicetal\", \"nicizina\", \"niconyl\", \"nicotibina\", \"nicotibine\", \"nicotisan\", \"nicozide\", \"nidaton\", \"nidrazid\", \"nikozid\", \"niplen\", \"nitadon\", \"niteban\", \"nydrazid\", \"nyscozid\", \"pelazid\", \"percin\", \"phthisen\", \"pycazide\", \"pyreazid\", \"pyricidin\", \"pyridicin\", \"pyrizidin\", \"raumanon\", \"razide\", \"retozide\", \"rifater\", \"rimicid\",
|
\"isotebezid\", \"isotinyl\", \"isozid\", \"isozide\", \"isozyd\", \"laniazid\", \"laniozid\", \"lanizid\", \"mayambutol\", \"mybasan\", \"neoteben\", \"neoxin\", \"neumandin\", \"niadrin\", \"nicazide\", \"nicetal\", \"nicizina\", \"niconyl\", \"nicotibina\", \"nicotibine\", \"nicotisan\", \"nicozide\", \"nidaton\", \"nidrazid\", \"nikozid\", \"niplen\", \"nitadon\", \"niteban\", \"nydrazid\", \"nyscozid\", \"pelazid\", \"percin\", \"phthisen\", \"pycazide\", \"pyreazid\", \"pyricidin\", \"pyridicin\", \"pyrizidin\", \"raumanon\", \"razide\", \"retozide\", \"rifater\", \"rimicid\",
|
||||||
\"rimifon\", \"rimiphone\", \"rimitsid\", \"robiselin\", \"robisellin\", \"roxifen\", \"sanohidrazina\", \"sauterazid\", \"sauterzid\", \"stanozide\", \"tebecid\", \"tebenic\", \"tebexin\", \"tebilon\", \"teebaconin\", \"tekazin\", \"tibazide\", \"tibemid\", \"tibiazide\", \"tibinide\", \"tibison\", \"tibivis\", \"tibizide\", \"tibusan\", \"tisiodrazida\", \"tizide\", \"tubazid\", \"tubazide\", \"tubeco\", \"tubecotubercid\", \"tuberian\", \"tubicon\", \"tubilysin\", \"tubizid\", \"tubomel\", \"unicocyde\", \"unicozyde\", \"vazadrine\", \"vederon\", \"zidafimia\", \"zinadon\",
|
\"rimifon\", \"rimiphone\", \"rimitsid\", \"robiselin\", \"robisellin\", \"roxifen\", \"sanohidrazina\", \"sauterazid\", \"sauterzid\", \"stanozide\", \"tebecid\", \"tebenic\", \"tebexin\", \"tebilon\", \"teebaconin\", \"tekazin\", \"tibazide\", \"tibemid\", \"tibiazide\", \"tibinide\", \"tibison\", \"tibivis\", \"tibizide\", \"tibusan\", \"tisiodrazida\", \"tizide\", \"tubazid\", \"tubazide\", \"tubeco\", \"tubecotubercid\", \"tuberian\", \"tubicon\", \"tubilysin\", \"tubizid\", \"tubomel\", \"unicocyde\", \"unicozyde\", \"vazadrine\", \"vederon\", \"zidafimia\", \"zinadon\",
|
||||||
\"zonazide\")" 0.3 "g" 0.3 "g" "c(\"25451-6\", \"26756-7\", \"3697-0\", \"40371-7\")"
|
\"zonazide\")" 0.3 "g" 0.3 "g" "c(\"25451-6\", \"26756-7\", \"3697-0\", \"40371-7\")"
|
||||||
"ITR" "J02AC02" 3793 "Itraconazole" "Antifungals/antimycotics" "Antimycotics for systemic use" "Triazole derivatives" "itra" "c(\"itraconazol\", \"itraconazole\", \"itraconazolum\", \"itraconzaole\", \"itrazole\", \"oriconazole\", \"sporanox\")" 0.2 "g" 0.2 "g" "c(\"10989-2\", \"12392-7\", \"25258-5\", \"27081-9\", \"32184-4\", \"32185-1\", \"80531-7\")"
|
"ITR" 3793 "Itraconazole" "Antifungals/antimycotics" "J02AC02" "Antimycotics for systemic use" "Triazole derivatives" "itra" "c(\"itraconazol\", \"itraconazole\", \"itraconazolum\", \"itraconzaole\", \"itrazole\", \"oriconazole\", \"sporanox\")" 0.2 "g" 0.2 "g" "c(\"10989-2\", \"12392-7\", \"25258-5\", \"27081-9\", \"32184-4\", \"32185-1\", \"80531-7\")"
|
||||||
"JOS" "J01FA07" 5282165 "Josamycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"josacine\", \"josamicina\", \"josamycin\", \"josamycine\", \"josamycinum\")" 2 "g" "character(0)"
|
"JOS" 5282165 "Josamycin" "Macrolides/lincosamides" "J01FA07" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"josacine\", \"josamicina\", \"josamycin\", \"josamycine\", \"josamycinum\")" 2 "g" "character(0)"
|
||||||
"KAN" "J01GB04" 6032 "Kanamycin" "Aminoglycosides" "Aminoglycoside antibacterials" "Other aminoglycosides" "c(\"hlk\", \"k\", \"kan\", \"kana\", \"km\")" "c(\"kanamicina\", \"kanamycin\", \"kanamycin a\", \"kanamycin base\", \"kanamycine\", \"kanamycinum\", \"kantrex\", \"kenamycin a\", \"klebcil\", \"liposomal kanamycin\")" 1 "g" "c(\"23889-9\", \"3698-8\", \"3699-6\", \"3700-2\", \"47395-9\")"
|
"KAN" 6032 "Kanamycin" "Aminoglycosides" "c(\"A07AA08\", \"J01GB04\", \"S01AA24\")" "Aminoglycoside antibacterials" "Other aminoglycosides" "c(\"hlk\", \"k\", \"kan\", \"kana\", \"km\")" "c(\"kanamicina\", \"kanamycin\", \"kanamycin a\", \"kanamycin base\", \"kanamycine\", \"kanamycinum\", \"kantrex\", \"kenamycin a\", \"klebcil\", \"liposomal kanamycin\")" 3 "g" 1 "g" "c(\"23889-9\", \"3698-8\", \"3699-6\", \"3700-2\", \"47395-9\")"
|
||||||
"KAH" "Kanamycin-high" "Aminoglycosides" "c(\"\", \"k_h\", \"kahl\")" "" ""
|
"KAH" "Kanamycin-high" "Aminoglycosides" "c(\"\", \"k_h\", \"kahl\")" "" ""
|
||||||
"KAC" "Kanamycin/cephalexin" "Aminoglycosides" "" "" ""
|
"KAC" "Kanamycin/cephalexin" "Aminoglycosides" "" "" ""
|
||||||
"KET" "J02AB02" 456201 "Ketoconazole" "Antifungals/antimycotics" "Antimycotics for systemic use" "Imidazole derivatives" "c(\"keto\", \"ktc\")" "c(\"extina\", \"fungarest\", \"fungoral\", \"ketocanazole\", \"ketoconazol\", \"ketoconazole\", \"ketoconazolum\", \"ketoderm\", \"nizoral\", \"xolegel\")" 0.2 "g" "c(\"10990-0\", \"12393-5\", \"25259-3\", \"60091-6\", \"60092-4\")"
|
"KET" 456201 "Ketoconazole" "Antifungals/antimycotics" "c(\"D01AC08\", \"G01AF11\", \"H02CA03\", \"J02AB02\")" "Antimycotics for systemic use" "Imidazole derivatives" "c(\"keto\", \"ktc\")" "c(\"extina\", \"fungarest\", \"fungoral\", \"ketocanazole\", \"ketoconazol\", \"ketoconazole\", \"ketoconazolum\", \"ketoderm\", \"nizoral\", \"xolegel\")" 0.2 "g" "c(\"10990-0\", \"12393-5\", \"25259-3\", \"60091-6\", \"60092-4\")"
|
||||||
"KIT" "Kitasamycin (Leucomycin)" "Macrolides/lincosamides" "" "" ""
|
"KIT" "Kitasamycin (Leucomycin)" "Macrolides/lincosamides" "" "" ""
|
||||||
"LAS" 5360807 "Lasalocid" "Other antibacterials" "" "c(\"avatec\", \"lasalocid\", \"lasalocid a\", \"lasalocide\", \"lasalocide a\", \"lasalocido\", \"lasalocidum\")" "87598-9"
|
"LAS" 5360807 "Lasalocid" "Other antibacterials" "" "c(\"avatec\", \"lasalocid\", \"lasalocid a\", \"lasalocide\", \"lasalocide a\", \"lasalocido\", \"lasalocidum\")" "87598-9"
|
||||||
"LTM" "J01DD06" 47499 "Latamoxef" "Cephalosporins (3rd gen.)" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"mox\", \"moxa\")" "c(\"disodium moxalactam\", \"festamoxin\", \"lamoxactam\", \"latamoxef\", \"latamoxefum\", \"shiomarin\")" 4 "g" "character(0)"
|
"LTM" 47499 "Latamoxef" "Cephalosporins (3rd gen.)" "J01DD06" "Other beta-lactam antibacterials" "Third-generation cephalosporins" "c(\"mox\", \"moxa\")" "c(\"disodium moxalactam\", \"festamoxin\", \"lamoxactam\", \"latamoxef\", \"latamoxefum\", \"shiomarin\")" 4 "g" "character(0)"
|
||||||
"LMU" 25185057 "Lefamulin" "Other antibacterials" "" "lefamulin" "character(0)"
|
"LMU" 25185057 "Lefamulin" "Other antibacterials" "J01XX12" "" "lefamulin" "character(0)"
|
||||||
"LEN" 65646 "Lenampicillin" "Beta-lactams/penicillins" "" "c(\"lenampicilina\", \"lenampicillin\", \"lenampicillin hcl\", \"lenampicilline\", \"lenampicillinum\")" "character(0)"
|
"LEN" 65646 "Lenampicillin" "Beta-lactams/penicillins" "" "c(\"lenampicilina\", \"lenampicillin\", \"lenampicillin hcl\", \"lenampicilline\", \"lenampicillinum\")" "character(0)"
|
||||||
"LVX" "J01MA12" 149096 "Levofloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "c(\"le\", \"lev\", \"levo\", \"lvx\")" "c(\"aeroquin\", \"cravit\", \"cravit hydrate\", \"cravit iv\", \"cravit ophthalmic\", \"elequine\", \"floxacin\", \"floxel\", \"iquix hydrate\", \"leroxacin\", \"lesacin\", \"levaquin\", \"levaquin hydrate\", \"levo floxacin\", \"levofiexacin\", \"levofloxacin\", \"levofloxacin hydrate\", \"levofloxacine\", \"levofloxacino\", \"levofloxacinum\", \"levokacin\", \"levoxacin\", \"mosardal\", \"nofaxin\", \"oftaquix\", \"quixin\", \"reskuin\", \"tavanic\", \"unibiotic\", \"venaxan\", \"volequin\")" 0.5 "g" 0.5 "g" "c(\"21368-6\", \"30532-6\", \"30533-4\")"
|
"LVX" 149096 "Levofloxacin" "Quinolones" "c(\"J01MA12\", \"S01AE05\")" "Quinolone antibacterials" "Fluoroquinolones" "c(\"le\", \"lev\", \"levo\", \"lvx\")" "c(\"aeroquin\", \"cravit\", \"cravit hydrate\", \"cravit iv\", \"cravit ophthalmic\", \"elequine\", \"floxacin\", \"floxel\", \"iquix hydrate\", \"leroxacin\", \"lesacin\", \"levaquin\", \"levaquin hydrate\", \"levo floxacin\", \"levofiexacin\", \"levofloxacin\", \"levofloxacin hydrate\", \"levofloxacine\", \"levofloxacino\", \"levofloxacinum\", \"levokacin\", \"levoxacin\", \"mosardal\", \"nofaxin\", \"oftaquix\", \"quixin\", \"reskuin\", \"tavanic\", \"unibiotic\", \"venaxan\", \"volequin\")" 0.5 "g" 0.5 "g" "c(\"21368-6\", \"30532-6\", \"30533-4\")"
|
||||||
"LND" 9850038 "Levonadifloxacin" "Quinolones" "" "levonadifloxacin" "character(0)"
|
"LND" 9850038 "Levonadifloxacin" "Quinolones" "J01MA24" "" "levonadifloxacin" "character(0)"
|
||||||
"LSP" "Linco-spectin (lincomycin/spectinomycin)" "Other antibacterials" "" "" ""
|
"LSP" "Linco-spectin (lincomycin/spectinomycin)" "Other antibacterials" "" "" ""
|
||||||
"LIN" "J01FF02" 3000540 "Lincomycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Lincosamides" "linc" "c(\"cillimycin\", \"jiemycin\", \"lincolcina\", \"lincolnensin\", \"lincomicina\", \"lincomycin\", \"lincomycin a\", \"lincomycine\", \"lincomycinum\")" 1.8 "g" 1.8 "g" "87597-1"
|
"LIN" 3000540 "Lincomycin" "Macrolides/lincosamides" "J01FF02" "Macrolides, lincosamides and streptogramins" "Lincosamides" "linc" "c(\"cillimycin\", \"jiemycin\", \"lincolcina\", \"lincolnensin\", \"lincomicina\", \"lincomycin\", \"lincomycin a\", \"lincomycine\", \"lincomycinum\")" 1.8 "g" 1.8 "g" "87597-1"
|
||||||
"LNZ" "J01XX08" 441401 "Linezolid" "Oxazolidinones" "Other antibacterials" "Other antibacterials" "c(\"line\", \"lnz\", \"lz\", \"lzd\")" "c(\"linezlid\", \"linezoid\", \"linezolid\", \"linezolide\", \"linezolidum\", \"zivoxid\", \"zyvoxa\", \"zyvoxam\", \"zyvoxid\")" 1.2 "g" 1.2 "g" "c(\"34202-2\", \"80609-1\")"
|
"LNZ" 441401 "Linezolid" "Oxazolidinones" "J01XX08" "Other antibacterials" "Other antibacterials" "c(\"line\", \"lnz\", \"lz\", \"lzd\")" "c(\"linezlid\", \"linezoid\", \"linezolid\", \"linezolide\", \"linezolidum\", \"zivoxid\", \"zyvoxa\", \"zyvoxam\", \"zyvoxid\")" 1.2 "g" 1.2 "g" "c(\"34202-2\", \"80609-1\")"
|
||||||
"LFE" "Linoprist-flopristin" "Other antibacterials" "" "" ""
|
"LFE" "Linoprist-flopristin" "Other antibacterials" "" "" ""
|
||||||
"LOM" "J01MA07" 3948 "Lomefloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "c(\"lmf\", \"lom\", \"lome\")" "c(\"lomefloxacin\", \"lomefloxacine\", \"lomefloxacino\", \"lomefloxacinum\", \"maxaquin\")" 0.4 "character(0)"
|
"LOM" 3948 "Lomefloxacin" "Quinolones" "c(\"J01MA07\", \"S01AE04\")" "Quinolone antibacterials" "Fluoroquinolones" "c(\"lmf\", \"lom\", \"lome\")" "c(\"lomefloxacin\", \"lomefloxacine\", \"lomefloxacino\", \"lomefloxacinum\", \"maxaquin\")" 0.4 "g" "character(0)"
|
||||||
"LOR" "J01DC08" 5284585 "Loracarbef" "Cephalosporins (2nd gen.)" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "c(\"\", \"lora\")" "c(\"anhydrous loracarbef\", \"lorabid\", \"loracarbef\", \"loracarbefum\", \"lorbef\", \"loribid\")" 0.6 "g" "character(0)"
|
"LOR" 5284585 "Loracarbef" "Cephalosporins (2nd gen.)" "J01DC08" "Other beta-lactam antibacterials" "Second-generation cephalosporins" "c(\"\", \"lora\")" "c(\"anhydrous loracarbef\", \"lorabid\", \"loracarbef\", \"loracarbefum\", \"lorbef\", \"loribid\")" 0.6 "g" "character(0)"
|
||||||
"LYM" "J01AA04" 54707177 "Lymecycline" "Tetracyclines" "Tetracyclines" "Tetracyclines" "" "c(\"biovetin\", \"chlortetracyclin\", \"ciclisin\", \"ciclolysal\", \"infaciclina\", \"limeciclina\", \"lisinbiotic\", \"lymecyclin\", \"lymecycline\", \"lymecyclinum\", \"mucomycin\", \"ntetracycline\", \"tetralisal\", \"tetralysal\", \"vebicyclysal\")" 0.6 "g" 0.6 "g" "character(0)"
|
"LYM" 54707177 "Lymecycline" "Tetracyclines" "J01AA04" "Tetracyclines" "Tetracyclines" "" "c(\"biovetin\", \"chlortetracyclin\", \"ciclisin\", \"ciclolysal\", \"infaciclina\", \"limeciclina\", \"lisinbiotic\", \"lymecyclin\", \"lymecycline\", \"lymecyclinum\", \"mucomycin\", \"ntetracycline\", \"tetralisal\", \"tetralysal\", \"vebicyclysal\")" 0.6 "g" 0.6 "g" "character(0)"
|
||||||
"MNA" "J01XX06" 1292 "Mandelic acid" "Other antibacterials" "Other antibacterials" "Other antibacterials" "" "c(\"acido mandelico\", \"almond acid\", \"amygdalic acid\", \"benzoglycolic acid\", \"hydroxyacetic acid\", \"kyselina mandlova\", \"mandelic acid\", \"paramandelic acid\", \"phenylglycolic acid\", \"uromaline\")" 12 "g" "character(0)"
|
"MNA" 1292 "Mandelic acid" "Other antibacterials" "c(\"B05CA06\", \"J01XX06\")" "Other antibacterials" "Other antibacterials" "" "c(\"acido mandelico\", \"almond acid\", \"amygdalic acid\", \"benzoglycolic acid\", \"hydroxyacetic acid\", \"kyselina mandlova\", \"mandelic acid\", \"paramandelic acid\", \"phenylglycolic acid\", \"uromaline\")" 12 "g" "character(0)"
|
||||||
"MAR" 60651 "Marbofloxacin" "Quinolones" "" "c(\"marbocyl\", \"marbofloxacin\", \"marbofloxacine\", \"marbofloxacino\", \"marbofloxacinum\", \"zeniquin\")" "character(0)"
|
"MAR" 60651 "Marbofloxacin" "Quinolones" "" "c(\"marbocyl\", \"marbofloxacin\", \"marbofloxacine\", \"marbofloxacino\", \"marbofloxacinum\", \"zeniquin\")" "character(0)"
|
||||||
"MEC" "J01CA11" 36273 "Mecillinam (Amdinocillin)" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"amdinocillin\", \"coactin\", \"hexacillin\", \"mecilinamo\", \"mecillinam\", \"mecillinamum\", \"micillinam\", \"penicillin hx\", \"selexidin\")" 1.2 "g" "character(0)"
|
"MEC" 36273 "Mecillinam (Amdinocillin)" "Beta-lactams/penicillins" "J01CA11" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"amdinocillin\", \"coactin\", \"hexacillin\", \"mecilinamo\", \"mecillinam\", \"mecillinamum\", \"micillinam\", \"penicillin hx\", \"selexidin\")" 1.2 "g" "character(0)"
|
||||||
"MEL" 71306732 "Meleumycin" "Macrolides/lincosamides" "" "" ""
|
"MEL" 71306732 "Meleumycin" "Macrolides/lincosamides" "" "" ""
|
||||||
"MEM" "J01DH02" 441130 "Meropenem" "Carbapenems" "Other beta-lactam antibacterials" "Carbapenems" "c(\"mem\", \"mer\", \"mero\", \"mp\", \"mrp\")" "c(\"meronem\", \"meropen\", \"meropenem\", \"meropenem anhydrous\", \"meropenem hydrate\", \"meropenem trihydrate\", \"meropenemum\", \"merrem\", \"merrem i.v.\", \"merrem iv\")" 3 "g" "41406-0"
|
"MEM" 441130 "Meropenem" "Carbapenems" "J01DH02" "Other beta-lactam antibacterials" "Carbapenems" "c(\"mem\", \"mer\", \"mero\", \"mp\", \"mrp\")" "c(\"meronem\", \"meropen\", \"meropenem\", \"meropenem anhydrous\", \"meropenem hydrate\", \"meropenem trihydrate\", \"meropenemum\", \"merrem\", \"merrem i.v.\", \"merrem iv\")" 3 "g" "41406-0"
|
||||||
"MNC" "Meropenem/nacubactam" "Carbapenems" "" "" ""
|
"MNC" "Meropenem/nacubactam" "Carbapenems" "" "" ""
|
||||||
"MEV" "J01DH52" "Meropenem/vaborbactam" "Carbapenems" "Other beta-lactam antibacterials" "Carbapenems" "" "" ""
|
"MEV" "Meropenem/vaborbactam" "Carbapenems" "J01DH52" "Other beta-lactam antibacterials" "Carbapenems" "" "" 3 "g" ""
|
||||||
"MES" 176886 "Mesulfamide" "Other antibacterials" "" "c(\"mesulfamide\", \"mesulfamido\", \"mesulfamidum\")" "character(0)"
|
"MES" 176886 "Mesulfamide" "Other antibacterials" "" "c(\"mesulfamide\", \"mesulfamido\", \"mesulfamidum\")" "character(0)"
|
||||||
"MTC" "J01AA05" 54675785 "Metacycline" "Tetracyclines" "Tetracyclines" "Tetracyclines" "" "c(\"bialatan\", \"metaciclina\", \"metacycline\", \"metacyclinum\", \"methacycline\", \"methacycline base\", \"methacyclinum\", \"methylenecycline\", \"physiomycine\", \"rondomycin\")" 0.6 "g" "character(0)"
|
"MTC" 54675785 "Metacycline" "Tetracyclines" "J01AA05" "Tetracyclines" "Tetracyclines" "" "c(\"bialatan\", \"metaciclina\", \"metacycline\", \"metacyclinum\", \"methacycline\", \"methacycline base\", \"methacyclinum\", \"methylenecycline\", \"physiomycine\", \"rondomycin\")" 0.6 "g" "character(0)"
|
||||||
"MTM" "J01CA14" 6713928 "Metampicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"blomopen\", \"bonopen\", \"celinmicina\", \"elatocilline\", \"fedacilina kapseln\", \"filorex\", \"italcina kapseln\", \"magnipen\", \"metabacter ampullen\", \"metambac\", \"metampicilina\", \"metampicillin\", \"metampicillin sodium\", \"metampicillina\", \"metampicilline\", \"metampicillinum\", \"methampicillin\", \"metiskia ampullen\", \"micinovo\", \"micinovo ampullen\", \"pangocilin\", \"probiotic\", \"rastomycin k\", \"relyothenate\", \"ruticina\", \"rutizina\", \"rutizina ampullen\", \"sedomycin\", \"suvipen\", \"suvipen ampullen\", \"tampilen ampullen\",
|
"MTM" 6713928 "Metampicillin" "Beta-lactams/penicillins" "J01CA14" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"blomopen\", \"bonopen\", \"celinmicina\", \"elatocilline\", \"fedacilina kapseln\", \"filorex\", \"italcina kapseln\", \"magnipen\", \"metabacter ampullen\", \"metambac\", \"metampicilina\", \"metampicillin\", \"metampicillin sodium\", \"metampicillina\", \"metampicilline\", \"metampicillinum\", \"methampicillin\", \"metiskia ampullen\", \"micinovo\", \"micinovo ampullen\", \"pangocilin\", \"probiotic\", \"rastomycin k\", \"relyothenate\", \"ruticina\", \"rutizina\", \"rutizina ampullen\", \"sedomycin\", \"suvipen\", \"suvipen ampullen\", \"tampilen ampullen\",
|
||||||
\"teonicon trofen\", \"viderpen\", \"viderpin\", \"vioplex\")" 1.5 "g" 1.5 "g" "character(0)"
|
\"teonicon trofen\", \"viderpen\", \"viderpin\", \"vioplex\")" 1.5 "g" 1.5 "g" "character(0)"
|
||||||
"MTH" "J01XX05" 4101 "Methenamine" "Other antibacterials" "Other antibacterials" "Other antibacterials" "" "c(\"aceto hmt\", \"aminoform\", \"aminoformaldehyde\", \"ammoform\", \"ammonioformaldehyde\", \"antihydral\", \"cystamin\", \"cystex\", \"cystogen\", \"duirexol\", \"ekagom h\", \"esametilentetramina\", \"formamine\", \"formin\", \"h.m.t.\", \"heksa k\", \"herax uts\", \"heterin\", \"hexa b\", \"hexaform\", \"hexaloids\", \"hexamethylamine\", \"hexamethylenamine\", \"hexamethyleneamine\", \"hexamethylentetramin\", \"hexamine\", \"hexamine silver\", \"hexamine superfine\", \"hexaminum\", \"hexasan\", \"hexilmethylenamine\", \"metenamina\", \"metenamine\", \"methamin\",
|
"MTH" 4101 "Methenamine" "Other antibacterials" "J01XX05" "Other antibacterials" "Other antibacterials" "" "c(\"aceto hmt\", \"aminoform\", \"aminoformaldehyde\", \"ammoform\", \"ammonioformaldehyde\", \"antihydral\", \"cystamin\", \"cystex\", \"cystogen\", \"duirexol\", \"ekagom h\", \"esametilentetramina\", \"formamine\", \"formin\", \"h.m.t.\", \"heksa k\", \"herax uts\", \"heterin\", \"hexa b\", \"hexaform\", \"hexaloids\", \"hexamethylamine\", \"hexamethylenamine\", \"hexamethyleneamine\", \"hexamethylentetramin\", \"hexamine\", \"hexamine silver\", \"hexamine superfine\", \"hexaminum\", \"hexasan\", \"hexilmethylenamine\", \"metenamina\", \"metenamine\", \"methamin\",
|
||||||
\"methenamin\", \"methenamine\", \"methenamine silver\", \"methenaminum\", \"metramine\", \"naphthamine\", \"nocceler h\", \"preparation af\", \"resotropin\", \"sanceler h\", \"sanceler ht\", \"silver methenamine\", \"uramin\", \"uratrine\", \"urisol\", \"uritone\", \"urodeine\", \"urotropin\", \"urotropine\", \"vesaloin\", \"vesalvine\", \"xametrin\")" 3 "g" "character(0)"
|
\"methenamin\", \"methenamine\", \"methenamine silver\", \"methenaminum\", \"metramine\", \"naphthamine\", \"nocceler h\", \"preparation af\", \"resotropin\", \"sanceler h\", \"sanceler ht\", \"silver methenamine\", \"uramin\", \"uratrine\", \"urisol\", \"uritone\", \"urodeine\", \"urotropin\", \"urotropine\", \"vesaloin\", \"vesalvine\", \"xametrin\")" 3 "g" "character(0)"
|
||||||
"MET" "J01CF03" 6087 "Methicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase resistant penicillins" "meti" "c(\"dimocillin\", \"metacillin\", \"methcilline\", \"methicillin\", \"methicillinum\", \"methycillin\", \"meticilina\", \"meticillin\", \"meticillina\", \"meticilline\", \"meticillinum\", \"staphcillin\")" 4 "g" "c(\"29492-6\", \"3788-7\")"
|
"MET" 6087 "Methicillin" "Beta-lactams/penicillins" "J01CF03" "Beta-lactam antibacterials, penicillins" "Beta-lactamase resistant penicillins" "meti" "c(\"dimocillin\", \"metacillin\", \"methcilline\", \"methicillin\", \"methicillinum\", \"methycillin\", \"meticilina\", \"meticillin\", \"meticillina\", \"meticilline\", \"meticillinum\", \"staphcillin\")" 4 "g" "c(\"29492-6\", \"3788-7\")"
|
||||||
"MTP" 68590 "Metioprim" "Other antibacterials" "" "c(\"methioprim\", \"metioprim\", \"metioprima\", \"metioprime\", \"metioprimum\")" "character(0)"
|
"MTP" 68590 "Metioprim" "Other antibacterials" "" "c(\"methioprim\", \"metioprim\", \"metioprima\", \"metioprime\", \"metioprimum\")" "character(0)"
|
||||||
"MXT" 3047729 "Metioxate" "Quinolones" "" "c(\"metioxate\", \"metioxato\", \"metioxatum\")" "character(0)"
|
"MXT" 3047729 "Metioxate" "Quinolones" "" "c(\"metioxate\", \"metioxato\", \"metioxatum\")" "character(0)"
|
||||||
"MTR" "J01XD01" 4173 "Metronidazole" "Other antibacterials" "Other antibacterials" "Imidazole derivatives" "c(\"metr\", \"mnz\")" "c(\"acromona\", \"anagiardil\", \"arilin\", \"atrivyl\", \"danizol\", \"deflamon\", \"efloran\", \"elyzol\", \"entizol\", \"flagemona\", \"flagesol\", \"flagil\", \"flagyl\", \"flagyl er\", \"flagyl i.v.\", \"flagyl i.v. rtu\", \"flazol\", \"flegyl\", \"florazole\", \"fossyol\", \"giatricol\", \"ginefla vir\", \"gineflavir\", \"helidac\", \"mepagyl\", \"meronidal\", \"methronidazole\", \"metric\", \"metro cream\", \"metro gel\", \"metro i.v\", \"metro i.v.\", \"metro iv\", \"metrocream\", \"metrodzhil\", \"metrogel\", \"metrogyl\", \"metrolag\", \"metrolotion\", \"metrolyl\",
|
"MTR" 4173 "Metronidazole" "Other antibacterials" "c(\"A01AB17\", \"D06BX01\", \"G01AF01\", \"J01XD01\", \"P01AB01\")" "Other antibacterials" "Imidazole derivatives" "c(\"metr\", \"mnz\")" "c(\"acromona\", \"anagiardil\", \"arilin\", \"atrivyl\", \"danizol\", \"deflamon\", \"efloran\", \"elyzol\", \"entizol\", \"flagemona\", \"flagesol\", \"flagil\", \"flagyl\", \"flagyl er\", \"flagyl i.v.\", \"flagyl i.v. rtu\", \"flazol\", \"flegyl\", \"florazole\", \"fossyol\", \"giatricol\", \"ginefla vir\", \"gineflavir\", \"helidac\", \"mepagyl\", \"meronidal\", \"methronidazole\", \"metric\", \"metro cream\", \"metro gel\", \"metro i.v\", \"metro i.v.\", \"metro iv\", \"metrocream\", \"metrodzhil\", \"metrogel\", \"metrogyl\", \"metrolag\", \"metrolotion\", \"metrolyl\",
|
||||||
\"metromidol\", \"metronidaz\", \"metronidazol\", \"metronidazole\", \"metronidazole usp\", \"metronidazolo\", \"metronidazolum\", \"metrotop\", \"metrozine\", \"metryl\", \"mexibol\", \"mexibol 'silanes'\", \"monagyl\", \"monasin\", \"nidagel\", \"nidagyl\", \"noritate\", \"novonidazol\", \"orvagil\", \"polibiotic\", \"protostat\", \"rathimed\", \"rosased\", \"sanatrichom\", \"satric\", \"takimetol\", \"trichazol\", \"trichex\", \"tricho cordes\", \"trichobrol\", \"trichocide\", \"trichomol\", \"trichopal\", \"trichopol\", \"tricocet\", \"tricom\", \"tricowas b\", \"trikacide\",
|
\"metromidol\", \"metronidaz\", \"metronidazol\", \"metronidazole\", \"metronidazole usp\", \"metronidazolo\", \"metronidazolum\", \"metrotop\", \"metrozine\", \"metryl\", \"mexibol\", \"mexibol 'silanes'\", \"monagyl\", \"monasin\", \"nidagel\", \"nidagyl\", \"noritate\", \"novonidazol\", \"orvagil\", \"polibiotic\", \"protostat\", \"rathimed\", \"rosased\", \"sanatrichom\", \"satric\", \"takimetol\", \"trichazol\", \"trichex\", \"tricho cordes\", \"trichobrol\", \"trichocide\", \"trichomol\", \"trichopal\", \"trichopol\", \"tricocet\", \"tricom\", \"tricowas b\", \"trikacide\",
|
||||||
\"trikamon\", \"trikhopol\", \"trikojol\", \"trikozol\", \"trimeks\", \"trivazol\", \"vagilen\", \"vagimid\", \"vandazole\", \"vertisal\", \"wagitran\", \"zadstat\", \"zidoval\")" 1.5 "g" "10991-8"
|
\"trikamon\", \"trikhopol\", \"trikojol\", \"trikozol\", \"trimeks\", \"trivazol\", \"vagilen\", \"vagimid\", \"vandazole\", \"vertisal\", \"wagitran\", \"zadstat\", \"zidoval\")" 2 "g" 1.5 "g" "10991-8"
|
||||||
"MEZ" "J01CA10" 656511 "Mezlocillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"mez\", \"mezl\", \"mz\")" "c(\"mezlin\", \"mezlocilina\", \"mezlocillin\", \"mezlocillin acid\", \"mezlocillin sodium\", \"mezlocilline\", \"mezlocillinum\", \"multocillin\")" 6 "g" "3820-8"
|
"MEZ" 656511 "Mezlocillin" "Beta-lactams/penicillins" "J01CA10" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"mez\", \"mezl\", \"mz\")" "c(\"mezlin\", \"mezlocilina\", \"mezlocillin\", \"mezlocillin acid\", \"mezlocillin sodium\", \"mezlocilline\", \"mezlocillinum\", \"multocillin\")" 6 "g" "3820-8"
|
||||||
"MSU" "Mezlocillin/sulbactam" "Beta-lactams/penicillins" "" "" ""
|
"MSU" "Mezlocillin/sulbactam" "Beta-lactams/penicillins" "" "" ""
|
||||||
"MIF" "J02AX05" 477468 "Micafungin" "Antifungals/antimycotics" "Antimycotics for systemic use" "Other antimycotics for systemic use" "c(\"\", \"mica\")" "c(\"micafungin\", \"mycamine\")" 0.1 "g" "58418-5"
|
"MIF" 477468 "Micafungin" "Antifungals/antimycotics" "J02AX05" "Antimycotics for systemic use" "Other antimycotics for systemic use" "c(\"\", \"mica\")" "c(\"micafungin\", \"mycamine\")" 0.1 "g" "58418-5"
|
||||||
"MCZ" "J02AB01" 4189 "Miconazole" "Antifungals/antimycotics" "Antimycotics for systemic use" "Imidazole derivatives" "mico" "c(\"aflorix\", \"albistat\", \"andergin\", \"brentan\", \"conofite\", \"dactarin\", \"daktarin\", \"daktarin iv\", \"florid\", \"lotrimin af\", \"micantin\", \"miconasil nitrate\", \"miconazol\", \"miconazole\", \"miconazole base\", \"miconazolo\", \"miconazolum\", \"micozole\", \"minostate\", \"monista\", \"monistat\", \"monistat iv\", \"oravig\", \"vusion\", \"zimybase\", \"zimycan\")" 1 "g" "17278-3"
|
"MCZ" 4189 "Miconazole" "Antifungals/antimycotics" "c(\"A01AB09\", \"A07AC01\", \"D01AC02\", \"G01AF04\", \"J02AB01\", \"S02AA13\")" "Antimycotics for systemic use" "Imidazole derivatives" "mico" "c(\"aflorix\", \"albistat\", \"andergin\", \"brentan\", \"conofite\", \"dactarin\", \"daktarin\", \"daktarin iv\", \"florid\", \"lotrimin af\", \"micantin\", \"miconasil nitrate\", \"miconazol\", \"miconazole\", \"miconazole base\", \"miconazolo\", \"miconazolum\", \"micozole\", \"minostate\", \"monista\", \"monistat\", \"monistat iv\", \"oravig\", \"vusion\", \"zimybase\", \"zimycan\")" 0.2 "g" 1 "g" "17278-3"
|
||||||
"MCR" 3037206 "Micronomicin" "Aminoglycosides" "" "c(\"gentamicin c\", \"micromycin\", \"micronomicin\", \"micronomicina\", \"micronomicine\", \"micronomicinum\", \"sagamicin\", \"santemycin\")" "character(0)"
|
"MCR" 3037206 "Micronomicin" "Aminoglycosides" "S01AA22" "" "c(\"gentamicin c\", \"micromycin\", \"micronomicin\", \"micronomicina\", \"micronomicine\", \"micronomicinum\", \"sagamicin\", \"santemycin\")" "character(0)"
|
||||||
"MID" "J01FA03" 5282169 "Midecamycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"aboren\", \"espinomycin a\", \"macropen\", \"madecacine\", \"medemycin\", \"midecamicina\", \"midecamycin\", \"midecamycin a\", \"midecamycine\", \"midecamycinum\", \"midecin\", \"momicine\", \"mydecamycin\", \"myoxam\", \"normicina\", \"rubimycin\", \"turimycin p\")" 1.2 1 "g" "character(0)"
|
"MID" 5282169 "Midecamycin" "Macrolides/lincosamides" "J01FA03" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"aboren\", \"espinomycin a\", \"macropen\", \"madecacine\", \"medemycin\", \"midecamicina\", \"midecamycin\", \"midecamycin a\", \"midecamycine\", \"midecamycinum\", \"midecin\", \"momicine\", \"mydecamycin\", \"myoxam\", \"normicina\", \"rubimycin\", \"turimycin p\")" 1.2 "g" 1 "g" "character(0)"
|
||||||
"MIL" 37614 "Miloxacin" "Quinolones" "" "c(\"miloxacin\", \"miloxacine\", \"miloxacino\", \"miloxacinum\")" "character(0)"
|
"MIL" 37614 "Miloxacin" "Quinolones" "" "c(\"miloxacin\", \"miloxacine\", \"miloxacino\", \"miloxacinum\")" "character(0)"
|
||||||
"MNO" "J01AA08" 54675783 "Minocycline" "Tetracyclines" "Tetracyclines" "Tetracyclines" "c(\"mc\", \"mh\", \"mi\", \"min\", \"mino\", \"mn\", \"mno\")" "c(\"akamin\", \"aknemin\", \"borymycin\", \"dynacin\", \"klinomycin\", \"minociclina\", \"minocin\", \"minocline\", \"minocyclin\", \"minocycline\", \"minocyclinum\", \"minocyn\", \"minoderm\", \"minomycin\", \"sebomin\", \"solodyn\", \"vectrin\")" 0.2 "g" 0.2 "g" "c(\"34606-4\", \"3822-4\", \"49757-8\")"
|
"MNO" 54675783 "Minocycline" "Tetracyclines" "c(\"A01AB23\", \"D10AF07\", \"J01AA08\")" "Tetracyclines" "Tetracyclines" "c(\"mc\", \"mh\", \"mi\", \"min\", \"mino\", \"mn\", \"mno\")" "c(\"akamin\", \"aknemin\", \"borymycin\", \"dynacin\", \"klinomycin\", \"minociclina\", \"minocin\", \"minocline\", \"minocyclin\", \"minocycline\", \"minocyclinum\", \"minocyn\", \"minoderm\", \"minomycin\", \"sebomin\", \"solodyn\", \"vectrin\")" 1 "mg" 0.2 "g" "c(\"34606-4\", \"3822-4\", \"49757-8\")"
|
||||||
"MCM" "J01FA11" 5282188 "Miocamycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"acecamycin\", \"macroral\", \"midecamycin acetate\", \"miocamen\", \"miocamycine\", \"miokamycin\", \"myocamicin\", \"ponsinomycin\")" 1.2 "g" "character(0)"
|
"MCM" 5282188 "Miocamycin" "Macrolides/lincosamides" "J01FA11" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"acecamycin\", \"macroral\", \"midecamycin acetate\", \"miocamen\", \"miocamycine\", \"miokamycin\", \"myocamicin\", \"ponsinomycin\")" 1.2 "g" "character(0)"
|
||||||
"MON" 23667299 "Monensin sodium" "Other antibacterials" "" "c(\"monensin sodium\", \"sodium monensin\")" "character(0)"
|
"MON" 23667299 "Monensin sodium" "Other antibacterials" "" "c(\"monensin sodium\", \"sodium monensin\")" "character(0)"
|
||||||
"MRN" "J04AK04" 70374 "Morinamide" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Other drugs for treatment of tuberculosis" "" "c(\"morfazinamide\", \"morfazinammide\", \"morfgazinamide\", \"morinamida\", \"morinamide\", \"morinamidum\", \"morphazinamid\", \"morphazinamide\", \"piazofolina\", \"piazolin\", \"piazolina\")" "character(0)"
|
"MRN" 70374 "Morinamide" "Antimycobacterials" "J04AK04" "Drugs for treatment of tuberculosis" "Other drugs for treatment of tuberculosis" "" "c(\"morfazinamide\", \"morfazinammide\", \"morfgazinamide\", \"morinamida\", \"morinamide\", \"morinamidum\", \"morphazinamid\", \"morphazinamide\", \"piazofolina\", \"piazolin\", \"piazolina\")" "character(0)"
|
||||||
"MFX" "J01MA14" 152946 "Moxifloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "c(\"mox\", \"moxi\", \"mxf\")" "c(\"actira\", \"avelox\", \"avelox i.v.\", \"avelox iv\", \"avolex\", \"izilox\", \"moxeza\", \"moxifloxacin\", \"moxifloxacine\", \"vigamox\")" 0.4 "g" 0.4 "g" "c(\"43751-7\", \"45223-5\", \"80540-8\")"
|
"MFX" 152946 "Moxifloxacin" "Quinolones" "c(\"J01MA14\", \"S01AE07\")" "Quinolone antibacterials" "Fluoroquinolones" "c(\"mox\", \"moxi\", \"mxf\")" "c(\"actira\", \"avelox\", \"avelox i.v.\", \"avelox iv\", \"avolex\", \"izilox\", \"moxeza\", \"moxifloxacin\", \"moxifloxacine\", \"vigamox\")" 0.4 "g" 0.4 "g" "c(\"43751-7\", \"45223-5\", \"80540-8\")"
|
||||||
"MUP" "R01AX06" 446596 "Mupirocin" "Other antibacterials" "c(\"mup\", \"mupi\")" "c(\"bactoderm\", \"bactroban\", \"bactroban nasal\", \"bactroban ointment\", \"centany\", \"mupirocin\", \"mupirocina\", \"mupirocine\", \"mupirocinum\", \"plasimine\", \"pseudomonic acid\", \"pseudomonic acid a\", \"turixin\")" "character(0)"
|
"MUP" 446596 "Mupirocin" "Other antibacterials" "c(\"D06AX09\", \"R01AX06\")" "c(\"mup\", \"mupi\")" "c(\"bactoderm\", \"bactroban\", \"bactroban nasal\", \"bactroban ointment\", \"centany\", \"mupirocin\", \"mupirocina\", \"mupirocine\", \"mupirocinum\", \"plasimine\", \"pseudomonic acid\", \"pseudomonic acid a\", \"turixin\")" "character(0)"
|
||||||
"NAC" 73386748 "Nacubactam" "Beta-lactams/penicillins" "" "nacubactam" "character(0)"
|
"NAC" 73386748 "Nacubactam" "Beta-lactams/penicillins" "" "nacubactam" "character(0)"
|
||||||
"NAD" 4410 "Nadifloxacin" "Quinolones" "" "c(\"acuatim\", \"nadifloxacin\", \"nadifloxacine\", \"nadifloxacino\", \"nadifloxacinum\", \"nadixa\", \"nadoxin\")" "character(0)"
|
"NAD" 4410 "Nadifloxacin" "Quinolones" "D10AF05" "" "c(\"acuatim\", \"nadifloxacin\", \"nadifloxacine\", \"nadifloxacino\", \"nadifloxacinum\", \"nadixa\", \"nadoxin\")" "character(0)"
|
||||||
"NAF" 8982 "Nafcillin" "Beta-lactams/penicillins" "" "c(\"nafcilina\", \"nafcillin\", \"nafcillin sodium\", \"nafcilline\", \"nafcillinum\", \"nallpen\", \"naphcillin\", \"unipen\")" "c(\"10993-4\", \"25232-0\")"
|
"NAF" 8982 "Nafcillin" "Beta-lactams/penicillins" "J01CF06" "" "c(\"nafcilina\", \"nafcillin\", \"nafcillin sodium\", \"nafcilline\", \"nafcillinum\", \"nallpen\", \"naphcillin\", \"unipen\")" 3 "g" "c(\"10993-4\", \"25232-0\")"
|
||||||
"ZWK" 117587595 "Nafithromycin" "Macrolides/lincosamides" "" "nafithromycin" "character(0)"
|
"ZWK" 117587595 "Nafithromycin" "Macrolides/lincosamides" "" "nafithromycin" "character(0)"
|
||||||
"NAL" "J01MB02" 4421 "Nalidixic acid" "Quinolones" "Quinolone antibacterials" "Other quinolones" "c(\"na\", \"nal\", \"nali\")" "c(\"acide nalidixico\", \"acide nalidixique\", \"acido nalidissico\", \"acido nalidixico\", \"acidum nalidixicum\", \"betaxina\", \"dixiben\", \"dixinal\", \"eucisten\", \"eucistin\", \"innoxalomn\", \"innoxalon\", \"jicsron\", \"kusnarin\", \"naldixic acid\", \"nalidic acid\", \"nalidicron\", \"nalidixan\", \"nalidixane\", \"nalidixate\", \"nalidixate sodium\", \"nalidixic\", \"nalidixic acid\", \"nalidixin\", \"nalidixinic acid\", \"nalidixinsaure\", \"nalitucsan\", \"nalurin\", \"narigix\", \"naxuril\", \"neggram\", \"negram\", \"nevigramon\", \"nicelate\", \"nogram\",
|
"NAL" 4421 "Nalidixic acid" "Quinolones" "J01MB02" "Quinolone antibacterials" "Other quinolones" "c(\"na\", \"nal\", \"nali\")" "c(\"acide nalidixico\", \"acide nalidixique\", \"acido nalidissico\", \"acido nalidixico\", \"acidum nalidixicum\", \"betaxina\", \"dixiben\", \"dixinal\", \"eucisten\", \"eucistin\", \"innoxalomn\", \"innoxalon\", \"jicsron\", \"kusnarin\", \"naldixic acid\", \"nalidic acid\", \"nalidicron\", \"nalidixan\", \"nalidixane\", \"nalidixate\", \"nalidixate sodium\", \"nalidixic\", \"nalidixic acid\", \"nalidixin\", \"nalidixinic acid\", \"nalidixinsaure\", \"nalitucsan\", \"nalurin\", \"narigix\", \"naxuril\", \"neggram\", \"negram\", \"nevigramon\", \"nicelate\", \"nogram\",
|
||||||
\"poleon\", \"sicmylon\", \"specifen\", \"specifin\", \"unaserus\", \"uralgin\", \"uriben\", \"uriclar\", \"urisal\", \"urodixin\", \"uroman\", \"uroneg\", \"uronidix\", \"uropan\", \"wintomylon\", \"wintron\")" 4 "g" "character(0)"
|
\"poleon\", \"sicmylon\", \"specifen\", \"specifin\", \"unaserus\", \"uralgin\", \"uriben\", \"uriclar\", \"urisal\", \"urodixin\", \"uroman\", \"uroneg\", \"uronidix\", \"uropan\", \"wintomylon\", \"wintron\")" 4 "g" "character(0)"
|
||||||
"NAR" 65452 "Narasin" "Other antibacterials" "" "c(\"monteban\", \"narasin\", \"narasin a\", \"narasine\", \"narasino\", \"narasinum\", \"narasul\")" "87570-8"
|
"NAR" 65452 "Narasin" "Other antibacterials" "" "c(\"monteban\", \"narasin\", \"narasin a\", \"narasine\", \"narasino\", \"narasinum\", \"narasul\")" "87570-8"
|
||||||
"NEO" "J01GB05" 8378 "Neomycin" "Aminoglycosides" "Aminoglycoside antibacterials" "Other aminoglycosides" "neom" "c(\"actilin\", \"actiline\", \"antibiotique\", \"bycomycin\", \"endomixin\", \"enterfram\", \"fradiomycin\", \"fradiomycin b\", \"fradiomycinum\", \"framicetina\", \"framycetin\", \"framycetin sulfate\", \"framycetine\", \"framycetinum\", \"framygen\", \"fraquinol\", \"jernadex\", \"myacine\", \"myacyne\", \"mycerin\", \"mycifradin\", \"neobrettin\", \"neolate\", \"neomas\", \"neomcin\", \"neomicina\", \"neomin\", \"neomycin\", \"neomycin b\", \"neomycin b sulfate\", \"neomycin solution\", \"neomycin sulfate\", \"neomycin sulphate\", \"neomycinb\", \"neomycine\", \"neomycinum\",
|
"NEO" 8378 "Neomycin" "Aminoglycosides" "c(\"A01AB08\", \"A07AA01\", \"B05CA09\", \"D06AX04\", \"J01GB05\", \"R02AB01\", \"S01AA03\", \"S02AA07\", \"S03AA01\")" "Aminoglycoside antibacterials" "Other aminoglycosides" "neom" "c(\"actilin\", \"actiline\", \"antibiotique\", \"bycomycin\", \"endomixin\", \"enterfram\", \"fradiomycin\", \"fradiomycin b\", \"fradiomycinum\", \"framicetina\", \"framycetin\", \"framycetin sulfate\", \"framycetine\", \"framycetinum\", \"framygen\", \"fraquinol\", \"jernadex\", \"myacine\", \"myacyne\", \"mycerin\", \"mycifradin\", \"neobrettin\", \"neolate\", \"neomas\", \"neomcin\", \"neomicina\", \"neomin\", \"neomycin\", \"neomycin b\", \"neomycin b sulfate\", \"neomycin solution\", \"neomycin sulfate\", \"neomycin sulphate\", \"neomycinb\", \"neomycine\", \"neomycinum\",
|
||||||
\"nivemycin\", \"pimavecort\", \"soframycin\", \"soframycine\", \"tuttomycin\", \"vonamycin\", \"vonamycin powder v\")" 1 "g" "c(\"10995-9\", \"25262-7\")"
|
\"nivemycin\", \"pimavecort\", \"soframycin\", \"soframycine\", \"tuttomycin\", \"vonamycin\", \"vonamycin powder v\")" 5 "g" "c(\"10995-9\", \"25262-7\")"
|
||||||
"NET" "J01GB07" 441306 "Netilmicin" "Aminoglycosides" "Aminoglycoside antibacterials" "Other aminoglycosides" "neti" "c(\"netillin\", \"netilmicin\", \"netilmicin sulfate\", \"netilmicina\", \"netilmicine\", \"netilmicinum\", \"netilyn\", \"netira\", \"vectacin\")" 0.35 "g" 0.35 "g" "c(\"25263-5\", \"3848-9\", \"3849-7\", \"3850-5\", \"47385-0\", \"59565-2\", \"59566-0\", \"59567-8\")"
|
"NET" 441306 "Netilmicin" "Aminoglycosides" "c(\"J01GB07\", \"S01AA23\")" "Aminoglycoside antibacterials" "Other aminoglycosides" "neti" "c(\"netillin\", \"netilmicin\", \"netilmicin sulfate\", \"netilmicina\", \"netilmicine\", \"netilmicinum\", \"netilyn\", \"netira\", \"vectacin\")" 0.35 "g" 0.35 "g" "c(\"25263-5\", \"3848-9\", \"3849-7\", \"3850-5\", \"47385-0\", \"59565-2\", \"59566-0\", \"59567-8\")"
|
||||||
"NIC" 9507 "Nicarbazin" "Other antibacterials" "" "c(\"nicarb\", \"nicarbasin\", \"nicarbazin\", \"nicarbazine\", \"nicoxin\", \"nicrazin\", \"nicrazine\", \"nirazin\")" "character(0)"
|
"NIC" 9507 "Nicarbazin" "Other antibacterials" "" "c(\"nicarb\", \"nicarbasin\", \"nicarbazin\", \"nicarbazine\", \"nicoxin\", \"nicrazin\", \"nicrazine\", \"nirazin\")" "character(0)"
|
||||||
"NIF" 71946 "Nifuroquine" "Quinolones" "" "c(\"nifuroquina\", \"nifuroquine\", \"nifuroquinum\", \"quinaldofur\")" "character(0)"
|
"NIF" 71946 "Nifuroquine" "Quinolones" "" "c(\"nifuroquina\", \"nifuroquine\", \"nifuroquinum\", \"quinaldofur\")" "character(0)"
|
||||||
"NFR" "J01XE02" 9571062 "Nifurtoinol" "Other antibacterials" "Other antibacterials" "Nitrofuran derivatives" "" "c(\"levantin\", \"nifurtoinol\", \"nifurtoinolo\", \"nifurtoinolum\", \"urfadin\", \"urfadine\", \"urfadyn\")" 0.16 "g" "character(0)"
|
"NFR" 9571062 "Nifurtoinol" "Other antibacterials" "J01XE02" "Other antibacterials" "Nitrofuran derivatives" "" "c(\"levantin\", \"nifurtoinol\", \"nifurtoinolo\", \"nifurtoinolum\", \"urfadin\", \"urfadine\", \"urfadyn\")" 0.16 "g" "character(0)"
|
||||||
"NTZ" 41684 "Nitazoxanide" "Other antibacterials" "" "c(\"adrovet\", \"alinia\", \"azt + nitazoxanide\", \"colufase\", \"cryptaz\", \"dexidex\", \"heliton\", \"kidonax\", \"nitaxozanid\", \"nitaxozanide\", \"nitazox\", \"nitazoxamide\", \"nitazoxanid\", \"nitazoxanida\", \"nitazoxanide\", \"nitazoxanidum\", \"omniparax\", \"pacovanton\", \"paramix\", \"taenitaz\")" "character(0)"
|
"NTZ" 41684 "Nitazoxanide" "Other antibacterials" "P01AX11" "" "c(\"adrovet\", \"alinia\", \"azt + nitazoxanide\", \"colufase\", \"cryptaz\", \"dexidex\", \"heliton\", \"kidonax\", \"nitaxozanid\", \"nitaxozanide\", \"nitazox\", \"nitazoxamide\", \"nitazoxanid\", \"nitazoxanida\", \"nitazoxanide\", \"nitazoxanidum\", \"omniparax\", \"pacovanton\", \"paramix\", \"taenitaz\")" 1 "g" "character(0)"
|
||||||
"NIT" "J01XE01" 6604200 "Nitrofurantoin" "Other antibacterials" "Other antibacterials" "Nitrofuran derivatives" "c(\"f\", \"f/m\", \"fd\", \"ft\", \"ni\", \"nit\", \"nitr\")" "c(\"alfuran\", \"benkfuran\", \"berkfuran\", \"berkfurin\", \"ceduran\", \"chemiofuran\", \"cistofuran\", \"cyantin\", \"cystit\", \"dantafur\", \"fua med\", \"fuamed\", \"furabid\", \"furachel\", \"furadantin\", \"furadantin retard\", \"furadantina mc\", \"furadantine\", \"furadantine mc\", \"furadantoin\", \"furadoin\", \"furadoine\", \"furadonin\", \"furadonine\", \"furadoninum\", \"furadontin\", \"furadoxyl\", \"furalan\", \"furaloid\", \"furantoin\", \"furantoina\", \"furatoin\", \"furedan\", \"furina\", \"furobactina\", \"furodantin\", \"furophen t\", \"gerofuran\",
|
"NIT" 6604200 "Nitrofurantoin" "Other antibacterials" "J01XE01" "Other antibacterials" "Nitrofuran derivatives" "c(\"f\", \"f/m\", \"fd\", \"ft\", \"ni\", \"nit\", \"nitr\")" "c(\"alfuran\", \"benkfuran\", \"berkfuran\", \"berkfurin\", \"ceduran\", \"chemiofuran\", \"cistofuran\", \"cyantin\", \"cystit\", \"dantafur\", \"fua med\", \"fuamed\", \"furabid\", \"furachel\", \"furadantin\", \"furadantin retard\", \"furadantina mc\", \"furadantine\", \"furadantine mc\", \"furadantoin\", \"furadoin\", \"furadoine\", \"furadonin\", \"furadonine\", \"furadoninum\", \"furadontin\", \"furadoxyl\", \"furalan\", \"furaloid\", \"furantoin\", \"furantoina\", \"furatoin\", \"furedan\", \"furina\", \"furobactina\", \"furodantin\", \"furophen t\", \"gerofuran\",
|
||||||
\"io>>uss>>a<<ixoo\", \"ituran\", \"ivadantin\", \"macpac\", \"macrobid\", \"macrodantin\", \"macrodantina\", \"macrofuran\", \"macrofurin\", \"nierofu\", \"nifurantin\", \"nifuretten\", \"nitoin\", \"nitrex\", \"nitrofuradantin\", \"nitrofurantion\", \"nitrofurantoin\", \"nitrofurantoin macro\", \"nitrofurantoina\", \"nitrofurantoine\", \"nitrofurantoinum\", \"novofuran\", \"orafuran\", \"parfuran\", \"phenurin\", \"piyeloseptyl\", \"siraliden\", \"trantoin\", \"uerineks\", \"urantoin\", \"urizept\", \"urodin\", \"urofuran\", \"urofurin\", \"urolisa\", \"urolong\",
|
\"io>>uss>>a<<ixoo\", \"ituran\", \"ivadantin\", \"macpac\", \"macrobid\", \"macrodantin\", \"macrodantina\", \"macrofuran\", \"macrofurin\", \"nierofu\", \"nifurantin\", \"nifuretten\", \"nitoin\", \"nitrex\", \"nitrofuradantin\", \"nitrofurantion\", \"nitrofurantoin\", \"nitrofurantoin macro\", \"nitrofurantoina\", \"nitrofurantoine\", \"nitrofurantoinum\", \"novofuran\", \"orafuran\", \"parfuran\", \"phenurin\", \"piyeloseptyl\", \"siraliden\", \"trantoin\", \"uerineks\", \"urantoin\", \"urizept\", \"urodin\", \"urofuran\", \"urofurin\", \"urolisa\", \"urolong\",
|
||||||
\"uvamin\", \"welfurin\", \"zoofurin\")" 0.2 "g" "3860-4"
|
\"uvamin\", \"welfurin\", \"zoofurin\")" 0.2 "g" "3860-4"
|
||||||
"NIZ" 5447130 "Nitrofurazone" "Other antibacterials" "" "c(\"acutol\", \"aldomycin\", \"alfucin\", \"amifur\", \"babrocid\", \"becafurazone\", \"biofuracina\", \"biofurea\", \"chemofuran\", \"chixin\", \"cocafurin\", \"coxistat\", \"dermofural\", \"dymazone\", \"dynazone\", \"eldezol\", \"fedacin\", \"flavazone\", \"fracine\", \"furacilin\", \"furacilinum\", \"furacillin\", \"furacin\", \"furacine\", \"furacinetten\", \"furacoccid\", \"furacort\", \"furacycline\", \"furaderm\", \"furagent\", \"furalcyn\", \"furaldon\", \"furalone\", \"furametral\", \"furaplast\", \"furaseptyl\", \"furaskin\", \"furatsilin\", \"furaziline\", \"furazin\",
|
"NIZ" 5447130 "Nitrofurazone" "Other antibacterials" "" "c(\"acutol\", \"aldomycin\", \"alfucin\", \"amifur\", \"babrocid\", \"becafurazone\", \"biofuracina\", \"biofurea\", \"chemofuran\", \"chixin\", \"cocafurin\", \"coxistat\", \"dermofural\", \"dymazone\", \"dynazone\", \"eldezol\", \"fedacin\", \"flavazone\", \"fracine\", \"furacilin\", \"furacilinum\", \"furacillin\", \"furacin\", \"furacine\", \"furacinetten\", \"furacoccid\", \"furacort\", \"furacycline\", \"furaderm\", \"furagent\", \"furalcyn\", \"furaldon\", \"furalone\", \"furametral\", \"furaplast\", \"furaseptyl\", \"furaskin\", \"furatsilin\", \"furaziline\", \"furazin\",
|
||||||
\"furazina\", \"furazol w\", \"furazone\", \"furazyme\", \"furesol\", \"furfurin\", \"furosem\", \"fuvacillin\", \"hemofuran\", \"ibiofural\", \"mammex\", \"mastofuran\", \"monafuracin\", \"monafuracis\", \"monofuracin\", \"nfz mix\", \"nifucin\", \"nifurid\", \"nifuzon\", \"nitrofural\", \"nitrofuralum\", \"nitrofuran\", \"nitrofurane\", \"nitrofurazan\", \"nitrofurazone\", \"nitrofurazonum\", \"nitrofurol\", \"nitrozone\", \"otofural\", \"otofuran\", \"rivafurazon\", \"sanfuran\", \"vabrocid\", \"vadrocid\", \"yatrocin\")" "character(0)"
|
\"furazina\", \"furazol w\", \"furazone\", \"furazyme\", \"furesol\", \"furfurin\", \"furosem\", \"fuvacillin\", \"hemofuran\", \"ibiofural\", \"mammex\", \"mastofuran\", \"monafuracin\", \"monafuracis\", \"monofuracin\", \"nfz mix\", \"nifucin\", \"nifurid\", \"nifuzon\", \"nitrofural\", \"nitrofuralum\", \"nitrofuran\", \"nitrofurane\", \"nitrofurazan\", \"nitrofurazone\", \"nitrofurazonum\", \"nitrofurol\", \"nitrozone\", \"otofural\", \"otofuran\", \"rivafurazon\", \"sanfuran\", \"vabrocid\", \"vadrocid\", \"yatrocin\")" "character(0)"
|
||||||
"NTR" "J01XX07" 19910 "Nitroxoline" "Quinolones" "Other antibacterials" "Other antibacterials" "" "c(\"galinok\", \"isinok\", \"nibiol\", \"nicene forte\", \"nitroxolin\", \"nitroxolina\", \"nitroxoline\", \"nitroxolinum\", \"notroxoline\", \"noxibiol\")" 1 "g" "character(0)"
|
"NTR" 19910 "Nitroxoline" "Quinolones" "J01XX07" "Other antibacterials" "Other antibacterials" "" "c(\"galinok\", \"isinok\", \"nibiol\", \"nicene forte\", \"nitroxolin\", \"nitroxolina\", \"nitroxoline\", \"nitroxolinum\", \"notroxoline\", \"noxibiol\")" 1 "g" "character(0)"
|
||||||
"NOR" "J01MA06" 4539 "Norfloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "c(\"nor\", \"norf\", \"nx\", \"nxn\")" "c(\"baccidal\", \"barazan\", \"chibroxin\", \"chibroxine\", \"chibroxol\", \"fulgram\", \"gonorcin\", \"lexinor\", \"nolicin\", \"noracin\", \"noraxin\", \"norflo\", \"norfloxacin\", \"norfloxacine\", \"norfloxacino\", \"norfloxacinum\", \"norocin\", \"noroxin\", \"noroxine\", \"norxacin\", \"sebercim\", \"uroxacin\", \"utinor\", \"zoroxin\")" 0.8 "g" "3867-9"
|
"NOR" 4539 "Norfloxacin" "Quinolones" "c(\"J01MA06\", \"S01AE02\")" "Quinolone antibacterials" "Fluoroquinolones" "c(\"nor\", \"norf\", \"nx\", \"nxn\")" "c(\"baccidal\", \"barazan\", \"chibroxin\", \"chibroxine\", \"chibroxol\", \"fulgram\", \"gonorcin\", \"lexinor\", \"nolicin\", \"noracin\", \"noraxin\", \"norflo\", \"norfloxacin\", \"norfloxacine\", \"norfloxacino\", \"norfloxacinum\", \"norocin\", \"noroxin\", \"noroxine\", \"norxacin\", \"sebercim\", \"uroxacin\", \"utinor\", \"zoroxin\")" 0.8 "g" "3867-9"
|
||||||
"NVA" 10419027 "Norvancomycin" "Glycopeptides" "" "norvancomycin" "character(0)"
|
"NVA" 10419027 "Norvancomycin" "Glycopeptides" "" "norvancomycin" "character(0)"
|
||||||
"NOV" "QJ01XX95" 54675769 "Novobiocin" "Other antibacterials" "novo" "c(\"albamix\", \"albamycin\", \"cardelmycin\", \"cathocin\", \"cathomycin\", \"crystallinic acid\", \"inamycin\", \"novobiocin\", \"novobiocina\", \"novobiocine\", \"novobiocinum\", \"robiocina\", \"sirbiocina\", \"spheromycin\", \"stilbiocina\", \"streptonivicin\")" "17378-1"
|
"NOV" 54675769 "Novobiocin" "Other antibacterials" "novo" "c(\"albamix\", \"albamycin\", \"cardelmycin\", \"cathocin\", \"cathomycin\", \"crystallinic acid\", \"inamycin\", \"novobiocin\", \"novobiocina\", \"novobiocine\", \"novobiocinum\", \"robiocina\", \"sirbiocina\", \"spheromycin\", \"stilbiocina\", \"streptonivicin\")" "17378-1"
|
||||||
"NYS" "G01AA01" 6433272 "Nystatin" "Antifungals/antimycotics" "nyst" "c(\"biofanal\", \"candex lotion\", \"comycin\", \"diastatin\", \"herniocid\", \"moronal\", \"myconystatin\", \"mycostatin\", \"mycostatin pastilles\", \"mykinac\", \"mykostatyna\", \"nilstat\", \"nistatin\", \"nistatina\", \"nyamyc\", \"nyotran\", \"nyotrantrade mark\", \"nystaform\", \"nystan\", \"nystatin\", \"nystatin a\", \"nystatin g\", \"nystatin lf\", \"nystatine\", \"nystatinum\", \"nystatyna\", \"nystavescent\", \"nystex\", \"nystop\", \"stamycin\", \"terrastatin\", \"zydin e\")" "character(0)"
|
"NYS" 6433272 "Nystatin" "Antifungals/antimycotics" "c(\"A07AA02\", \"D01AA01\", \"G01AA01\")" "nyst" "c(\"biofanal\", \"candex lotion\", \"comycin\", \"diastatin\", \"herniocid\", \"moronal\", \"myconystatin\", \"mycostatin\", \"mycostatin pastilles\", \"mykinac\", \"mykostatyna\", \"nilstat\", \"nistatin\", \"nistatina\", \"nyamyc\", \"nyotran\", \"nyotrantrade mark\", \"nystaform\", \"nystan\", \"nystatin\", \"nystatin a\", \"nystatin g\", \"nystatin lf\", \"nystatine\", \"nystatinum\", \"nystatyna\", \"nystavescent\", \"nystex\", \"nystop\", \"stamycin\", \"terrastatin\", \"zydin e\")" 1.5 "MU" "character(0)"
|
||||||
"OFX" "J01MA01" 4583 "Ofloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "c(\"of\", \"ofl\", \"oflo\", \"ofx\")" "c(\"bactocin\", \"danoflox\", \"effexin\", \"exocin\", \"exocine\", \"flobacin\", \"flodemex\", \"flotavid\", \"flovid\", \"floxal\", \"floxil\", \"floxin\", \"floxin otic\", \"floxstat\", \"fugacin\", \"inoflox\", \"kinflocin\", \"kinoxacin\", \"levofloxacin hcl\", \"liflox\", \"loxinter\", \"marfloxacin\", \"medofloxine\", \"mergexin\", \"monoflocet\", \"novecin\", \"nufafloqo\", \"occidal\", \"ocuflox\", \"oflocee\", \"oflocet\", \"oflocin\", \"oflodal\", \"oflodex\", \"oflodura\", \"ofloxacin\", \"ofloxacin otic\", \"ofloxacina\", \"ofloxacine\", \"ofloxacino\", \"ofloxacinum\",
|
"OFX" 4583 "Ofloxacin" "Quinolones" "c(\"J01MA01\", \"S01AE01\", \"S02AA16\")" "Quinolone antibacterials" "Fluoroquinolones" "c(\"of\", \"ofl\", \"oflo\", \"ofx\")" "c(\"bactocin\", \"danoflox\", \"effexin\", \"exocin\", \"exocine\", \"flobacin\", \"flodemex\", \"flotavid\", \"flovid\", \"floxal\", \"floxil\", \"floxin\", \"floxin otic\", \"floxstat\", \"fugacin\", \"inoflox\", \"kinflocin\", \"kinoxacin\", \"levofloxacin hcl\", \"liflox\", \"loxinter\", \"marfloxacin\", \"medofloxine\", \"mergexin\", \"monoflocet\", \"novecin\", \"nufafloqo\", \"occidal\", \"ocuflox\", \"oflocee\", \"oflocet\", \"oflocin\", \"oflodal\", \"oflodex\", \"oflodura\", \"ofloxacin\", \"ofloxacin otic\", \"ofloxacina\", \"ofloxacine\", \"ofloxacino\", \"ofloxacinum\",
|
||||||
\"ofloxin\", \"onexacin\", \"operan\", \"orocin\", \"otonil\", \"oxaldin\", \"pharflox\", \"praxin\", \"puiritol\", \"qinolon\", \"quinolon\", \"quotavil\", \"sinflo\", \"tabrin\", \"taravid\", \"tariflox\", \"tarivid\", \"telbit\", \"tructum\", \"uro tarivid\", \"viotisone\", \"visiren\", \"zanocin\")" 0.4 "g" 0.4 "g" "c(\"25264-3\", \"3877-8\")"
|
\"ofloxin\", \"onexacin\", \"operan\", \"orocin\", \"otonil\", \"oxaldin\", \"pharflox\", \"praxin\", \"puiritol\", \"qinolon\", \"quinolon\", \"quotavil\", \"sinflo\", \"tabrin\", \"taravid\", \"tariflox\", \"tarivid\", \"telbit\", \"tructum\", \"uro tarivid\", \"viotisone\", \"visiren\", \"zanocin\")" 0.4 "g" 0.4 "g" "c(\"25264-3\", \"3877-8\")"
|
||||||
"OLE" "J01FA05" 72493 "Oleandomycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"amimycin\", \"landomycin\", \"matromycin\", \"oleandomycin a\", \"romicil\")" 1 "g" "character(0)"
|
"OLE" 72493 "Oleandomycin" "Macrolides/lincosamides" "J01FA05" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"amimycin\", \"landomycin\", \"matromycin\", \"oleandomycin a\", \"romicil\")" 1 "g" "character(0)"
|
||||||
"OMC" 54697325 "Omadacycline" "Tetracyclines" "" "c(\"amadacycline\", \"omadacycline\")" "character(0)"
|
"OMC" 54697325 "Omadacycline" "Tetracyclines" "J01AA15" "" "c(\"amadacycline\", \"omadacycline\")" 0.3 "g" 0.1 "g" "character(0)"
|
||||||
"OPT" 87880 "Optochin" "Other antibacterials" "" "c(\"numoquin\", \"optochin\", \"optoquine\")" "character(0)"
|
"OPT" 87880 "Optochin" "Other antibacterials" "" "c(\"numoquin\", \"optochin\", \"optoquine\")" "character(0)"
|
||||||
"ORB" 60605 "Orbifloxacin" "Quinolones" "" "orbifloxacin" "character(0)"
|
"ORB" 60605 "Orbifloxacin" "Quinolones" "" "orbifloxacin" "character(0)"
|
||||||
"ORI" "J01XA05" 16136912 "Oritavancin" "Glycopeptides" "Other antibacterials" "Glycopeptide antibacterials" "orit" "oritavancin" "character(0)"
|
"ORI" 16136912 "Oritavancin" "Glycopeptides" "J01XA05" "Other antibacterials" "Glycopeptide antibacterials" "orit" "oritavancin" "character(0)"
|
||||||
"ORS" "Ormetroprim/sulfamethoxazole" "Other antibacterials" "" "" ""
|
"ORS" "Ormetroprim/sulfamethoxazole" "Other antibacterials" "" "" ""
|
||||||
"ORN" "J01XD03" 28061 "Ornidazole" "Other antibacterials" "Other antibacterials" "Imidazole derivatives" "" "c(\"madelen\", \"ornidal\", \"ornidazol\", \"ornidazole\", \"ornidazolum\", \"tiberal\")" 1 "g" "character(0)"
|
"ORN" 28061 "Ornidazole" "Other antibacterials" "c(\"G01AF06\", \"J01XD03\", \"P01AB03\")" "Other antibacterials" "Imidazole derivatives" "" "c(\"madelen\", \"ornidal\", \"ornidazol\", \"ornidazole\", \"ornidazolum\", \"tiberal\")" 1.5 "g" 1 "g" "character(0)"
|
||||||
"OXA" "J01CF04" 6196 "Oxacillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase resistant penicillins" "c(\"ox\", \"oxa\", \"oxac\", \"oxal\", \"oxs\")" "c(\"bactocill\", \"ossacillina\", \"oxacilina\", \"oxacillin\", \"oxacillin sodium\", \"oxacilline\", \"oxacillinum\", \"oxazocillin\", \"oxazocilline\", \"prostaphlin\", \"prostaphlyn\", \"sodium oxacillin\")" 2 "g" 2 "g" "c(\"25265-0\", \"3882-8\")"
|
"OXA" 6196 "Oxacillin" "Beta-lactams/penicillins" "J01CF04" "Beta-lactam antibacterials, penicillins" "Beta-lactamase resistant penicillins" "c(\"ox\", \"oxa\", \"oxac\", \"oxal\", \"oxs\")" "c(\"bactocill\", \"ossacillina\", \"oxacilina\", \"oxacillin\", \"oxacillin sodium\", \"oxacilline\", \"oxacillinum\", \"oxazocillin\", \"oxazocilline\", \"prostaphlin\", \"prostaphlyn\", \"sodium oxacillin\")" 2 "g" 2 "g" "c(\"25265-0\", \"3882-8\")"
|
||||||
"OXO" "J01MB05" 4628 "Oxolinic acid" "Quinolones" "Quinolone antibacterials" "Other quinolones" "" "c(\"acide oxolinique\", \"acido ossolico\", \"acido oxolinico\", \"acidum oxolinicum\", \"aqualinic\", \"cistopax\", \"dioxacin\", \"emyrenil\", \"gramurin\", \"inoxyl\", \"nidantin\", \"oksaren\", \"orthurine\", \"ossian\", \"oxoboi\", \"oxolinic\", \"oxolinic acid\", \"pietil\", \"prodoxal\", \"prodoxol\", \"starner\", \"tiurasin\", \"ultibid\", \"urinox\", \"uritrate\", \"urotrate\", \"uroxol\", \"utibid\")" 1 "g" "character(0)"
|
"OXO" 4628 "Oxolinic acid" "Quinolones" "J01MB05" "Quinolone antibacterials" "Other quinolones" "" "c(\"acide oxolinique\", \"acido ossolico\", \"acido oxolinico\", \"acidum oxolinicum\", \"aqualinic\", \"cistopax\", \"dioxacin\", \"emyrenil\", \"gramurin\", \"inoxyl\", \"nidantin\", \"oksaren\", \"orthurine\", \"ossian\", \"oxoboi\", \"oxolinic\", \"oxolinic acid\", \"pietil\", \"prodoxal\", \"prodoxol\", \"starner\", \"tiurasin\", \"ultibid\", \"urinox\", \"uritrate\", \"urotrate\", \"uroxol\", \"utibid\")" 1 "g" "character(0)"
|
||||||
"OXY" "J01AA06" 54675779 "Oxytetracycline" "Tetracyclines" "Tetracyclines" "Tetracyclines" "" "c(\"adamycin\", \"berkmycen\", \"biostat\", \"biostat pa\", \"dabicycline\", \"dalimycin\", \"embryostat\", \"fanterrin\", \"galsenomycin\", \"geomycin\", \"geotilin\", \"hydroxytetracyclinum\", \"imperacin\", \"lenocycline\", \"macocyn\", \"medamycin\", \"mepatar\", \"oksisyklin\", \"ossitetraciclina\", \"oxacycline\", \"oxitetraciclina\", \"oxitetracyclin\", \"oxitetracycline\", \"oxitetracyclinum\", \"oxydon\", \"oxymycin\", \"oxymykoin\", \"oxypam\", \"oxysteclin\", \"oxyterracin\", \"oxyterracine\", \"oxyterracyne\", \"oxytetracid\", \"oxytetracyclin\", \"oxytetracycline\",
|
"OXY" 54675779 "Oxytetracycline" "Tetracyclines" "c(\"D06AA03\", \"G01AA07\", \"J01AA06\", \"S01AA04\")" "Tetracyclines" "Tetracyclines" "" "c(\"adamycin\", \"berkmycen\", \"biostat\", \"biostat pa\", \"dabicycline\", \"dalimycin\", \"embryostat\", \"fanterrin\", \"galsenomycin\", \"geomycin\", \"geotilin\", \"hydroxytetracyclinum\", \"imperacin\", \"lenocycline\", \"macocyn\", \"medamycin\", \"mepatar\", \"oksisyklin\", \"ossitetraciclina\", \"oxacycline\", \"oxitetraciclina\", \"oxitetracyclin\", \"oxitetracycline\", \"oxitetracyclinum\", \"oxydon\", \"oxymycin\", \"oxymykoin\", \"oxypam\", \"oxysteclin\", \"oxyterracin\", \"oxyterracine\", \"oxyterracyne\", \"oxytetracid\", \"oxytetracyclin\", \"oxytetracycline\",
|
||||||
\"oxytetracycline base\", \"oxytetracyclinum\", \"proteroxyna\", \"riomitsin\", \"ryomycin\", \"solkaciclina\", \"stecsolin\", \"stevacin\", \"tarocyn\", \"tarosin\", \"teravit\", \"terrafungine\", \"terramitsin\", \"terramycin\", \"terramycin im\", \"tetran\", \"unimycin\", \"ursocyclin\", \"ursocycline\", \"vendarcin\")" 1 "g" 1 "g" "c(\"17396-3\", \"25266-8\", \"87595-5\")"
|
\"oxytetracycline base\", \"oxytetracyclinum\", \"proteroxyna\", \"riomitsin\", \"ryomycin\", \"solkaciclina\", \"stecsolin\", \"stevacin\", \"tarocyn\", \"tarosin\", \"teravit\", \"terrafungine\", \"terramitsin\", \"terramycin\", \"terramycin im\", \"tetran\", \"unimycin\", \"ursocyclin\", \"ursocycline\", \"vendarcin\")" 1 "g" 1 "g" "c(\"17396-3\", \"25266-8\", \"87595-5\")"
|
||||||
"PAS" 4649 "P-aminosalicylic acid" "Antimycobacterials" "" "c(\"aminopar\", \"aminosalicylic\", \"aminosalicylic acid\", \"aminosalyl\", \"aminox\", \"apacil\", \"deapasil\", \"entepas\", \"ferrosan\", \"gabbropas\", \"helipidyl\", \"hellipidyl\", \"neopasalate\", \"osacyl\", \"pamacyl\", \"pamisyl\", \"paramycin\", \"parasal\", \"parasalicil\", \"parasalindon\", \"pasalon\", \"pasara\", \"pascorbic\", \"pasdium\", \"paser granules\", \"paskalium\", \"pasmed\", \"pasnodia\", \"pasolac\", \"propasa\", \"rezipas\", \"teebacin\", \"wln: zr cq dvq\")" "character(0)"
|
"PAS" 4649 "P-aminosalicylic acid" "Antimycobacterials" "" "c(\"aminopar\", \"aminosalicylic\", \"aminosalicylic acid\", \"aminosalyl\", \"aminox\", \"apacil\", \"deapasil\", \"entepas\", \"ferrosan\", \"gabbropas\", \"helipidyl\", \"hellipidyl\", \"neopasalate\", \"osacyl\", \"pamacyl\", \"pamisyl\", \"paramycin\", \"parasal\", \"parasalicil\", \"parasalindon\", \"pasalon\", \"pasara\", \"pascorbic\", \"pasdium\", \"paser granules\", \"paskalium\", \"pasmed\", \"pasnodia\", \"pasolac\", \"propasa\", \"rezipas\", \"teebacin\", \"wln: zr cq dvq\")" "character(0)"
|
||||||
"PAN" 72015 "Panipenem" "Carbapenems" "" "c(\"panipenem\", \"panipenemum\", \"penipanem\")" "character(0)"
|
"PAN" 72015 "Panipenem" "Carbapenems" "" "c(\"panipenem\", \"panipenemum\", \"penipanem\")" "character(0)"
|
||||||
"PAR" 165580 "Paromomycin" "Other antibacterials" "" "c(\"aminosidin\", \"aminosidine\", \"aminosidine i\", \"aminosidine sulfate\", \"amminosidin\", \"crestomycin\", \"estomycin\", \"gabbromicina\", \"gabbromycin\", \"gabromycin\", \"humatin\", \"humycin\", \"hydroxymycin\", \"hydroxymycin sulfate\", \"monomycin\", \"monomycin a\", \"neomycin e\", \"paramomycin\", \"paramomycin sulfate\", \"paromomicina\", \"paromomycin\", \"paromomycin i\", \"paromomycine\", \"paromomycinum\", \"paucimycin\", \"paucimycinum\", \"quintomycin c\")" "character(0)"
|
"PAR" 165580 "Paromomycin" "Other antibacterials" "A07AA06" "" "c(\"aminosidin\", \"aminosidine\", \"aminosidine i\", \"aminosidine sulfate\", \"amminosidin\", \"crestomycin\", \"estomycin\", \"gabbromicina\", \"gabbromycin\", \"gabromycin\", \"humatin\", \"humycin\", \"hydroxymycin\", \"hydroxymycin sulfate\", \"monomycin\", \"monomycin a\", \"neomycin e\", \"paramomycin\", \"paramomycin sulfate\", \"paromomicina\", \"paromomycin\", \"paromomycin i\", \"paromomycine\", \"paromomycinum\", \"paucimycin\", \"paucimycinum\", \"quintomycin c\")" 3 "g" "character(0)"
|
||||||
"PAZ" "J01MA18" 65957 "Pazufloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "" "c(\"pazufloxacin\", \"pazufloxacine\", \"pazufloxacino\", \"pazufloxacinum\")" 1 "g" "character(0)"
|
"PAZ" 65957 "Pazufloxacin" "Quinolones" "J01MA18" "Quinolone antibacterials" "Fluoroquinolones" "" "c(\"pazufloxacin\", \"pazufloxacine\", \"pazufloxacino\", \"pazufloxacinum\")" 1 "g" "character(0)"
|
||||||
"PEF" "J01MA03" 51081 "Pefloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"pefl\")" "c(\"abactal\", \"labocton\", \"pefloxacin\", \"pefloxacine\", \"pefloxacino\", \"pefloxacinum\", \"perfloxacin\", \"silver pefloxacin\")" 0.8 "g" 0.8 "g" "3906-5"
|
"PEF" 51081 "Pefloxacin" "Quinolones" "J01MA03" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"pefl\")" "c(\"abactal\", \"labocton\", \"pefloxacin\", \"pefloxacine\", \"pefloxacino\", \"pefloxacinum\", \"perfloxacin\", \"silver pefloxacin\")" 0.8 "g" 0.8 "g" "3906-5"
|
||||||
"PNM" "J01CE06" 10250769 "Penamecillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "" "c(\"hydroxymethyl\", \"penamecilina\", \"penamecillin\", \"penamecillina\", \"penamecilline\", \"penamecillinum\")" 1.05 "g" "character(0)"
|
"PNM" 10250769 "Penamecillin" "Beta-lactams/penicillins" "J01CE06" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "" "c(\"hydroxymethyl\", \"penamecilina\", \"penamecillin\", \"penamecillina\", \"penamecilline\", \"penamecillinum\")" 1.05 "g" "character(0)"
|
||||||
"PNO" "Penicillin/novobiocin" "Beta-lactams/penicillins" "" "" ""
|
"PNO" "Penicillin/novobiocin" "Beta-lactams/penicillins" "" "" ""
|
||||||
"PSU" "Penicillin/sulbactam" "Beta-lactams/penicillins" "" "" ""
|
"PSU" "Penicillin/sulbactam" "Beta-lactams/penicillins" "" "" ""
|
||||||
"PNM1" "J01AA10" 54686187 "Penimepicycline" "Tetracyclines" "Tetracyclines" "Tetracyclines" "" "c(\"duamine\", \"hydrocycline\", \"penetracyne\", \"penimepiciclina\", \"penimepicycline\", \"penimepicyclinum\")" "character(0)"
|
"PNM1" 54686187 "Penimepicycline" "Tetracyclines" "J01AA10" "Tetracyclines" "Tetracyclines" "" "c(\"duamine\", \"hydrocycline\", \"penetracyne\", \"penimepiciclina\", \"penimepicycline\", \"penimepicyclinum\")" "character(0)"
|
||||||
"PIM" 65453 "Pentisomicin" "Aminoglycosides" "" "c(\"pentisomicin\", \"pentisomicina\", \"pentisomicine\", \"pentisomicinum\")" "character(0)"
|
"PIM" 65453 "Pentisomicin" "Aminoglycosides" "" "c(\"pentisomicin\", \"pentisomicina\", \"pentisomicine\", \"pentisomicinum\")" "character(0)"
|
||||||
"PTZ" 55250256 "Pentizidone" "Other antibacterials" "" "" ""
|
"PTZ" 55250256 "Pentizidone" "Other antibacterials" "" "" ""
|
||||||
"PEX" 16132253 "Pexiganan" "Other antibacterials" "" "pexiganan" "character(0)"
|
"PEX" 16132253 "Pexiganan" "Other antibacterials" "" "pexiganan" "character(0)"
|
||||||
"PHE" "J01CE05" 272833 "Phenethicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "c(\"\", \"fene\")" "c(\"feneticilina\", \"feneticillina\", \"feneticilline\", \"k phenethicillin\", \"phenethicilin\", \"phenethicillinum\", \"pheneticillin\", \"pheneticilline\", \"pheneticillinum\", \"phenoxy pc\", \"potassium penicillin\")" 1 "g" "41471-4"
|
"PHE" 272833 "Phenethicillin" "Beta-lactams/penicillins" "J01CE05" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "c(\"\", \"fene\")" "c(\"feneticilina\", \"feneticillina\", \"feneticilline\", \"k phenethicillin\", \"phenethicilin\", \"phenethicillinum\", \"pheneticillin\", \"pheneticilline\", \"pheneticillinum\", \"phenoxy pc\", \"potassium penicillin\")" 1 "g" "41471-4"
|
||||||
"PHN" "J01CE02" 6869 "Phenoxymethylpenicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "c(\"fepe\", \"peni v\", \"penicillin v\", \"pnv\", \"pv\")" "c(\"acipen v\", \"apocillin\", \"apopen\", \"beromycin\", \"calcipen\", \"compocillin v\", \"crystapen v\", \"distaquaine v\", \"eskacillian v\", \"eskacillin v\", \"fenacilin\", \"fenospen\", \"meropenin\", \"oracillin\", \"oratren\", \"penicillin v\", \"phenocillin\", \"phenomycilline\", \"phenopenicillin\", \"robicillin\", \"rocilin\", \"stabicillin\", \"vebecillin\", \"veetids\", \"vegacillin\")" 2 "g" "character(0)"
|
"PHN" 6869 "Phenoxymethylpenicillin" "Beta-lactams/penicillins" "J01CE02" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "c(\"fepe\", \"peni v\", \"penicillin v\", \"pnv\", \"pv\")" "c(\"acipen v\", \"apocillin\", \"apopen\", \"beromycin\", \"calcipen\", \"compocillin v\", \"crystapen v\", \"distaquaine v\", \"eskacillian v\", \"eskacillin v\", \"fenacilin\", \"fenospen\", \"meropenin\", \"oracillin\", \"oratren\", \"penicillin v\", \"phenocillin\", \"phenomycilline\", \"phenopenicillin\", \"robicillin\", \"rocilin\", \"stabicillin\", \"vebecillin\", \"veetids\", \"vegacillin\")" 2 "g" "character(0)"
|
||||||
"PMR" 5284447 "Pimaricin (Natamycin)" "Antifungals/antimycotics" "" "c(\"delvocid\", \"mycophyt\", \"myprozine\", \"natacyn\", \"natamicina\", \"natamycin\", \"natamycine\", \"natamycinum\", \"pimafucin\", \"pimaracin\", \"pimarizin\", \"synogil\", \"tennecetin\")" "character(0)"
|
"PMR" 5284447 "Pimaricin (Natamycin)" "Antifungals/antimycotics" "" "c(\"delvocid\", \"mycophyt\", \"myprozine\", \"natacyn\", \"natamicina\", \"natamycin\", \"natamycine\", \"natamycinum\", \"pimafucin\", \"pimaracin\", \"pimarizin\", \"synogil\", \"tennecetin\")" "character(0)"
|
||||||
"PPA" "J01MB04" 4831 "Pipemidic acid" "Quinolones" "Quinolone antibacterials" "Other quinolones" "c(\"pipz\", \"pizu\")" "c(\"acide pipemidique\", \"acido pipemidico\", \"acidum pipemidicum\", \"deblaston\", \"dolcol\", \"pipedac\", \"pipemid\", \"pipemidic\", \"pipemidic acid\", \"pipemidicacid\", \"pipram\", \"uromidin\")" 0.8 "g" "character(0)"
|
"PPA" 4831 "Pipemidic acid" "Quinolones" "J01MB04" "Quinolone antibacterials" "Other quinolones" "c(\"pipz\", \"pizu\")" "c(\"acide pipemidique\", \"acido pipemidico\", \"acidum pipemidicum\", \"deblaston\", \"dolcol\", \"pipedac\", \"pipemid\", \"pipemidic\", \"pipemidic acid\", \"pipemidicacid\", \"pipram\", \"uromidin\")" 0.8 "g" "character(0)"
|
||||||
"PIP" "J01CA12" 43672 "Piperacillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"pi\", \"pip\", \"pipc\", \"pipe\", \"pp\")" "c(\"isipen\", \"pentcillin\", \"peperacillin\", \"peracin\", \"piperacilina\", \"piperacillin\", \"piperacillin na\", \"piperacillin sodium\", \"piperacilline\", \"piperacillinum\", \"pipercillin\", \"pipracil\", \"pipril\")" 14 "g" "c(\"25268-4\", \"3972-7\")"
|
"PIP" 43672 "Piperacillin" "Beta-lactams/penicillins" "J01CA12" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"pi\", \"pip\", \"pipc\", \"pipe\", \"pp\")" "c(\"isipen\", \"pentcillin\", \"peperacillin\", \"peracin\", \"piperacilina\", \"piperacillin\", \"piperacillin na\", \"piperacillin sodium\", \"piperacilline\", \"piperacillinum\", \"pipercillin\", \"pipracil\", \"pipril\")" 14 "g" "c(\"25268-4\", \"3972-7\")"
|
||||||
"PIS" "Piperacillin/sulbactam" "Beta-lactams/penicillins" "" "" ""
|
"PIS" "Piperacillin/sulbactam" "Beta-lactams/penicillins" "" "" ""
|
||||||
"TZP" "J01CR05" 461573 "Piperacillin/tazobactam" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Combinations of penicillins, incl. beta-lactamase inhibitors" "c(\"p/t\", \"piptaz\", \"piptazo\", \"pit\", \"pita\", \"pt\", \"ptc\", \"ptz\", \"tzp\")" "c(\"\", \"tazocel\", \"tazocillin\", \"tazocin\", \"zosyn\")" 14 "g" "character(0)"
|
"TZP" 461573 "Piperacillin/tazobactam" "Beta-lactams/penicillins" "J01CR05" "Beta-lactam antibacterials, penicillins" "Combinations of penicillins, incl. beta-lactamase inhibitors" "c(\"p/t\", \"piptaz\", \"piptazo\", \"pit\", \"pita\", \"pt\", \"ptc\", \"ptz\", \"tzp\")" "c(\"\", \"tazocel\", \"tazocillin\", \"tazocin\", \"zosyn\")" 14 "g" "character(0)"
|
||||||
"PRC" 71978 "Piridicillin" "Beta-lactams/penicillins" "" "piridicillin" "character(0)"
|
"PRC" 71978 "Piridicillin" "Beta-lactams/penicillins" "" "piridicillin" "character(0)"
|
||||||
"PRL" 157385 "Pirlimycin" "Other antibacterials" "" "c(\"pirlimycin\", \"pirlimycina\", \"pirlimycine\", \"pirlimycinum\", \"pirsue\")" "character(0)"
|
"PRL" 157385 "Pirlimycin" "Macrolides/lincosamides" "" "c(\"pirlimycin\", \"pirlimycina\", \"pirlimycine\", \"pirlimycinum\", \"pirsue\")" "character(0)"
|
||||||
"PIR" "J01MB03" 4855 "Piromidic acid" "Quinolones" "Quinolone antibacterials" "Other quinolones" "" "c(\"acide piromidique\", \"acido piromidico\", \"acidum piromidicum\", \"actrun c\", \"bactramyl\", \"enterol\", \"gastrurol\", \"panacid\", \"pirodal\", \"piromidic acid\", \"pyrido\", \"reelon\", \"septural\", \"urisept\", \"uropir\", \"zaomeal\")" 2 "g" "character(0)"
|
"PIR" 4855 "Piromidic acid" "Quinolones" "J01MB03" "Quinolone antibacterials" "Other quinolones" "" "c(\"acide piromidique\", \"acido piromidico\", \"acidum piromidicum\", \"actrun c\", \"bactramyl\", \"enterol\", \"gastrurol\", \"panacid\", \"pirodal\", \"piromidic acid\", \"pyrido\", \"reelon\", \"septural\", \"urisept\", \"uropir\", \"zaomeal\")" 2 "g" "character(0)"
|
||||||
"PVM" "J01CA02" 33478 "Pivampicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"berocillin\", \"pivaloylampicillin\", \"pivampicilina\", \"pivampicillin\", \"pivampicilline\", \"pivampicillinum\", \"pondocillin\")" 1.05 "g" "character(0)"
|
"PVM" 33478 "Pivampicillin" "Beta-lactams/penicillins" "J01CA02" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"berocillin\", \"pivaloylampicillin\", \"pivampicilina\", \"pivampicillin\", \"pivampicilline\", \"pivampicillinum\", \"pondocillin\")" 1.05 "g" "character(0)"
|
||||||
"PME" "J01CA08" 115163 "Pivmecillinam" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"amdinocillin pivoxil\", \"coactabs\", \"hydroxymethyl\", \"pivmecilinamo\", \"pivmecillinam\", \"pivmecillinam hcl\", \"pivmecillinamum\")" 0.6 "g" "character(0)"
|
"PME" 115163 "Pivmecillinam" "Beta-lactams/penicillins" "J01CA08" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"amdinocillin pivoxil\", \"coactabs\", \"hydroxymethyl\", \"pivmecilinamo\", \"pivmecillinam\", \"pivmecillinam hcl\", \"pivmecillinamum\")" 0.6 "g" "character(0)"
|
||||||
"PLZ" 42613186 "Plazomicin" "Aminoglycosides" "" "plazomicin" "92024-9"
|
"PLZ" 42613186 "Plazomicin" "Aminoglycosides" "J01GB14" "" "plazomicin" "92024-9"
|
||||||
"PLB" "J01XB02" 49800004 "Polymyxin B" "Polymyxins" "Other antibacterials" "Polymyxins" "c(\"pb\", \"pol\", \"polb\", \"poly\", \"poly b\", \"polymixin\", \"polymixin b\")" "c(\"polimixina b\", \"polumyxin b\", \"polymixin b\", \"polymyxine b\")" 0.15 "g" "c(\"17473-0\", \"25269-2\")"
|
"PLB" 49800004 "Polymyxin B" "Polymyxins" "c(\"A07AA05\", \"J01XB02\", \"S01AA18\", \"S02AA11\", \"S03AA03\")" "Other antibacterials" "Polymyxins" "c(\"pb\", \"pol\", \"polb\", \"poly\", \"poly b\", \"polymixin\", \"polymixin b\")" "c(\"polimixina b\", \"polumyxin b\", \"polymixin b\", \"polymyxine b\")" 3 "MU" 0.15 "g" "c(\"17473-0\", \"25269-2\")"
|
||||||
"POP" "Polymyxin B/polysorbate 80" "Polymyxins" "" "" ""
|
"POP" "Polymyxin B/polysorbate 80" "Polymyxins" "" "" ""
|
||||||
"POS" "J02AC04" 468595 "Posaconazole" "Antifungals/antimycotics" "Antimycotics for systemic use" "Triazole derivatives" "posa" "c(\"noxafil\", \"posaconazole\", \"posaconazole sp\", \"posconazole\")" 0.3 "g" 0.3 "g" "c(\"53731-6\", \"80545-7\")"
|
"POS" 468595 "Posaconazole" "Antifungals/antimycotics" "J02AC04" "Antimycotics for systemic use" "Triazole derivatives" "posa" "c(\"noxafil\", \"posaconazole\", \"posaconazole sp\", \"posconazole\")" 0.3 "g" 0.3 "g" "c(\"53731-6\", \"80545-7\")"
|
||||||
"PRA" 9802884 "Pradofloxacin" "Quinolones" "" "pradofloxacin" "character(0)"
|
"PRA" 9802884 "Pradofloxacin" "Quinolones" "" "pradofloxacin" "character(0)"
|
||||||
"PRX" 71455 "Premafloxacin" "Quinolones" "" "premafloxacin" "character(0)"
|
"PRX" 71455 "Premafloxacin" "Quinolones" "" "premafloxacin" "character(0)"
|
||||||
"PMD" "J04AK08" 456199 "Pretomanid" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Other drugs for treatment of tuberculosis" "" "" ""
|
"PMD" 456199 "Pretomanid" "Antimycobacterials" "J04AK08" "Drugs for treatment of tuberculosis" "Other drugs for treatment of tuberculosis" "" "" ""
|
||||||
"PRM" 6446787 "Primycin" "Macrolides/lincosamides" "" "" ""
|
"PRM" 6446787 "Primycin" "Macrolides/lincosamides" "" "" ""
|
||||||
"PRI" "J01FG01" 11979535 "Pristinamycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Streptogramins" "c(\"\", \"pris\")" "c(\"eskalin v\", \"mikamycin\", \"mikamycine\", \"mikamycinum\", \"ostreogrycinum\", \"pristinamycine\", \"pristinamycinum\", \"stafac\", \"stafytracine\", \"staphylomycin\", \"starfac\", \"streptogramin\", \"vernamycin\", \"virgimycin\", \"virgimycine\", \"virginiamycina\", \"virginiamycine\", \"virginiamycinum\")" 2 "g" "character(0)"
|
"PRI" 11979535 "Pristinamycin" "Macrolides/lincosamides" "J01FG01" "Macrolides, lincosamides and streptogramins" "Streptogramins" "c(\"\", \"pris\")" "c(\"eskalin v\", \"mikamycin\", \"mikamycine\", \"mikamycinum\", \"ostreogrycinum\", \"pristinamycine\", \"pristinamycinum\", \"stafac\", \"stafytracine\", \"staphylomycin\", \"starfac\", \"streptogramin\", \"vernamycin\", \"virgimycin\", \"virgimycine\", \"virginiamycina\", \"virginiamycine\", \"virginiamycinum\")" 2 "g" "character(0)"
|
||||||
"PRB" "J01CE09" 5903 "Procaine benzylpenicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "" "c(\"depocillin\", \"duphapen\", \"hostacillin\", \"hydracillin\", \"jenacillin o\", \"nopcaine\", \"penicillin procaine\", \"retardillin\", \"vetspen\", \"vitablend\")" 0.6 "g" "character(0)"
|
"PRB" 5903 "Procaine benzylpenicillin" "Beta-lactams/penicillins" "J01CE09" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "" "c(\"depocillin\", \"duphapen\", \"hostacillin\", \"hydracillin\", \"jenacillin o\", \"nopcaine\", \"penicillin procaine\", \"retardillin\", \"vetspen\", \"vitablend\")" 0.6 "g" "character(0)"
|
||||||
"PRP" "J01CE03" 92879 "Propicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "" "c(\"propicilina\", \"propicillin\", \"propicilline\", \"propicillinum\")" 0.9 "g" "character(0)"
|
"PRP" 92879 "Propicillin" "Beta-lactams/penicillins" "J01CE03" "Beta-lactam antibacterials, penicillins" "Beta-lactamase sensitive penicillins" "" "c(\"propicilina\", \"propicillin\", \"propicilline\", \"propicillinum\")" 0.9 "g" "character(0)"
|
||||||
"PKA" 9872451 "Propikacin" "Aminoglycosides" "" "c(\"propikacin\", \"propikacina\", \"propikacine\", \"propikacinum\")" "character(0)"
|
"PKA" 9872451 "Propikacin" "Aminoglycosides" "" "c(\"propikacin\", \"propikacina\", \"propikacine\", \"propikacinum\")" "character(0)"
|
||||||
"PTH" "J04AD01" 666418 "Prothionamide" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Thiocarbamide derivatives" "prot" "c(\"ektebin\", \"peteha\", \"prothionamide\", \"prothionamidum\", \"protion\", \"protionamid\", \"protionamida\", \"protionamide\", \"protionamidum\", \"protionizina\", \"tebeform\", \"trevintix\", \"tuberex\")" 0.75 "g" "character(0)"
|
"PTH" 666418 "Prothionamide" "Antimycobacterials" "J04AD01" "Drugs for treatment of tuberculosis" "Thiocarbamide derivatives" "prot" "c(\"ektebin\", \"peteha\", \"prothionamide\", \"prothionamidum\", \"protion\", \"protionamid\", \"protionamida\", \"protionamide\", \"protionamidum\", \"protionizina\", \"tebeform\", \"trevintix\", \"tuberex\")" 0.75 "g" "character(0)"
|
||||||
"PRU" "J01MA17" 65947 "Prulifloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "" "c(\"prulifloxacin\", \"pruvel\", \"pufloxacin dioxolil\", \"quisnon\")" 0.6 "g" "character(0)"
|
"PRU" 65947 "Prulifloxacin" "Quinolones" "J01MA17" "Quinolone antibacterials" "Fluoroquinolones" "" "c(\"prulifloxacin\", \"pruvel\", \"pufloxacin dioxolil\", \"quisnon\")" 0.6 "g" "character(0)"
|
||||||
"PZA" "J04AK01" 1046 "Pyrazinamide" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Other drugs for treatment of tuberculosis" "pyra" "c(\"aldinamid\", \"aldinamide\", \"braccopiral\", \"corsazinmid\", \"dipimide\", \"eprazin\", \"farmizina\", \"isopas\", \"lynamide\", \"novamid\", \"p ezetamid\", \"pezetamid\", \"pharozinamide\", \"piraldina\", \"pirazimida\", \"pirazinamid\", \"pirazinamida\", \"pirazinamide\", \"prazina\", \"pyrafat\", \"pyramide\", \"pyrazide\", \"pyrazinamdie\", \"pyrazinamid\", \"pyrazinamide\", \"pyrazinamidum\", \"pyrazine carboxamide\", \"pyrazineamide\", \"pyrizinamide\", \"rifafour\", \"rozide\", \"tebrazid\", \"tebrazio\", \"tisamid\", \"unipyranamide\", \"zinamide\", \"zinastat\"
|
"PZA" 1046 "Pyrazinamide" "Antimycobacterials" "J04AK01" "Drugs for treatment of tuberculosis" "Other drugs for treatment of tuberculosis" "pyra" "c(\"aldinamid\", \"aldinamide\", \"braccopiral\", \"corsazinmid\", \"dipimide\", \"eprazin\", \"farmizina\", \"isopas\", \"lynamide\", \"novamid\", \"p ezetamid\", \"pezetamid\", \"pharozinamide\", \"piraldina\", \"pirazimida\", \"pirazinamid\", \"pirazinamida\", \"pirazinamide\", \"prazina\", \"pyrafat\", \"pyramide\", \"pyrazide\", \"pyrazinamdie\", \"pyrazinamid\", \"pyrazinamide\", \"pyrazinamidum\", \"pyrazine carboxamide\", \"pyrazineamide\", \"pyrizinamide\", \"rifafour\", \"rozide\", \"tebrazid\", \"tebrazio\", \"tisamid\", \"unipyranamide\", \"zinamide\", \"zinastat\"
|
||||||
)" 1.5 "g" "c(\"11001-5\", \"25270-0\")"
|
)" 1.5 "g" "c(\"11001-5\", \"25270-0\")"
|
||||||
"QDA" "J01FG02" 11979418 "Quinupristin/dalfopristin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Streptogramins" "c(\"q/d\", \"qda\", \"qida\", \"quda\", \"rp\", \"syn\")" "" 1.5 "g" ""
|
"QDA" 11979418 "Quinupristin/dalfopristin" "Macrolides/lincosamides" "J01FG02" "Macrolides, lincosamides and streptogramins" "Streptogramins" "c(\"q/d\", \"qda\", \"qida\", \"quda\", \"rp\", \"syn\")" "" 1.5 "g" ""
|
||||||
"RAC" 56052 "Ractopamine" "Other antibacterials" "" "c(\"ractopamina\", \"ractopamine\", \"ractopaminum\")" "character(0)"
|
"RAC" 56052 "Ractopamine" "Other antibacterials" "" "c(\"ractopamina\", \"ractopamine\", \"ractopaminum\")" "character(0)"
|
||||||
"RAM" 16132338 "Ramoplanin" "Glycopeptides" "" "ramoplanin" "character(0)"
|
"RAM" 16132338 "Ramoplanin" "Glycopeptides" "" "ramoplanin" "character(0)"
|
||||||
"RZM" 10993211 "Razupenem" "Carbapenems" "" "razupenem" "character(0)"
|
"RZM" 10993211 "Razupenem" "Carbapenems" "" "razupenem" "character(0)"
|
||||||
"RTP" "A07AA11" 6918462 "Retapamulin" "Other antibacterials" "Intestinal antiinfectives" "Antibiotics" "" "c(\"altabax\", \"altargo\", \"retapamulin\")" 0.6 "g" "character(0)"
|
"RTP" 6918462 "Retapamulin" "Other antibacterials" "D06AX13" "Antibiotics for topical use" "Other antibiotics for topical use" "" "c(\"altabax\", \"altargo\", \"retapamulin\")" "character(0)"
|
||||||
"RBC" "J02AC05" 44631912 "Ribociclib" "Antifungals/antimycotics" "Antimycotics for systemic use" "Triazole derivatives" "ribo" "c(\"kisqali\", \"ribociclib\")" 0.2 0.2 "character(0)"
|
"RBC" 44631912 "Ribociclib" "Antifungals/antimycotics" "L01EF02" "Antimycotics for systemic use" "Triazole derivatives" "ribo" "c(\"kisqali\", \"ribociclib\")" "character(0)"
|
||||||
"RST" "J01GB10" 33042 "Ribostamycin" "Aminoglycosides" "Aminoglycoside antibacterials" "Other aminoglycosides" "" "c(\"dekamycin iv\", \"hetangmycin\", \"ribastamin\", \"ribostamicina\", \"ribostamycin\", \"ribostamycine\", \"ribostamycinum\", \"vistamycin\", \"xylostatin\")" 1 "g" "character(0)"
|
"RST" 33042 "Ribostamycin" "Aminoglycosides" "J01GB10" "Aminoglycoside antibacterials" "Other aminoglycosides" "" "c(\"dekamycin iv\", \"hetangmycin\", \"ribastamin\", \"ribostamicina\", \"ribostamycin\", \"ribostamycine\", \"ribostamycinum\", \"vistamycin\", \"xylostatin\")" 1 "g" "character(0)"
|
||||||
"RID1" 16659285 "Ridinilazole" "Other antibacterials" "" "ridinilazole" "character(0)"
|
"RID1" 16659285 "Ridinilazole" "Other antibacterials" "" "ridinilazole" "character(0)"
|
||||||
"RIB" "J04AB04" 135398743 "Rifabutin" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Antibiotics" "rifb" "c(\"alfacid\", \"ansamicin\", \"ansamycin\", \"ansatipin\", \"ansatipine\", \"mycobutin\", \"rifabutin\", \"rifabutina\", \"rifabutine\", \"rifabutinum\")" 0.15 "g" "24032-5"
|
"RIB" 135398743 "Rifabutin" "Antimycobacterials" "J04AB04" "Drugs for treatment of tuberculosis" "Antibiotics" "rifb" "c(\"alfacid\", \"ansamicin\", \"ansamycin\", \"ansatipin\", \"ansatipine\", \"mycobutin\", \"rifabutin\", \"rifabutina\", \"rifabutine\", \"rifabutinum\")" 0.15 "g" "24032-5"
|
||||||
"RIF" "J04AB02" 135398735 "Rifampicin" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Antibiotics" "rifa" "c(\"abrifam\", \"archidyn\", \"arficin\", \"arzide\", \"azt + rifampin\", \"benemicin\", \"benemycin\", \"dipicin\", \"doloresum\", \"eremfat\", \"famcin\", \"fenampicin\", \"rifadin\", \"rifadin i.v\", \"rifadin i.v.\", \"rifadine\", \"rifagen\", \"rifaldazin\", \"rifaldazine\", \"rifaldin\", \"rifamate\", \"rifamicin amp\", \"rifamor\", \"rifampicin\", \"rifampicin sv\", \"rifampicina\", \"rifampicine\", \"rifampicinum\", \"rifampin\", \"rifamsolin\", \"rifamycin amp\", \"rifaprodin\", \"rifcin\", \"rifobac\", \"rifoldin\", \"rifoldine\", \"riforal\", \"rimactan\", \"rimactane\",
|
"RIF" 135398735 "Rifampicin" "Antimycobacterials" "J04AB02" "Drugs for treatment of tuberculosis" "Antibiotics" "rifa" "c(\"abrifam\", \"archidyn\", \"arficin\", \"arzide\", \"azt + rifampin\", \"benemicin\", \"benemycin\", \"dipicin\", \"doloresum\", \"eremfat\", \"famcin\", \"fenampicin\", \"rifadin\", \"rifadin i.v\", \"rifadin i.v.\", \"rifadine\", \"rifagen\", \"rifaldazin\", \"rifaldazine\", \"rifaldin\", \"rifamate\", \"rifamicin amp\", \"rifamor\", \"rifampicin\", \"rifampicin sv\", \"rifampicina\", \"rifampicine\", \"rifampicinum\", \"rifampin\", \"rifamsolin\", \"rifamycin amp\", \"rifaprodin\", \"rifcin\", \"rifobac\", \"rifoldin\", \"rifoldine\", \"riforal\", \"rimactan\", \"rimactane\",
|
||||||
\"rimactizid\", \"rimazid\", \"rimycin\", \"sinerdol\", \"tubocin\")" 0.6 "g" 0.6 "g" "character(0)"
|
\"rimactizid\", \"rimazid\", \"rimycin\", \"sinerdol\", \"tubocin\")" 0.6 "g" 0.6 "g" "character(0)"
|
||||||
"RFI" "J04AM02" "Rifampicin/isoniazid" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Combinations of drugs for treatment of tuberculosis" "" "c(\"rifinah\", \"rimactazid\")" "character(0)"
|
"RFI" "Rifampicin/isoniazid" "Antimycobacterials" "J04AM02" "Drugs for treatment of tuberculosis" "Combinations of drugs for treatment of tuberculosis" "" "c(\"rifinah\", \"rimactazid\")" "character(0)"
|
||||||
"RPEI" "J04AM06" "Rifampicin/pyrazinamide/ethambutol/isoniazid" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Combinations of drugs for treatment of tuberculosis" "" "" ""
|
"RPEI" "Rifampicin/pyrazinamide/ethambutol/isoniazid" "Antimycobacterials" "J04AM06" "Drugs for treatment of tuberculosis" "Combinations of drugs for treatment of tuberculosis" "" "" ""
|
||||||
"RPI" "J04AM05" "Rifampicin/pyrazinamide/isoniazid" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Combinations of drugs for treatment of tuberculosis" "" "" ""
|
"RPI" "Rifampicin/pyrazinamide/isoniazid" "Antimycobacterials" "J04AM05" "Drugs for treatment of tuberculosis" "Combinations of drugs for treatment of tuberculosis" "" "" ""
|
||||||
"RFM" "J04AB03" 6324616 "Rifamycin" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Antibiotics" "" "c(\"aemcolo\", \"rifacin\", \"rifamicina\", \"rifamicine sv\", \"rifamycin\", \"rifamycine\", \"rifamycinum\", \"rifocin\", \"rifocyn\", \"rifomycin\", \"rifomycin sv\", \"tuborin\")" 0.6 "g" "character(0)"
|
"RFM" 6324616 "Rifamycin" "Antimycobacterials" "c(\"A07AA13\", \"D06AX15\", \"J04AB03\", \"S01AA16\", \"S02AA12\")" "Drugs for treatment of tuberculosis" "Antibiotics" "" "c(\"aemcolo\", \"rifacin\", \"rifamicina\", \"rifamicine sv\", \"rifamycin\", \"rifamycine\", \"rifamycinum\", \"rifocin\", \"rifocyn\", \"rifomycin\", \"rifomycin sv\", \"tuborin\")" 0.6 "g" "character(0)"
|
||||||
"RFP" "J04AB05" 135403821 "Rifapentine" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Antibiotics" "rifp" "c(\"cyclopentyl rifampin\", \"priftin\", \"rifapentin\", \"rifapentina\", \"rifapentine\", \"rifapentinum\")" 0.11 "g" "character(0)"
|
"RFP" 135403821 "Rifapentine" "Antimycobacterials" "J04AB05" "Drugs for treatment of tuberculosis" "Antibiotics" "rifp" "c(\"cyclopentyl rifampin\", \"priftin\", \"rifapentin\", \"rifapentina\", \"rifapentine\", \"rifapentinum\")" 0.11 "g" "character(0)"
|
||||||
"RFX" "A07AA11" 6436173 "Rifaximin" "Other antibacterials" "Intestinal antiinfectives" "Antibiotics" "" "c(\"fatroximin\", \"flonorm\", \"lormyx\", \"lumenax\", \"normix\", \"redactiv\", \"rifacol\", \"rifamixin\", \"rifaxidin\", \"rifaximin\", \"rifaximina\", \"rifaximine\", \"rifaximinum\", \"rifaxin\", \"ritacol\", \"spiraxin\", \"xifaxan\", \"xifaxsan\")" 0.6 "g" "character(0)"
|
"RFX" 6436173 "Rifaximin" "Other antibacterials" "c(\"A07AA11\", \"D06AX11\")" "Intestinal antiinfectives" "Antibiotics" "" "c(\"fatroximin\", \"flonorm\", \"lormyx\", \"lumenax\", \"normix\", \"redactiv\", \"rifacol\", \"rifamixin\", \"rifaxidin\", \"rifaximin\", \"rifaximina\", \"rifaximine\", \"rifaximinum\", \"rifaxin\", \"ritacol\", \"spiraxin\", \"xifaxan\", \"xifaxsan\")" 0.6 "g" "character(0)"
|
||||||
"RIT" 65633 "Ritipenem" "Carbapenems" "" "ritipenem" "character(0)"
|
"RIT" 65633 "Ritipenem" "Carbapenems" "" "ritipenem" "character(0)"
|
||||||
"RIA" 163692 "Ritipenem acoxil" "Carbapenems" "" "ritipenem acoxil" "character(0)"
|
"RIA" 163692 "Ritipenem acoxil" "Carbapenems" "" "ritipenem acoxil" "character(0)"
|
||||||
"ROK" "J01FA12" 5282211 "Rokitamycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"propionylleucomycin\", \"ricamycin\", \"rokicid\", \"rokital\", \"rokitamicina\", \"rokitamycin\", \"rokitamycine\", \"rokitamycinum\")" 0.8 "g" "character(0)"
|
"ROK" 5282211 "Rokitamycin" "Macrolides/lincosamides" "J01FA12" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"propionylleucomycin\", \"ricamycin\", \"rokicid\", \"rokital\", \"rokitamicina\", \"rokitamycin\", \"rokitamycine\", \"rokitamycinum\")" 0.8 "g" "character(0)"
|
||||||
"RLT" "J01AA09" 54682938 "Rolitetracycline" "Tetracyclines" "Tetracyclines" "Tetracyclines" "" "c(\"bristacin\", \"kinteto\", \"reverin\", \"rolitetraciclina\", \"rolitetracycline\", \"rolitetracyclinum\", \"solvocillin\", \"superciclin\", \"synotodecin\", \"synterin\", \"syntetrex\", \"syntetrin\", \"velacicline\", \"velacycline\")" 0.35 "g" "character(0)"
|
"RLT" 54682938 "Rolitetracycline" "Tetracyclines" "J01AA09" "Tetracyclines" "Tetracyclines" "" "c(\"bristacin\", \"kinteto\", \"reverin\", \"rolitetraciclina\", \"rolitetracycline\", \"rolitetracyclinum\", \"solvocillin\", \"superciclin\", \"synotodecin\", \"synterin\", \"syntetrex\", \"syntetrin\", \"velacicline\", \"velacycline\")" 0.35 "g" "character(0)"
|
||||||
"ROS" "J01MB01" 287180 "Rosoxacin" "Quinolones" "Quinolone antibacterials" "Other quinolones" "" "c(\"acrosoxacin\", \"eracine\", \"eradacil\", \"eradacin\", \"rosoxacin\", \"rosoxacine\", \"rosoxacino\", \"rosoxacinum\", \"roxadyl\", \"winuron\")" 0.3 "g" "character(0)"
|
"ROS" 287180 "Rosoxacin" "Quinolones" "J01MB01" "Quinolone antibacterials" "Other quinolones" "" "c(\"acrosoxacin\", \"eracine\", \"eradacil\", \"eradacin\", \"rosoxacin\", \"rosoxacine\", \"rosoxacino\", \"rosoxacinum\", \"roxadyl\", \"winuron\")" 0.3 "g" "character(0)"
|
||||||
"RXT" "J01FA06" "Roxithromycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Macrolides" "roxi" "" 0.3 "g" ""
|
"RXT" "Roxithromycin" "Macrolides/lincosamides" "J01FA06" "Macrolides, lincosamides and streptogramins" "Macrolides" "roxi" "" 0.3 "g" ""
|
||||||
"RFL" "J01MA10" 58258 "Rufloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "" "c(\"rufloxacin\", \"rufloxacin hcl\", \"rufloxacine\", \"rufloxacino\", \"rufloxacinum\")" 0.2 "g" "character(0)"
|
"RFL" 58258 "Rufloxacin" "Quinolones" "J01MA10" "Quinolone antibacterials" "Fluoroquinolones" "" "c(\"rufloxacin\", \"rufloxacin hcl\", \"rufloxacine\", \"rufloxacino\", \"rufloxacinum\")" 0.2 "g" "character(0)"
|
||||||
"SAL" 3085092 "Salinomycin" "Other antibacterials" "" "c(\"coxistac\", \"procoxacin\", \"salinomicina\", \"salinomycin\", \"salinomycine\", \"salinomycinum\")" "87593-0"
|
"SAL" 3085092 "Salinomycin" "Other antibacterials" "" "c(\"coxistac\", \"procoxacin\", \"salinomicina\", \"salinomycin\", \"salinomycine\", \"salinomycinum\")" "87593-0"
|
||||||
"SAR" 56208 "Sarafloxacin" "Quinolones" "" "c(\"difloxacine\", \"difloxacino\", \"difloxacinum\", \"saraflox\", \"sarafloxacin\", \"sarafloxacine\", \"sarafloxacino\", \"sarafloxacinum\")" "character(0)"
|
"SAR" 56208 "Sarafloxacin" "Quinolones" "" "c(\"difloxacine\", \"difloxacino\", \"difloxacinum\", \"saraflox\", \"sarafloxacin\", \"sarafloxacine\", \"sarafloxacino\", \"sarafloxacinum\")" "character(0)"
|
||||||
"SRX" 9933415 "Sarmoxicillin" "Beta-lactams/penicillins" "" "sarmoxicillin" "character(0)"
|
"SRX" 9933415 "Sarmoxicillin" "Beta-lactams/penicillins" "" "sarmoxicillin" "character(0)"
|
||||||
"SEC" 71815 "Secnidazole" "Other antibacterials" "" "c(\"flagentyl\", \"secnidal\", \"secnidazol\", \"secnidazole\", \"secnidazolum\", \"secnil\", \"sindose\", \"solosec\")" "character(0)"
|
"SEC" 71815 "Secnidazole" "Other antibacterials" "P01AB07" "" "c(\"flagentyl\", \"secnidal\", \"secnidazol\", \"secnidazole\", \"secnidazolum\", \"secnil\", \"sindose\", \"solosec\")" 2 "g" "character(0)"
|
||||||
"SMF" "J04AK05" "Simvastatin/fenofibrate" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Other drugs for treatment of tuberculosis" "simv" "" 86 ""
|
"SMF" "Simvastatin/fenofibrate" "Antimycobacterials" "C10BA04" "Drugs for treatment of tuberculosis" "Other drugs for treatment of tuberculosis" "simv" "" ""
|
||||||
"SIS" "J01GB08" 36119 "Sisomicin" "Aminoglycosides" "Aminoglycoside antibacterials" "Other aminoglycosides" "siso" "c(\"rickamicin\", \"salvamina\", \"siseptin sulfate\", \"sisomicin\", \"sisomicin sulfate\", \"sisomicina\", \"sisomicine\", \"sisomicinum\", \"sisomin\", \"sisomycin\", \"sissomicin\", \"sizomycin\")" 0.24 "g" "character(0)"
|
"SIS" 36119 "Sisomicin" "Aminoglycosides" "J01GB08" "Aminoglycoside antibacterials" "Other aminoglycosides" "siso" "c(\"rickamicin\", \"salvamina\", \"siseptin sulfate\", \"sisomicin\", \"sisomicin sulfate\", \"sisomicina\", \"sisomicine\", \"sisomicinum\", \"sisomin\", \"sisomycin\", \"sissomicin\", \"sizomycin\")" 0.24 "g" "character(0)"
|
||||||
"SIT" 461399 "Sitafloxacin" "Quinolones" "" "c(\"gracevit\", \"sitafloxacinisomer\")" "character(0)"
|
"SIT" 461399 "Sitafloxacin" "Quinolones" "J01MA21" "" "c(\"gracevit\", \"sitafloxacinisomer\")" 0.1 "g" "character(0)"
|
||||||
"SDA" "J04AA02" 2724368 "Sodium aminosalicylate" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Aminosalicylic acid and derivatives" "" "c(\"bactylan\", \"decapasil\", \"lepasen\", \"monopas\", \"nippas\", \"p.a.s. sodium\", \"pamisyl sodium\", \"parasal sodium\", \"pas sodium\", \"pasade\", \"pasnal\", \"passodico\", \"salvis\", \"sanipirol\", \"sodiopas\", \"sodium p.a.s\", \"sodium pas\", \"teebacin\", \"tubersan\")" 14 "g" 14 "g" "character(0)"
|
"SDA" 2724368 "Sodium aminosalicylate" "Antimycobacterials" "J04AA02" "Drugs for treatment of tuberculosis" "Aminosalicylic acid and derivatives" "" "c(\"bactylan\", \"decapasil\", \"lepasen\", \"monopas\", \"nippas\", \"p.a.s. sodium\", \"pamisyl sodium\", \"parasal sodium\", \"pas sodium\", \"pasade\", \"pasnal\", \"passodico\", \"salvis\", \"sanipirol\", \"sodiopas\", \"sodium p.a.s\", \"sodium pas\", \"teebacin\", \"tubersan\")" 14 "g" 14 "g" "character(0)"
|
||||||
"SOL" 25242512 "Solithromycin" "Macrolides/lincosamides" "" "" ""
|
"SOL" 25242512 "Solithromycin" "Macrolides/lincosamides" "J01FA16" "" "" ""
|
||||||
"SPX" "J01MA09" 60464 "Sparfloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"spa\", \"spar\")" "c(\"esparfloxacino\", \"sparfloxacin\", \"sparfloxacine\", \"sparfloxacinum\")" 0.2 "g" "character(0)"
|
"SPX" 60464 "Sparfloxacin" "Quinolones" "J01MA09" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"spa\", \"spar\")" "c(\"esparfloxacino\", \"sparfloxacin\", \"sparfloxacine\", \"sparfloxacinum\")" 0.2 "g" "character(0)"
|
||||||
"SPT" "J01XX04" 15541 "Spectinomycin" "Other antibacterials" "Other antibacterials" "Other antibacterials" "c(\"sc\", \"spe\", \"spec\", \"spt\")" "c(\"actinospectacina\", \"adspec\", \"espectinomicina\", \"prospec\", \"specitinomycin\", \"spectam\", \"spectinomicina\", \"spectinomycin\", \"spectinomycin di hcl\", \"spectinomycine\", \"spectinomycinum\", \"stanilo\", \"togamycin\", \"trobicin\")" 3 "g" "character(0)"
|
"SPT" 15541 "Spectinomycin" "Other antibacterials" "J01XX04" "Other antibacterials" "Other antibacterials" "c(\"sc\", \"spe\", \"spec\", \"spt\")" "c(\"actinospectacina\", \"adspec\", \"espectinomicina\", \"prospec\", \"specitinomycin\", \"spectam\", \"spectinomicina\", \"spectinomycin\", \"spectinomycin di hcl\", \"spectinomycine\", \"spectinomycinum\", \"stanilo\", \"togamycin\", \"trobicin\")" 3 "g" "character(0)"
|
||||||
"SPI" "J01FA02" 6419898 "Spiramycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Macrolides" "c(\"\", \"spir\")" "c(\"espiramicin\", \"provamycin\", \"rovamycin\", \"rovamycine\", \"sequamycin\", \"spiramycine\", \"spiramycinum\")" 3 "g" "character(0)"
|
"SPI" 6419898 "Spiramycin" "Macrolides/lincosamides" "J01FA02" "Macrolides, lincosamides and streptogramins" "Macrolides" "c(\"\", \"spir\")" "c(\"espiramicin\", \"provamycin\", \"rovamycin\", \"rovamycine\", \"sequamycin\", \"spiramycine\", \"spiramycinum\")" 3 "g" "character(0)"
|
||||||
"SPM" "J01RA04" "Spiramycin/metronidazole" "Other antibacterials" "Combinations of antibacterials" "Combinations of antibacterials" "" "" ""
|
"SPM" "Spiramycin/metronidazole" "Other antibacterials" "J01RA04" "Combinations of antibacterials" "Combinations of antibacterials" "" "" ""
|
||||||
"STR" "J01GA02" "Streptoduocin" "Aminoglycosides" "Aminoglycoside antibacterials" "Streptomycins" "" "" 1 "g" ""
|
"STR" "Streptoduocin" "Aminoglycosides" "J01GA02" "Aminoglycoside antibacterials" "Streptomycins" "" "" 1 "g" ""
|
||||||
"STR1" "J01GA01" 19649 "Streptomycin" "Aminoglycosides" "Aminoglycoside antibacterials" "Streptomycins" "c(\"s\", \"stm\", \"str\", \"stre\")" "c(\"agrept\", \"agrimycin\", \"chemform\", \"estreptomicina\", \"neodiestreptopab\", \"strepcen\", \"streptomicina\", \"streptomycin\", \"streptomycin a\", \"streptomycin spx\", \"streptomycin sulfate\", \"streptomycine\", \"streptomyzin\", \"vetstrep\")" 1 "g" "4039-4"
|
"STR1" 19649 "Streptomycin" "Aminoglycosides" "c(\"A07AA04\", \"J01GA01\")" "Aminoglycoside antibacterials" "Streptomycins" "c(\"s\", \"stm\", \"str\", \"stre\")" "c(\"agrept\", \"agrimycin\", \"chemform\", \"estreptomicina\", \"neodiestreptopab\", \"strepcen\", \"streptomicina\", \"streptomycin\", \"streptomycin a\", \"streptomycin spx\", \"streptomycin sulfate\", \"streptomycine\", \"streptomyzin\", \"vetstrep\")" 1 "g" "4039-4"
|
||||||
"STH" "Streptomycin-high" "Aminoglycosides" "c(\"s_h\", \"sthl\", \"strepto high\", \"streptomycin high\")" "" ""
|
"STH" "Streptomycin-high" "Aminoglycosides" "c(\"s_h\", \"sthl\", \"strepto high\", \"streptomycin high\")" "" ""
|
||||||
"STI" "J04AM01" "Streptomycin/isoniazid" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Combinations of drugs for treatment of tuberculosis" "" "" ""
|
"STI" "Streptomycin/isoniazid" "Antimycobacterials" "J04AM01" "Drugs for treatment of tuberculosis" "Combinations of drugs for treatment of tuberculosis" "" "" ""
|
||||||
"SUL" "J01CG01" 130313 "Sulbactam" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase inhibitors" "" "c(\"betamaze\", \"sulbactam\", \"sulbactam acid\", \"sulbactam free acid\", \"sulbactamum\")" 1 "g" "character(0)"
|
"SUL" 130313 "Sulbactam" "Beta-lactams/penicillins" "J01CG01" "Beta-lactam antibacterials, penicillins" "Beta-lactamase inhibitors" "" "c(\"betamaze\", \"sulbactam\", \"sulbactam acid\", \"sulbactam free acid\", \"sulbactamum\")" 1 "g" "character(0)"
|
||||||
"SBC" "J01CA16" 20055036 "Sulbenicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"kedacillina\", \"sulbenicilina\", \"sulbenicilline\", \"sulbenicillinum\")" 15 "g" "character(0)"
|
"SBC" 20055036 "Sulbenicillin" "Beta-lactams/penicillins" "J01CA16" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"kedacillina\", \"sulbenicilina\", \"sulbenicilline\", \"sulbenicillinum\")" 15 "g" "character(0)"
|
||||||
"SUC" 5318 "Sulconazole" "Antifungals/antimycotics" "" "c(\"sulconazol\", \"sulconazole\", \"sulconazolum\")" "character(0)"
|
"SUC" 5318 "Sulconazole" "Antifungals/antimycotics" "D01AC09" "" "c(\"sulconazol\", \"sulconazole\", \"sulconazolum\")" "character(0)"
|
||||||
"SUP" 6634 "Sulfachlorpyridazine" "Other antibacterials" "" "c(\"cluricol\", \"cosulid\", \"cosumix\", \"durasulf\", \"nefrosul\", \"nsulfanilamide\", \"prinzone vet\", \"prinzone vet.\", \"solfaclorpiridazina\", \"sonilyn\", \"sulfachlorpyridazine\", \"sulfacloropiridazina\", \"vetisulid\")" "character(0)"
|
"SUP" 6634 "Sulfachlorpyridazine" "Other antibacterials" "" "c(\"cluricol\", \"cosulid\", \"cosumix\", \"durasulf\", \"nefrosul\", \"nsulfanilamide\", \"prinzone vet\", \"prinzone vet.\", \"solfaclorpiridazina\", \"sonilyn\", \"sulfachlorpyridazine\", \"sulfacloropiridazina\", \"vetisulid\")" "character(0)"
|
||||||
"SDI" "J01EC02" 5215 "Sulfadiazine" "Trimethoprims" "Sulfonamides and trimethoprim" "Intermediate-acting sulfonamides" "" "c(\"adiazin\", \"adiazine\", \"cocodiazine\", \"codiazine\", \"cremodiazine\", \"cremotres\", \"debenal\", \"deltazina\", \"diazin\", \"diazolone\", \"diazovit\", \"diazyl\", \"eskadiazine\", \"honey diazine\", \"liquadiazine\", \"microsulfon\", \"neazine\", \"neotrizine\", \"nsulfanilamide\", \"palatrize\", \"piridisir\", \"pirimal\", \"pyrimal\", \"quadetts\", \"quadramoid\", \"sanodiazine\", \"sildaflo\", \"silvadene\", \"solfadiazina\", \"spofadrizine\", \"sterazine\", \"sulfacombin\", \"sulfadiazene\", \"sulfadiazin\", \"sulfadiazina\", \"sulfadiazine\", \"sulfadiazinum\",
|
"SDI" 5215 "Sulfadiazine" "Trimethoprims" "J01EC02" "Sulfonamides and trimethoprim" "Intermediate-acting sulfonamides" "" "c(\"adiazin\", \"adiazine\", \"cocodiazine\", \"codiazine\", \"cremodiazine\", \"cremotres\", \"debenal\", \"deltazina\", \"diazin\", \"diazolone\", \"diazovit\", \"diazyl\", \"eskadiazine\", \"honey diazine\", \"liquadiazine\", \"microsulfon\", \"neazine\", \"neotrizine\", \"nsulfanilamide\", \"palatrize\", \"piridisir\", \"pirimal\", \"pyrimal\", \"quadetts\", \"quadramoid\", \"sanodiazine\", \"sildaflo\", \"silvadene\", \"solfadiazina\", \"spofadrizine\", \"sterazine\", \"sulfacombin\", \"sulfadiazene\", \"sulfadiazin\", \"sulfadiazina\", \"sulfadiazine\", \"sulfadiazinum\",
|
||||||
\"sulfapirimidin\", \"sulfapyrimidin\", \"sulfapyrimidine\", \"sulfatryl\", \"sulfazine\", \"sulfolex\", \"sulfonamides duplex\", \"sulfonsol\", \"sulfose\", \"sulphadiazine\", \"sulphadiazine e\", \"terfonyl\", \"theradiazine\", \"thermazene\", \"trifonamide\", \"triple sulfa\", \"triple sulfas\", \"trisem\", \"truozine\", \"zinc sulfadiazine\")" 0.6 "g" "c(\"27216-1\", \"59742-7\", \"6907-0\")"
|
\"sulfapirimidin\", \"sulfapyrimidin\", \"sulfapyrimidine\", \"sulfatryl\", \"sulfazine\", \"sulfolex\", \"sulfonamides duplex\", \"sulfonsol\", \"sulfose\", \"sulphadiazine\", \"sulphadiazine e\", \"terfonyl\", \"theradiazine\", \"thermazene\", \"trifonamide\", \"triple sulfa\", \"triple sulfas\", \"trisem\", \"truozine\", \"zinc sulfadiazine\")" 0.6 "g" "c(\"27216-1\", \"59742-7\", \"6907-0\")"
|
||||||
"SLT" "J01EE06" 122284 "Sulfadiazine/tetroxoprim" "Trimethoprims" "Sulfonamides and trimethoprim" "Combinations of sulfonamides and trimethoprim, incl. derivatives" "" "" ""
|
"SLT" 122284 "Sulfadiazine/tetroxoprim" "Trimethoprims" "J01EE06" "Sulfonamides and trimethoprim" "Combinations of sulfonamides and trimethoprim, incl. derivatives" "" "" ""
|
||||||
"SLT1" "J01EE02" 64932 "Sulfadiazine/trimethoprim" "Trimethoprims" "Sulfonamides and trimethoprim" "Combinations of sulfonamides and trimethoprim, incl. derivatives" "" "c(\"antastmon\", \"cotrimazine\", \"diaziprim forte\", \"ditrim\", \"ditrivet\", \"sultrisan\", \"triglobe\", \"trimin\", \"tucoprim\", \"uniprim\")" "character(0)"
|
"SLT1" 64932 "Sulfadiazine/trimethoprim" "Trimethoprims" "J01EE02" "Sulfonamides and trimethoprim" "Combinations of sulfonamides and trimethoprim, incl. derivatives" "" "c(\"antastmon\", \"cotrimazine\", \"diaziprim forte\", \"ditrim\", \"ditrivet\", \"sultrisan\", \"triglobe\", \"trimin\", \"tucoprim\", \"uniprim\")" "character(0)"
|
||||||
"SUD" "J01ED01" 5323 "Sulfadimethoxine" "Trimethoprims" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"agribon\", \"arnosulfan\", \"bactrovet\", \"deposul\", \"diasulfa\", \"diasulfyl\", \"dimetazina\", \"dinosol\", \"dorisul\", \"lasibon\", \"madribon\", \"madrigid\", \"madriqid\", \"madroxin\", \"madroxine\", \"maxulvet\", \"mecozine\", \"memcozine\", \"metoxidon\", \"neostrepal\", \"neostreptal\", \"nsulfanilamide\", \"omnibon\", \"persulfen\", \"primor\", \"radonin\", \"redifal\", \"rofenaid\", \"roscosulf\", \"scandisil\", \"solfadimetossina\", \"sudine\", \"suldixine\", \"sulfabon\", \"sulfadimethoxin\", \"sulfadimethoxine\", \"sulfadimethoxinum\", \"sulfadimetossina\",
|
"SUD" 5323 "Sulfadimethoxine" "Trimethoprims" "J01ED01" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"agribon\", \"arnosulfan\", \"bactrovet\", \"deposul\", \"diasulfa\", \"diasulfyl\", \"dimetazina\", \"dinosol\", \"dorisul\", \"lasibon\", \"madribon\", \"madrigid\", \"madriqid\", \"madroxin\", \"madroxine\", \"maxulvet\", \"mecozine\", \"memcozine\", \"metoxidon\", \"neostrepal\", \"neostreptal\", \"nsulfanilamide\", \"omnibon\", \"persulfen\", \"primor\", \"radonin\", \"redifal\", \"rofenaid\", \"roscosulf\", \"scandisil\", \"solfadimetossina\", \"sudine\", \"suldixine\", \"sulfabon\", \"sulfadimethoxin\", \"sulfadimethoxine\", \"sulfadimethoxinum\", \"sulfadimetossina\",
|
||||||
\"sulfadimetoxin\", \"sulfadimetoxina\", \"sulfadimetoxine\", \"sulfastop\", \"sulfdimethoxine\", \"sulfoplan\", \"sulphadimethoxine\", \"sulxin\", \"sumbio\", \"symbio\", \"theracanzan\", \"ultrasulfon\")" 0.5 "g" "character(0)"
|
\"sulfadimetoxin\", \"sulfadimetoxina\", \"sulfadimetoxine\", \"sulfastop\", \"sulfdimethoxine\", \"sulfoplan\", \"sulphadimethoxine\", \"sulxin\", \"sumbio\", \"symbio\", \"theracanzan\", \"ultrasulfon\")" 0.5 "g" "character(0)"
|
||||||
"SDM" "J01EB03" 5327 "Sulfadimidine" "Trimethoprims" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "" "c(\"azolmetazin\", \"benzene sulfonamide\", \"calfspan\", \"calfspan tablets\", \"cremomethazine\", \"diazil\", \"diazilsulfadine\", \"dimezathine\", \"intradine\", \"kelametazine\", \"mermeth\", \"metazin\", \"neasina\", \"neazina\", \"nsulfanilamide\", \"panazin\", \"pirmazin\", \"primazin\", \"sa iii\", \"solfadimidina\", \"spanbolet\", \"sulfadimerazine\", \"sulfadimesin\", \"sulfadimesine\", \"sulfadimethyldiazine\", \"sulfadimezin\", \"sulfadimezine\", \"sulfadimezinum\", \"sulfadimidin\", \"sulfadimidina\", \"sulfadimidine\", \"sulfadimidinum\", \"sulfadine\",
|
"SDM" 5327 "Sulfadimidine" "Trimethoprims" "J01EB03" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "" "c(\"azolmetazin\", \"benzene sulfonamide\", \"calfspan\", \"calfspan tablets\", \"cremomethazine\", \"diazil\", \"diazilsulfadine\", \"dimezathine\", \"intradine\", \"kelametazine\", \"mermeth\", \"metazin\", \"neasina\", \"neazina\", \"nsulfanilamide\", \"panazin\", \"pirmazin\", \"primazin\", \"sa iii\", \"solfadimidina\", \"spanbolet\", \"sulfadimerazine\", \"sulfadimesin\", \"sulfadimesine\", \"sulfadimethyldiazine\", \"sulfadimezin\", \"sulfadimezine\", \"sulfadimezinum\", \"sulfadimidin\", \"sulfadimidina\", \"sulfadimidine\", \"sulfadimidinum\", \"sulfadine\",
|
||||||
\"sulfametazina\", \"sulfametazyny\", \"sulfamethazine\", \"sulfamethiazine\", \"sulfamezathine\", \"sulfamidine\", \"sulfasure sr bolus\", \"sulfodimesin\", \"sulfodimezine\", \"sulka k boluses\", \"sulka s boluses\", \"sulmet\", \"sulphadimidine\", \"sulphamethasine\", \"sulphamethazine\", \"sulphamezathine\", \"sulphamidine\", \"sulphodimezine\", \"superseptil\", \"superseptyl\", \"vertolan\")" 4 "g" "character(0)"
|
\"sulfametazina\", \"sulfametazyny\", \"sulfamethazine\", \"sulfamethiazine\", \"sulfamezathine\", \"sulfamidine\", \"sulfasure sr bolus\", \"sulfodimesin\", \"sulfodimezine\", \"sulka k boluses\", \"sulka s boluses\", \"sulmet\", \"sulphadimidine\", \"sulphamethasine\", \"sulphamethazine\", \"sulphamezathine\", \"sulphamidine\", \"sulphodimezine\", \"superseptil\", \"superseptyl\", \"vertolan\")" 4 "g" "character(0)"
|
||||||
"SLT2" "J01EE05" "Sulfadimidine/trimethoprim" "Trimethoprims" "Sulfonamides and trimethoprim" "Combinations of sulfonamides and trimethoprim, incl. derivatives" "" "" ""
|
"SLT2" "Sulfadimidine/trimethoprim" "Trimethoprims" "J01EE05" "Sulfonamides and trimethoprim" "Combinations of sulfonamides and trimethoprim, incl. derivatives" "" "" ""
|
||||||
"SLF" "J01EB05" 5344 "Sulfafurazole" "Trimethoprims" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "c(\"\", \"sfsz\")" "c(\"accuzole\", \"alphazole\", \"amidoxal\", \"astrazolo\", \"azo gantrisin\", \"azosulfizin\", \"bactesulf\", \"barazae\", \"chemouag\", \"cosoxazole\", \"dorsulfan\", \"dorsulfan warthausen\", \"entusil\", \"entusul\", \"eryzole\", \"gantrisin\", \"gantrisine\", \"gantrisona\", \"gantrizin\", \"gantrosan\", \"isoxamin\", \"neazolin\", \"neoxazoi\", \"neoxazol\", \"novazolo\", \"novosaxazole\", \"nsulfanilamide\", \"nsulphanilamide\", \"pancid\", \"pediazole\", \"renosulfan\", \"resoxol\", \"roxosul\", \"roxosul tablets\", \"roxoxol\", \"saxosozine\", \"sodizole\", \"solfafurazolo\",
|
"SLF" 5344 "Sulfafurazole" "Trimethoprims" "c(\"J01EB05\", \"S01AB02\")" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "c(\"\", \"sfsz\")" "c(\"accuzole\", \"alphazole\", \"amidoxal\", \"astrazolo\", \"azo gantrisin\", \"azosulfizin\", \"bactesulf\", \"barazae\", \"chemouag\", \"cosoxazole\", \"dorsulfan\", \"dorsulfan warthausen\", \"entusil\", \"entusul\", \"eryzole\", \"gantrisin\", \"gantrisine\", \"gantrisona\", \"gantrizin\", \"gantrosan\", \"isoxamin\", \"neazolin\", \"neoxazoi\", \"neoxazol\", \"novazolo\", \"novosaxazole\", \"nsulfanilamide\", \"nsulphanilamide\", \"pancid\", \"pediazole\", \"renosulfan\", \"resoxol\", \"roxosul\", \"roxosul tablets\", \"roxoxol\", \"saxosozine\", \"sodizole\", \"solfafurazolo\",
|
||||||
\"soxamide\", \"soxazole\", \"soxisol\", \"soxitabs\", \"soxomide\", \"stansin\", \"sulbio\", \"sulfafuraz ole\", \"sulfafurazol\", \"sulfafurazole\", \"sulfafurazolum\", \"sulfagan\", \"sulfagen\", \"sulfaisoxazole\", \"sulfalar\", \"sulfapolar\", \"sulfasol\", \"sulfasoxazole\", \"sulfasoxizole\", \"sulfazin\", \"sulfisin\", \"sulfisonazole\", \"sulfisoxasole\", \"sulfisoxazol\", \"sulfisoxazole\", \"sulfisoxazolum\", \"sulfizin\", \"sulfizol\", \"sulfizole\", \"sulfofurazole\", \"sulfoxol\", \"suloxsol\", \"sulphafuraz\", \"sulphafurazol\", \"sulphafurazole\", \"sulphafurazolum\",
|
\"soxamide\", \"soxazole\", \"soxisol\", \"soxitabs\", \"soxomide\", \"stansin\", \"sulbio\", \"sulfafuraz ole\", \"sulfafurazol\", \"sulfafurazole\", \"sulfafurazolum\", \"sulfagan\", \"sulfagen\", \"sulfaisoxazole\", \"sulfalar\", \"sulfapolar\", \"sulfasol\", \"sulfasoxazole\", \"sulfasoxizole\", \"sulfazin\", \"sulfisin\", \"sulfisonazole\", \"sulfisoxasole\", \"sulfisoxazol\", \"sulfisoxazole\", \"sulfisoxazolum\", \"sulfizin\", \"sulfizol\", \"sulfizole\", \"sulfofurazole\", \"sulfoxol\", \"suloxsol\", \"sulphafuraz\", \"sulphafurazol\", \"sulphafurazole\", \"sulphafurazolum\",
|
||||||
\"sulphaisoxazole\", \"sulphisoxazol\", \"sulphisoxazole\", \"sulphofurazole\", \"sulsoxin\", \"thiasin\", \"unisulf\", \"urisoxin\", \"uritrisin\", \"urogan\", \"vagilia\")" 4 "g" 4 "g" "character(0)"
|
\"sulphaisoxazole\", \"sulphisoxazol\", \"sulphisoxazole\", \"sulphofurazole\", \"sulsoxin\", \"thiasin\", \"unisulf\", \"urisoxin\", \"uritrisin\", \"urogan\", \"vagilia\")" 4 "g" 4 "g" "character(0)"
|
||||||
"SLF1" "J01EB01" 5343 "Sulfaisodimidine" "Trimethoprims" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "" "c(\"aristamid\", \"aristamide\", \"aristogyn\", \"domain\", \"domian\", \"elcosin\", \"elcosine\", \"elkosil\", \"elkosin\", \"elkosine\", \"erycon\", \"isosulf\", \"mefenal\", \"nsulfanilamide\", \"solfisomidina\", \"sulfadimetine\", \"sulfaisodimerazine\", \"sulfaisodimidine\", \"sulfaisodimidinum\", \"sulfaisomidine\", \"sulfamethin\", \"sulfasomidine\", \"sulfisomidina\", \"sulfisomidine\", \"sulfisomidine sodium\", \"sulfisomidinum\", \"sulphasomidine\")" 4 "g" 4 "g" "character(0)"
|
"SLF1" 5343 "Sulfaisodimidine" "Trimethoprims" "J01EB01" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "" "c(\"aristamid\", \"aristamide\", \"aristogyn\", \"domain\", \"domian\", \"elcosin\", \"elcosine\", \"elkosil\", \"elkosin\", \"elkosine\", \"erycon\", \"isosulf\", \"mefenal\", \"nsulfanilamide\", \"solfisomidina\", \"sulfadimetine\", \"sulfaisodimerazine\", \"sulfaisodimidine\", \"sulfaisodimidinum\", \"sulfaisomidine\", \"sulfamethin\", \"sulfasomidine\", \"sulfisomidina\", \"sulfisomidine\", \"sulfisomidine sodium\", \"sulfisomidinum\", \"sulphasomidine\")" 4 "g" 4 "g" "character(0)"
|
||||||
"SLF2" "J01ED02" 9047 "Sulfalene" "Trimethoprims" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"dalysep\", \"kelfizin\", \"kelfizina\", \"kelfizine\", \"kelfizine w\", \"longum\", \"nsulfanilamide\", \"policydal\", \"polycidal\", \"solfametopirazina\", \"sulfalen\", \"sulfalene\", \"sulfaleno\", \"sulfalenum\", \"sulfamethopyrazine\", \"sulfamethoxypyrazine\", \"sulfametopyrazine\", \"sulfametoxypyridazin\", \"sulphalene\", \"sulphametopyrazine\", \"vetkelfizina\")" 0.1 "g" "character(0)"
|
"SLF2" 9047 "Sulfalene" "Trimethoprims" "J01ED02" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"dalysep\", \"kelfizin\", \"kelfizina\", \"kelfizine\", \"kelfizine w\", \"longum\", \"nsulfanilamide\", \"policydal\", \"polycidal\", \"solfametopirazina\", \"sulfalen\", \"sulfalene\", \"sulfaleno\", \"sulfalenum\", \"sulfamethopyrazine\", \"sulfamethoxypyrazine\", \"sulfametopyrazine\", \"sulfametoxypyridazin\", \"sulphalene\", \"sulphametopyrazine\", \"vetkelfizina\")" 0.1 "g" "character(0)"
|
||||||
"SZO" "J01ED09" 187764 "Sulfamazone" "Trimethoprims" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"sulfamazon\", \"sulfamazona\", \"sulfamazone\", \"sulfamazonum\")" 1.5 "g" "character(0)"
|
"SZO" 187764 "Sulfamazone" "Trimethoprims" "J01ED09" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"sulfamazon\", \"sulfamazona\", \"sulfamazone\", \"sulfamazonum\")" 1.5 "g" "character(0)"
|
||||||
"SLF3" "J01ED07" 5325 "Sulfamerazine" "Trimethoprims" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"cremomerazine\", \"kelamerazine\", \"mebacid\", \"mesulfa\", \"methylpyrimal\", \"methylsulfazin\", \"methylsulfazine\", \"metilsulfadiazin\", \"metilsulfazin\", \"nsulfanilamide\", \"percoccide\", \"pyralcid\", \"pyrimal m\", \"romezin\", \"septacil\", \"septosyl\", \"solfamerazina\", \"solumedin\", \"sulfameradine\", \"sulfamerazin\", \"sulfamerazina\", \"sulfamerazine\", \"sulfamerazinum\", \"sulfamethyldiazine\", \"sulphamerazine\", \"sumedine\", \"susfamerazine\")" 3 "g" "character(0)"
|
"SLF3" 5325 "Sulfamerazine" "Trimethoprims" "c(\"D06BA06\", \"J01ED07\")" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"cremomerazine\", \"kelamerazine\", \"mebacid\", \"mesulfa\", \"methylpyrimal\", \"methylsulfazin\", \"methylsulfazine\", \"metilsulfadiazin\", \"metilsulfazin\", \"nsulfanilamide\", \"percoccide\", \"pyralcid\", \"pyrimal m\", \"romezin\", \"septacil\", \"septosyl\", \"solfamerazina\", \"solumedin\", \"sulfameradine\", \"sulfamerazin\", \"sulfamerazina\", \"sulfamerazine\", \"sulfamerazinum\", \"sulfamethyldiazine\", \"sulphamerazine\", \"sumedine\", \"susfamerazine\")" 3 "g" "character(0)"
|
||||||
"SLT3" "J01EE07" "Sulfamerazine/trimethoprim" "Trimethoprims" "Sulfonamides and trimethoprim" "Combinations of sulfonamides and trimethoprim, incl. derivatives" "" "" ""
|
"SLT3" "Sulfamerazine/trimethoprim" "Trimethoprims" "J01EE07" "Sulfonamides and trimethoprim" "Combinations of sulfonamides and trimethoprim, incl. derivatives" "" "" ""
|
||||||
"SUM" 5327 "Sulfamethazine" "Other antibacterials" "" "c(\"azolmetazin\", \"benzene sulfonamide\", \"calfspan\", \"calfspan tablets\", \"cremomethazine\", \"diazil\", \"diazilsulfadine\", \"dimezathine\", \"intradine\", \"kelametazine\", \"mermeth\", \"metazin\", \"neasina\", \"neazina\", \"nsulfanilamide\", \"panazin\", \"pirmazin\", \"primazin\", \"sa iii\", \"solfadimidina\", \"spanbolet\", \"sulfadimerazine\", \"sulfadimesin\", \"sulfadimesine\", \"sulfadimethyldiazine\", \"sulfadimezin\", \"sulfadimezine\", \"sulfadimezinum\", \"sulfadimidin\", \"sulfadimidina\", \"sulfadimidine\", \"sulfadimidinum\", \"sulfadine\",
|
"SUM" 5327 "Sulfamethazine" "Other antibacterials" "" "c(\"azolmetazin\", \"benzene sulfonamide\", \"calfspan\", \"calfspan tablets\", \"cremomethazine\", \"diazil\", \"diazilsulfadine\", \"dimezathine\", \"intradine\", \"kelametazine\", \"mermeth\", \"metazin\", \"neasina\", \"neazina\", \"nsulfanilamide\", \"panazin\", \"pirmazin\", \"primazin\", \"sa iii\", \"solfadimidina\", \"spanbolet\", \"sulfadimerazine\", \"sulfadimesin\", \"sulfadimesine\", \"sulfadimethyldiazine\", \"sulfadimezin\", \"sulfadimezine\", \"sulfadimezinum\", \"sulfadimidin\", \"sulfadimidina\", \"sulfadimidine\", \"sulfadimidinum\", \"sulfadine\",
|
||||||
\"sulfametazina\", \"sulfametazyny\", \"sulfamethazine\", \"sulfamethiazine\", \"sulfamezathine\", \"sulfamidine\", \"sulfasure sr bolus\", \"sulfodimesin\", \"sulfodimezine\", \"sulka k boluses\", \"sulka s boluses\", \"sulmet\", \"sulphadimidine\", \"sulphamethasine\", \"sulphamethazine\", \"sulphamezathine\", \"sulphamidine\", \"sulphodimezine\", \"superseptil\", \"superseptyl\", \"vertolan\")" "87592-2"
|
\"sulfametazina\", \"sulfametazyny\", \"sulfamethazine\", \"sulfamethiazine\", \"sulfamezathine\", \"sulfamidine\", \"sulfasure sr bolus\", \"sulfodimesin\", \"sulfodimezine\", \"sulka k boluses\", \"sulka s boluses\", \"sulmet\", \"sulphadimidine\", \"sulphamethasine\", \"sulphamethazine\", \"sulphamezathine\", \"sulphamidine\", \"sulphodimezine\", \"superseptil\", \"superseptyl\", \"vertolan\")" "87592-2"
|
||||||
"SLF4" "J01EB02" 5328 "Sulfamethizole" "Trimethoprims" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "c(\"\", \"sfmz\")" "c(\"ayerlucil\", \"lucosil\", \"methazol\", \"microsul\", \"nsulfanilamide\", \"proklar\", \"renasul\", \"salimol\", \"solfametizolo\", \"sulamethizole\", \"sulfa gram\", \"sulfamethizol\", \"sulfamethizole\", \"sulfamethizolum\", \"sulfametizol\", \"sulfapyelon\", \"sulfstat\", \"sulfurine\", \"sulphamethizole\", \"tetracid\", \"thidicur\", \"thiosulfil\", \"thiosulfil forte\", \"ultrasul\", \"urocydal\", \"urodiaton\", \"urolucosil\", \"urosulfin\")" 4 "g" "c(\"60175-7\", \"60176-5\", \"60177-3\")"
|
"SLF4" 5328 "Sulfamethizole" "Trimethoprims" "c(\"B05CA04\", \"D06BA04\", \"J01EB02\", \"S01AB01\")" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "c(\"\", \"sfmz\")" "c(\"ayerlucil\", \"lucosil\", \"methazol\", \"microsul\", \"nsulfanilamide\", \"proklar\", \"renasul\", \"salimol\", \"solfametizolo\", \"sulamethizole\", \"sulfa gram\", \"sulfamethizol\", \"sulfamethizole\", \"sulfamethizolum\", \"sulfametizol\", \"sulfapyelon\", \"sulfstat\", \"sulfurine\", \"sulphamethizole\", \"tetracid\", \"thidicur\", \"thiosulfil\", \"thiosulfil forte\", \"ultrasul\", \"urocydal\", \"urodiaton\", \"urolucosil\", \"urosulfin\")" 4 "g" "c(\"60175-7\", \"60176-5\", \"60177-3\")"
|
||||||
"SMX" "J01EC01" 5329 "Sulfamethoxazole" "Trimethoprims" "Sulfonamides and trimethoprim" "Intermediate-acting sulfonamides" "c(\"sfmx\", \"sulf\")" "c(\"azo gantanol\", \"eusaprim\", \"gamazole\", \"gantanol\", \"gantanol ds\", \"metoxal\", \"nsulfanilamide\", \"nsulphanilamide\", \"radonil\", \"septran\", \"septrin\", \"simsinomin\", \"sinomin\", \"solfametossazolo\", \"sulfamethalazole\", \"sulfamethoxazol\", \"sulfamethoxazole\", \"sulfamethoxazolum\", \"sulfamethoxizole\", \"sulfamethylisoxazole\", \"sulfametoxazol\", \"sulfisomezole\", \"sulphamethalazole\", \"sulphamethoxazol\", \"sulphamethoxazole\", \"sulphisomezole\", \"urobak\")" 2 "g" "c(\"10342-4\", \"25271-8\", \"39772-9\", \"59971-2\", \"59972-0\", \"60333-2\", \"72674-5\", \"80549-9\", \"80974-9\")"
|
"SMX" 5329 "Sulfamethoxazole" "Trimethoprims" "J01EC01" "Sulfonamides and trimethoprim" "Intermediate-acting sulfonamides" "c(\"sfmx\", \"sulf\")" "c(\"azo gantanol\", \"eusaprim\", \"gamazole\", \"gantanol\", \"gantanol ds\", \"metoxal\", \"nsulfanilamide\", \"nsulphanilamide\", \"radonil\", \"septran\", \"septrin\", \"simsinomin\", \"sinomin\", \"solfametossazolo\", \"sulfamethalazole\", \"sulfamethoxazol\", \"sulfamethoxazole\", \"sulfamethoxazolum\", \"sulfamethoxizole\", \"sulfamethylisoxazole\", \"sulfametoxazol\", \"sulfisomezole\", \"sulphamethalazole\", \"sulphamethoxazol\", \"sulphamethoxazole\", \"sulphisomezole\", \"urobak\")" 2 "g" "c(\"10342-4\", \"25271-8\", \"39772-9\", \"59971-2\", \"59972-0\", \"60333-2\", \"72674-5\", \"80549-9\", \"80974-9\")"
|
||||||
"SLF5" "J01ED05" 5330 "Sulfamethoxypyridazine" "Trimethoprims" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"altezol\", \"davosin\", \"depovernil\", \"kineks\", \"lederkyn\", \"lentac\", \"lisulfen\", \"longin\", \"medicel\", \"midicel\", \"midikel\", \"myasul\", \"nsulfanilamide\", \"opinsul\", \"paramid\", \"paramid supra\", \"petrisul\", \"piridolo\", \"quinoseptyl\", \"retamid\", \"retasulfin\", \"retasulphine\", \"slosul\", \"spofadazine\", \"sulfalex\", \"sulfapyridazine\", \"sulfdurazin\", \"sulfozona\", \"sultirene\", \"vinces\")" 0.5 "g" "character(0)"
|
"SLF5" 5330 "Sulfamethoxypyridazine" "Trimethoprims" "J01ED05" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"altezol\", \"davosin\", \"depovernil\", \"kineks\", \"lederkyn\", \"lentac\", \"lisulfen\", \"longin\", \"medicel\", \"midicel\", \"midikel\", \"myasul\", \"nsulfanilamide\", \"opinsul\", \"paramid\", \"paramid supra\", \"petrisul\", \"piridolo\", \"quinoseptyl\", \"retamid\", \"retasulfin\", \"retasulphine\", \"slosul\", \"spofadazine\", \"sulfalex\", \"sulfapyridazine\", \"sulfdurazin\", \"sulfozona\", \"sultirene\", \"vinces\")" 0.5 "g" "character(0)"
|
||||||
"SLF6" "J01ED03" 19596 "Sulfametomidine" "Trimethoprims" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"duroprocin\", \"methofadin\", \"methofazine\", \"nsulfanilamide\", \"solfametomidina\", \"sulfamethomidine\", \"sulfametomidin\", \"sulfametomidina\", \"sulfametomidine\", \"sulfametomidinum\")" "character(0)"
|
"SLF6" 19596 "Sulfametomidine" "Trimethoprims" "J01ED03" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"duroprocin\", \"methofadin\", \"methofazine\", \"nsulfanilamide\", \"solfametomidina\", \"sulfamethomidine\", \"sulfametomidin\", \"sulfametomidina\", \"sulfametomidine\", \"sulfametomidinum\")" "character(0)"
|
||||||
"SLF7" "J01ED04" 5326 "Sulfametoxydiazine" "Trimethoprims" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"bayrena\", \"berlicid\", \"dairena\", \"durenat\", \"juvoxin\", \"kinecid\", \"kirocid\", \"longasulf\", \"methoxypyrimal\", \"nsulfanilamide\", \"solfametossidiazina\", \"sulfameter\", \"sulfamethorine\", \"sulfamethoxine\", \"sulfamethoxydiazin\", \"sulfamethoxydiazine\", \"sulfamethoxydin\", \"sulfamethoxydine\", \"sulfametin\", \"sulfametinum\", \"sulfametorin\", \"sulfametorine\", \"sulfametorinum\", \"sulfametoxidiazina\", \"sulfametoxidine\", \"sulfametoxydiazine\", \"sulfametoxydiazinum\", \"sulphameter\", \"sulphamethoxydiazine\", \"supramid\",
|
"SLF7" 5326 "Sulfametoxydiazine" "Trimethoprims" "J01ED04" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"bayrena\", \"berlicid\", \"dairena\", \"durenat\", \"juvoxin\", \"kinecid\", \"kirocid\", \"longasulf\", \"methoxypyrimal\", \"nsulfanilamide\", \"solfametossidiazina\", \"sulfameter\", \"sulfamethorine\", \"sulfamethoxine\", \"sulfamethoxydiazin\", \"sulfamethoxydiazine\", \"sulfamethoxydin\", \"sulfamethoxydine\", \"sulfametin\", \"sulfametinum\", \"sulfametorin\", \"sulfametorine\", \"sulfametorinum\", \"sulfametoxidiazina\", \"sulfametoxidine\", \"sulfametoxydiazine\", \"sulfametoxydiazinum\", \"sulphameter\", \"sulphamethoxydiazine\", \"supramid\",
|
||||||
\"ultrax\")" 0.5 "g" "character(0)"
|
\"ultrax\")" 0.5 "g" "character(0)"
|
||||||
"SLT4" "J01EE03" "Sulfametrole/trimethoprim" "Trimethoprims" "Sulfonamides and trimethoprim" "Combinations of sulfonamides and trimethoprim, incl. derivatives" "c(\"\", \"trsm\")" "" ""
|
"SLT4" "Sulfametrole/trimethoprim" "Trimethoprims" "J01EE03" "Sulfonamides and trimethoprim" "Combinations of sulfonamides and trimethoprim, incl. derivatives" "c(\"\", \"trsm\")" "" ""
|
||||||
"SLF8" "J01EC03" 12894 "Sulfamoxole" "Trimethoprims" "Sulfonamides and trimethoprim" "Intermediate-acting sulfonamides" "" "c(\"justamil\", \"nsulfanilamide\", \"oxasulfa\", \"solfamossolo\", \"sulfadimethyloxazole\", \"sulfamoxol\", \"sulfamoxole\", \"sulfamoxolum\", \"sulfano\", \"sulfavigor\", \"sulfmidil\", \"sulfono\", \"sulfune\", \"sulfuno\", \"sulphamoxole\", \"tardamid\", \"tardamide\")" 1 "g" 1 "g" "character(0)"
|
"SLF8" 12894 "Sulfamoxole" "Trimethoprims" "J01EC03" "Sulfonamides and trimethoprim" "Intermediate-acting sulfonamides" "" "c(\"justamil\", \"nsulfanilamide\", \"oxasulfa\", \"solfamossolo\", \"sulfadimethyloxazole\", \"sulfamoxol\", \"sulfamoxole\", \"sulfamoxolum\", \"sulfano\", \"sulfavigor\", \"sulfmidil\", \"sulfono\", \"sulfune\", \"sulfuno\", \"sulphamoxole\", \"tardamid\", \"tardamide\")" 1 "g" 1 "g" "character(0)"
|
||||||
"SLT5" "J01EE04" "Sulfamoxole/trimethoprim" "Trimethoprims" "Sulfonamides and trimethoprim" "Combinations of sulfonamides and trimethoprim, incl. derivatives" "" "" ""
|
"SLT5" "Sulfamoxole/trimethoprim" "Trimethoprims" "J01EE04" "Sulfonamides and trimethoprim" "Combinations of sulfonamides and trimethoprim, incl. derivatives" "" "" ""
|
||||||
"SLF9" "J01EB06" 5333 "Sulfanilamide" "Trimethoprims" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "" "c(\"albexan\", \"albosal\", \"ambeside\", \"antistrept\", \"astreptine\", \"astrocid\", \"bacteramid\", \"bactesid\", \"collomide\", \"colsulanyde\", \"copticide\", \"deseptyl\", \"desseptyl\", \"dipron\", \"ergaseptine\", \"erysipan\", \"estreptocida\", \"exoseptoplix\", \"gerison\", \"gombardol\", \"infepan\", \"lysococcine\", \"neococcyl\", \"orgaseptine\", \"prontalbin\", \"prontosil album\", \"prontosil i\", \"prontosil white\", \"prontylin\", \"pronzin album\", \"proseptal\", \"proseptine\", \"proseptol\", \"pysococcine\", \"rubiazol a\", \"sanamid\", \"septamide album\",
|
"SLF9" 5333 "Sulfanilamide" "Trimethoprims" "c(\"D06BA05\", \"J01EB06\")" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "" "c(\"albexan\", \"albosal\", \"ambeside\", \"antistrept\", \"astreptine\", \"astrocid\", \"bacteramid\", \"bactesid\", \"collomide\", \"colsulanyde\", \"copticide\", \"deseptyl\", \"desseptyl\", \"dipron\", \"ergaseptine\", \"erysipan\", \"estreptocida\", \"exoseptoplix\", \"gerison\", \"gombardol\", \"infepan\", \"lysococcine\", \"neococcyl\", \"orgaseptine\", \"prontalbin\", \"prontosil album\", \"prontosil i\", \"prontosil white\", \"prontylin\", \"pronzin album\", \"proseptal\", \"proseptine\", \"proseptol\", \"pysococcine\", \"rubiazol a\", \"sanamid\", \"septamide album\",
|
||||||
\"septanilam\", \"septinal\", \"septolix\", \"septoplex\", \"septoplix\", \"solfanilamide\", \"stopton album\", \"stramid\", \"strepamide\", \"strepsan\", \"streptagol\", \"streptamid\", \"streptamin\", \"streptasol\", \"streptocid\", \"streptocid album\", \"streptocide\", \"streptocide white\", \"streptocidum\", \"streptoclase\", \"streptocom\", \"streptol\", \"strepton\", \"streptopan\", \"streptosil\", \"streptozol\", \"streptozone\", \"streptrocide\", \"sulfamidyl\", \"sulfamine\", \"sulfana\", \"sulfanalone\", \"sulfanidyl\", \"sulfanil\", \"sulfanilamida\", \"sulfanilamide\",
|
\"septanilam\", \"septinal\", \"septolix\", \"septoplex\", \"septoplix\", \"solfanilamide\", \"stopton album\", \"stramid\", \"strepamide\", \"strepsan\", \"streptagol\", \"streptamid\", \"streptamin\", \"streptasol\", \"streptocid\", \"streptocid album\", \"streptocide\", \"streptocide white\", \"streptocidum\", \"streptoclase\", \"streptocom\", \"streptol\", \"strepton\", \"streptopan\", \"streptosil\", \"streptozol\", \"streptozone\", \"streptrocide\", \"sulfamidyl\", \"sulfamine\", \"sulfana\", \"sulfanalone\", \"sulfanidyl\", \"sulfanil\", \"sulfanilamida\", \"sulfanilamide\",
|
||||||
\"sulfanilamidum\", \"sulfanilimidic acid\", \"sulfanimide\", \"sulfocidin\", \"sulfocidine\", \"sulfonamide\", \"sulfonamide p\", \"sulfonylamide\", \"sulphanilamide\", \"sulphanilamide gr\", \"sulphonamide\", \"therapol\", \"tolder\", \"white streptocide\", \"wln: zswr dz\")" "character(0)"
|
\"sulfanilamidum\", \"sulfanilimidic acid\", \"sulfanimide\", \"sulfocidin\", \"sulfocidine\", \"sulfonamide\", \"sulfonamide p\", \"sulfonylamide\", \"sulphanilamide\", \"sulphanilamide gr\", \"sulphonamide\", \"therapol\", \"tolder\", \"white streptocide\", \"wln: zswr dz\")" "character(0)"
|
||||||
"SLF10" "J01ED06" 68933 "Sulfaperin" "Trimethoprims" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"anastaf\", \"archisulfa\", \"avissul\", \"chemiopen\", \"demosulfan\", \"durisan saft\", \"ipersulfidin sirup\", \"isosulfamerazine\", \"methylsulfadiazin\", \"novosul\", \"nsulfanilamide\", \"orosulfan\", \"pallidin\", \"retardon\", \"risulfasens\", \"sulfaperin\", \"sulfaperina\", \"sulfaperine\", \"sulfaperinum\", \"sulfatreis\", \"sulfopirimidine\", \"sulpenta\", \"ultrasulfon sirup\")" 0.5 "g" "character(0)"
|
"SLF10" 68933 "Sulfaperin" "Trimethoprims" "J01ED06" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"anastaf\", \"archisulfa\", \"avissul\", \"chemiopen\", \"demosulfan\", \"durisan saft\", \"ipersulfidin sirup\", \"isosulfamerazine\", \"methylsulfadiazin\", \"novosul\", \"nsulfanilamide\", \"orosulfan\", \"pallidin\", \"retardon\", \"risulfasens\", \"sulfaperin\", \"sulfaperina\", \"sulfaperine\", \"sulfaperinum\", \"sulfatreis\", \"sulfopirimidine\", \"sulpenta\", \"ultrasulfon sirup\")" 0.5 "g" "character(0)"
|
||||||
"SLF11" "J01ED08" 5335 "Sulfaphenazole" "Trimethoprims" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"depocid\", \"depotsulfonamide\", \"eftolon\", \"firmazolo\", \"inamil\", \"isarol\", \"isarol v\", \"merian\", \"microtan pirazolo\", \"nsulfanilamide\", \"orisul\", \"orisulf\", \"paidazolo\", \"phenylsulfapyrazole\", \"plisulfan\", \"raziosulfa\", \"solfafenazolo\", \"sulfabid\", \"sulfafenazol\", \"sulfafenazolo\", \"sulfaphenazol\", \"sulfaphenazole\", \"sulfaphenazolum\", \"sulfaphenazon\", \"sulfaphenylpipazol\", \"sulfaphenylpyrazol\", \"sulfaphenylpyrazole\", \"sulfonylpyrazol\", \"sulphaphenazole\", \"sulphenazole\")" 1 "g" "character(0)"
|
"SLF11" 5335 "Sulfaphenazole" "Trimethoprims" "J01ED08" "Sulfonamides and trimethoprim" "Long-acting sulfonamides" "" "c(\"depocid\", \"depotsulfonamide\", \"eftolon\", \"firmazolo\", \"inamil\", \"isarol\", \"isarol v\", \"merian\", \"microtan pirazolo\", \"nsulfanilamide\", \"orisul\", \"orisulf\", \"paidazolo\", \"phenylsulfapyrazole\", \"plisulfan\", \"raziosulfa\", \"solfafenazolo\", \"sulfabid\", \"sulfafenazol\", \"sulfafenazolo\", \"sulfaphenazol\", \"sulfaphenazole\", \"sulfaphenazolum\", \"sulfaphenazon\", \"sulfaphenylpipazol\", \"sulfaphenylpyrazol\", \"sulfaphenylpyrazole\", \"sulfonylpyrazol\", \"sulphaphenazole\", \"sulphenazole\")" 1 "g" "character(0)"
|
||||||
"SLF12" "J01EB04" 5336 "Sulfapyridine" "Trimethoprims" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "" "c(\"adiplon\", \"coccoclase\", \"dagenan\", \"eubasin\", \"eubasinum\", \"haptocil\", \"piridazol\", \"plurazol\", \"pyriamid\", \"pyridazol\", \"relbapiridina\", \"septipulmon\", \"solfapiridina\", \"streptosilpyridine\", \"sulfapiridina\", \"sulfapyridin\", \"sulfapyridine\", \"sulfapyridinum\", \"sulfidin\", \"sulfidine\", \"sulphapyridin\", \"sulphapyridine\", \"thioseptal\", \"trianon\")" 1 "g" "c(\"14075-6\", \"55580-5\")"
|
"SLF12" 5336 "Sulfapyridine" "Trimethoprims" "J01EB04" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "" "c(\"adiplon\", \"coccoclase\", \"dagenan\", \"eubasin\", \"eubasinum\", \"haptocil\", \"piridazol\", \"plurazol\", \"pyriamid\", \"pyridazol\", \"relbapiridina\", \"septipulmon\", \"solfapiridina\", \"streptosilpyridine\", \"sulfapiridina\", \"sulfapyridin\", \"sulfapyridine\", \"sulfapyridinum\", \"sulfidin\", \"sulfidine\", \"sulphapyridin\", \"sulphapyridine\", \"thioseptal\", \"trianon\")" 1 "g" "c(\"14075-6\", \"55580-5\")"
|
||||||
"SNA" 60582 "Sulfasuccinamide" "Other antibacterials" "" "c(\"ambesid\", \"derganil\", \"sulfasuccinamid\", \"sulfasuccinamida\", \"sulfasuccinamide\", \"sulfasuccinamidum\")" "character(0)"
|
"SNA" 60582 "Sulfasuccinamide" "Other antibacterials" "" "c(\"ambesid\", \"derganil\", \"sulfasuccinamid\", \"sulfasuccinamida\", \"sulfasuccinamide\", \"sulfasuccinamidum\")" "character(0)"
|
||||||
"SUT" "J01EB07" 5340 "Sulfathiazole" "Trimethoprims" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "" "c(\"azoquimiol\", \"azoseptale\", \"cerazol\", \"cerazole\", \"chemosept\", \"cibazol\", \"duatok\", \"dulana\", \"eleudron\", \"enterobiocine\", \"estafilol\", \"formosulfathiazole\", \"neostrepsan\", \"norsulfasol\", \"norsulfazol\", \"norsulfazole\", \"norsulfazolum\", \"nsulfanilamide\", \"planomide\", \"poliseptil\", \"sanotiazol\", \"septozol\", \"solfatiazolo\", \"streptosilthiazole\", \"sulfamul\", \"sulfathiazol\", \"sulfathiazole\", \"sulfathiazolum\", \"sulfatiazol\", \"sulfavitina\", \"sulfocerol\", \"sulphathiazole\", \"sulzol\", \"thiacoccine\", \"thiasulfol\",
|
"SUT" 5340 "Sulfathiazole" "Trimethoprims" "c(\"D06BA02\", \"J01EB07\")" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "" "c(\"azoquimiol\", \"azoseptale\", \"cerazol\", \"cerazole\", \"chemosept\", \"cibazol\", \"duatok\", \"dulana\", \"eleudron\", \"enterobiocine\", \"estafilol\", \"formosulfathiazole\", \"neostrepsan\", \"norsulfasol\", \"norsulfazol\", \"norsulfazole\", \"norsulfazolum\", \"nsulfanilamide\", \"planomide\", \"poliseptil\", \"sanotiazol\", \"septozol\", \"solfatiazolo\", \"streptosilthiazole\", \"sulfamul\", \"sulfathiazol\", \"sulfathiazole\", \"sulfathiazolum\", \"sulfatiazol\", \"sulfavitina\", \"sulfocerol\", \"sulphathiazole\", \"sulzol\", \"thiacoccine\", \"thiasulfol\",
|
||||||
\"thiazamide\", \"thiozamide\", \"wintrazole\")" "87591-4"
|
\"thiazamide\", \"thiozamide\", \"wintrazole\")" "87591-4"
|
||||||
"SLF13" "J01EB08" 3000579 "Sulfathiourea" "Trimethoprims" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "" "c(\"badional\", \"baldinol\", \"fontamide\", \"salvoseptyl\", \"solfatiourea\", \"solufontamide\", \"sulfanilthiourea\", \"sulfathiocarbamid\", \"sulfathiocarbamide\", \"sulfathiocarbamidum\", \"sulfathiourea\", \"sulfathiouree\", \"sulfatiourea\", \"sulphathiourea\")" 6 "g" "character(0)"
|
"SLF13" 3000579 "Sulfathiourea" "Trimethoprims" "J01EB08" "Sulfonamides and trimethoprim" "Short-acting sulfonamides" "" "c(\"badional\", \"baldinol\", \"fontamide\", \"salvoseptyl\", \"solfatiourea\", \"solufontamide\", \"sulfanilthiourea\", \"sulfathiocarbamid\", \"sulfathiocarbamide\", \"sulfathiocarbamidum\", \"sulfathiourea\", \"sulfathiouree\", \"sulfatiourea\", \"sulphathiourea\")" 6 "g" "character(0)"
|
||||||
"SOX" 5344 "Sulfisoxazole" "Other antibacterials" "" "c(\"accuzole\", \"alphazole\", \"amidoxal\", \"astrazolo\", \"azo gantrisin\", \"azosulfizin\", \"bactesulf\", \"barazae\", \"chemouag\", \"cosoxazole\", \"dorsulfan\", \"dorsulfan warthausen\", \"entusil\", \"entusul\", \"eryzole\", \"gantrisin\", \"gantrisine\", \"gantrisona\", \"gantrizin\", \"gantrosan\", \"isoxamin\", \"neazolin\", \"neoxazoi\", \"neoxazol\", \"novazolo\", \"novosaxazole\", \"nsulfanilamide\", \"nsulphanilamide\", \"pancid\", \"pediazole\", \"renosulfan\", \"resoxol\", \"roxosul\", \"roxosul tablets\", \"roxoxol\", \"saxosozine\", \"sodizole\", \"solfafurazolo\",
|
"SOX" 5344 "Sulfisoxazole" "Other antibacterials" "" "c(\"accuzole\", \"alphazole\", \"amidoxal\", \"astrazolo\", \"azo gantrisin\", \"azosulfizin\", \"bactesulf\", \"barazae\", \"chemouag\", \"cosoxazole\", \"dorsulfan\", \"dorsulfan warthausen\", \"entusil\", \"entusul\", \"eryzole\", \"gantrisin\", \"gantrisine\", \"gantrisona\", \"gantrizin\", \"gantrosan\", \"isoxamin\", \"neazolin\", \"neoxazoi\", \"neoxazol\", \"novazolo\", \"novosaxazole\", \"nsulfanilamide\", \"nsulphanilamide\", \"pancid\", \"pediazole\", \"renosulfan\", \"resoxol\", \"roxosul\", \"roxosul tablets\", \"roxoxol\", \"saxosozine\", \"sodizole\", \"solfafurazolo\",
|
||||||
\"soxamide\", \"soxazole\", \"soxisol\", \"soxitabs\", \"soxomide\", \"stansin\", \"sulbio\", \"sulfafuraz ole\", \"sulfafurazol\", \"sulfafurazole\", \"sulfafurazolum\", \"sulfagan\", \"sulfagen\", \"sulfaisoxazole\", \"sulfalar\", \"sulfapolar\", \"sulfasol\", \"sulfasoxazole\", \"sulfasoxizole\", \"sulfazin\", \"sulfisin\", \"sulfisonazole\", \"sulfisoxasole\", \"sulfisoxazol\", \"sulfisoxazole\", \"sulfisoxazolum\", \"sulfizin\", \"sulfizol\", \"sulfizole\", \"sulfofurazole\", \"sulfoxol\", \"suloxsol\", \"sulphafuraz\", \"sulphafurazol\", \"sulphafurazole\", \"sulphafurazolum\",
|
\"soxamide\", \"soxazole\", \"soxisol\", \"soxitabs\", \"soxomide\", \"stansin\", \"sulbio\", \"sulfafuraz ole\", \"sulfafurazol\", \"sulfafurazole\", \"sulfafurazolum\", \"sulfagan\", \"sulfagen\", \"sulfaisoxazole\", \"sulfalar\", \"sulfapolar\", \"sulfasol\", \"sulfasoxazole\", \"sulfasoxizole\", \"sulfazin\", \"sulfisin\", \"sulfisonazole\", \"sulfisoxasole\", \"sulfisoxazol\", \"sulfisoxazole\", \"sulfisoxazolum\", \"sulfizin\", \"sulfizol\", \"sulfizole\", \"sulfofurazole\", \"sulfoxol\", \"suloxsol\", \"sulphafuraz\", \"sulphafurazol\", \"sulphafurazole\", \"sulphafurazolum\",
|
||||||
\"sulphaisoxazole\", \"sulphisoxazol\", \"sulphisoxazole\", \"sulphofurazole\", \"sulsoxin\", \"thiasin\", \"unisulf\", \"urisoxin\", \"uritrisin\", \"urogan\", \"vagilia\")" "9701-4"
|
\"sulphaisoxazole\", \"sulphisoxazol\", \"sulphisoxazole\", \"sulphofurazole\", \"sulsoxin\", \"thiasin\", \"unisulf\", \"urisoxin\", \"uritrisin\", \"urogan\", \"vagilia\")" "9701-4"
|
||||||
"SSS" 86225 "Sulfonamide" "Other antibacterials" "c(\"\", \"sfna\")" "" ""
|
"SSS" 86225 "Sulfonamide" "Other antibacterials" "c(\"\", \"sfna\")" "" ""
|
||||||
"SLP" 9950244 "Sulopenem" "Other antibacterials" "" "sulopenem" "character(0)"
|
"SLP" 9950244 "Sulopenem" "Other antibacterials" "" "sulopenem" "character(0)"
|
||||||
"SLT6" "J01CR04" 444022 "Sultamicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Combinations of penicillins, incl. beta-lactamase inhibitors" "" "c(\"sultamicilina\", \"sultamicillin\", \"sultamicillinum\")" 1.5 "g" "character(0)"
|
"SLT6" 444022 "Sultamicillin" "Beta-lactams/penicillins" "J01CR04" "Beta-lactam antibacterials, penicillins" "Combinations of penicillins, incl. beta-lactamase inhibitors" "" "c(\"sultamicilina\", \"sultamicillin\", \"sultamicillinum\")" 1.5 "g" "character(0)"
|
||||||
"SUR" 46700778 "Surotomycin" "Other antibacterials" "" "surotomycin" "character(0)"
|
"SUR" 46700778 "Surotomycin" "Other antibacterials" "" "surotomycin" "character(0)"
|
||||||
"TAL" "J01CA15" 71447 "Talampicillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"talampicilina\", \"talampicillin\", \"talampicilline\", \"talampicillinum\")" 2 "g" "character(0)"
|
"TAL" 71447 "Talampicillin" "Beta-lactams/penicillins" "J01CA15" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "" "c(\"talampicilina\", \"talampicillin\", \"talampicilline\", \"talampicillinum\")" 2 "g" "character(0)"
|
||||||
"TLP" 163307 "Talmetoprim" "Other antibacterials" "" "talmetoprim" "character(0)"
|
"TLP" 163307 "Talmetoprim" "Other antibacterials" "" "talmetoprim" "character(0)"
|
||||||
"TAZ" "J01CG02" 123630 "Tazobactam" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Beta-lactamase inhibitors" "tazo" "c(\"tazobactam\", \"tazobactam acid\", \"tazobactamum\", \"tazobactum\")" "character(0)"
|
"TAZ" 123630 "Tazobactam" "Beta-lactams/penicillins" "J01CG02" "Beta-lactam antibacterials, penicillins" "Beta-lactamase inhibitors" "tazo" "c(\"tazobactam\", \"tazobactam acid\", \"tazobactamum\", \"tazobactum\")" "character(0)"
|
||||||
"TBP" 9800194 "Tebipenem" "Carbapenems" "" "" ""
|
"TBP" 9800194 "Tebipenem" "Carbapenems" "" "" ""
|
||||||
"TZD" "J01XX11" 11234049 "Tedizolid" "Oxazolidinones" "Other antibacterials" "Other antibacterials" "tedi" "c(\"tedizolid\", \"torezolid\")" 0.2 0.2 "character(0)"
|
"TZD" 11234049 "Tedizolid" "Oxazolidinones" "J01XX11" "Other antibacterials" "Other antibacterials" "tedi" "c(\"tedizolid\", \"torezolid\")" 0.2 "g" 0.2 "g" "character(0)"
|
||||||
"TEC" "J01XA02" 16131923 "Teicoplanin" "Glycopeptides" "Other antibacterials" "Glycopeptide antibacterials" "c(\"tec\", \"tei\", \"teic\", \"tp\", \"tpl\", \"tpn\")" "c(\"targocid\", \"tecoplanina\", \"tecoplanine\", \"tecoplaninum\", \"teichomycin\", \"teicoplanina\", \"teicoplanine\", \"teicoplaninum\")" 0.4 "g" "c(\"25534-9\", \"25535-6\", \"34378-0\", \"34379-8\", \"4043-6\", \"80968-1\")"
|
"TEC" 16131923 "Teicoplanin" "Glycopeptides" "J01XA02" "Other antibacterials" "Glycopeptide antibacterials" "c(\"tec\", \"tei\", \"teic\", \"tp\", \"tpl\", \"tpn\")" "c(\"targocid\", \"tecoplanina\", \"tecoplanine\", \"tecoplaninum\", \"teichomycin\", \"teicoplanina\", \"teicoplanine\", \"teicoplaninum\")" 0.4 "g" "c(\"25534-9\", \"25535-6\", \"34378-0\", \"34379-8\", \"4043-6\", \"80968-1\")"
|
||||||
"TCM" "Teicoplanin-macromethod" "Glycopeptides" "" "" ""
|
"TCM" "Teicoplanin-macromethod" "Glycopeptides" "" "" ""
|
||||||
"TLV" "J01XA03" 3081362 "Telavancin" "Glycopeptides" "Other antibacterials" "Glycopeptide antibacterials" "tela" "c(\"telavancin\", \"vibativ\")" "character(0)"
|
"TLV" 3081362 "Telavancin" "Glycopeptides" "J01XA03" "Other antibacterials" "Glycopeptide antibacterials" "tela" "c(\"telavancin\", \"vibativ\")" "character(0)"
|
||||||
"TLT" "J01FA15" 3002190 "Telithromycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Macrolides" "c(\"\", \"teli\")" "levviax" 0.8 "g" "character(0)"
|
"TLT" 3002190 "Telithromycin" "Macrolides/lincosamides" "J01FA15" "Macrolides, lincosamides and streptogramins" "Macrolides" "c(\"\", \"teli\")" "levviax" 0.8 "g" "character(0)"
|
||||||
"TMX" "J01MA05" 60021 "Temafloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"tema\")" "c(\"omniflox\", \"temafloxacin\", \"temafloxacina\", \"temafloxacine\", \"temafloxacinum\")" 0.8 "g" "character(0)"
|
"TMX" 60021 "Temafloxacin" "Quinolones" "J01MA05" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"tema\")" "c(\"omniflox\", \"temafloxacin\", \"temafloxacina\", \"temafloxacine\", \"temafloxacinum\")" 0.8 "g" "character(0)"
|
||||||
"TEM" "J01CA17" 171758 "Temocillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"\", \"temo\")" "c(\"temocilina\", \"temocillin\", \"temocillina\", \"temocilline\", \"temocillinum\")" 4 "g" "character(0)"
|
"TEM" 171758 "Temocillin" "Beta-lactams/penicillins" "J01CA17" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"\", \"temo\")" "c(\"temocilina\", \"temocillin\", \"temocillina\", \"temocilline\", \"temocillinum\")" 4 "g" "character(0)"
|
||||||
"TRB" "D01BA02" 1549008 "Terbinafine" "Antifungals/antimycotics" "Antifungals for systemic use" "Antifungals for systemic use" "c(\"\", \"terb\")" "c(\"corbinal\", \"lamasil\", \"lamisil\", \"lamisil at\", \"lamisil tablet\", \"terbinafina\", \"terbinafine\", \"terbinafinum\", \"terbinex\")" 0.25 "g" "character(0)"
|
"TRB" 1549008 "Terbinafine" "Antifungals/antimycotics" "c(\"D01AE15\", \"D01BA02\")" "Antifungals for systemic use" "Antifungals for systemic use" "c(\"\", \"terb\")" "c(\"corbinal\", \"lamasil\", \"lamisil\", \"lamisil at\", \"lamisil tablet\", \"terbinafina\", \"terbinafine\", \"terbinafinum\", \"terbinex\")" 0.25 "g" "character(0)"
|
||||||
"TRC" 441383 "Terconazole" "Antifungals/antimycotics" "" "c(\"fungistat\", \"panlomyc\", \"terazol\", \"terconazol\", \"terconazole\", \"terconazolum\", \"tercospor\", \"triaconazole\", \"zazole\")" "character(0)"
|
"TRC" 441383 "Terconazole" "Antifungals/antimycotics" "G01AG02" "" "c(\"fungistat\", \"panlomyc\", \"terazol\", \"terconazol\", \"terconazole\", \"terconazolum\", \"tercospor\", \"triaconazole\", \"zazole\")" "character(0)"
|
||||||
"TRZ" "J04AK03" 65720 "Terizidone" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Other drugs for treatment of tuberculosis" "" "c(\"terivalidin\", \"terizidon\", \"terizidona\", \"terizidone\", \"terizidonum\")" "character(0)"
|
"TRZ" 65720 "Terizidone" "Antimycobacterials" "J04AK03" "Drugs for treatment of tuberculosis" "Other drugs for treatment of tuberculosis" "" "c(\"terivalidin\", \"terizidon\", \"terizidona\", \"terizidone\", \"terizidonum\")" "character(0)"
|
||||||
"TCY" "J01AA07" 54675776 "Tetracycline" "Tetracyclines" "Tetracyclines" "Tetracyclines" "c(\"tc\", \"te\", \"tet\", \"tetr\")" "c(\"abramycin\", \"abricycline\", \"achromycin\", \"achromycin v\", \"actisite\", \"agromicina\", \"ambramicina\", \"ambramycin\", \"amycin\", \"biocycline\", \"bristaciclin\", \"bristaciclina\", \"bristacycline\", \"cefracycline\", \"centet\", \"ciclibion\", \"copharlan\", \"criseociclina\", \"cyclomycin\", \"cyclopar\", \"cytome\", \"democracin\", \"deschlorobiomycin\", \"dumocyclin\", \"enterocycline\", \"hostacyclin\", \"lexacycline\", \"limecycline\", \"liquamycin\", \"medocycline\", \"mericycline\", \"micycline\", \"neocycline\", \"oletetrin\", \"omegamycin\",
|
"TCY" 54675776 "Tetracycline" "Tetracyclines" "c(\"A01AB13\", \"D06AA04\", \"J01AA07\", \"S01AA09\", \"S02AA08\", \"S03AA02\")" "Tetracyclines" "Tetracyclines" "c(\"tc\", \"te\", \"tet\", \"tetr\")" "c(\"abramycin\", \"abricycline\", \"achromycin\", \"achromycin v\", \"actisite\", \"agromicina\", \"ambramicina\", \"ambramycin\", \"amycin\", \"biocycline\", \"bristaciclin\", \"bristaciclina\", \"bristacycline\", \"cefracycline\", \"centet\", \"ciclibion\", \"copharlan\", \"criseociclina\", \"cyclomycin\", \"cyclopar\", \"cytome\", \"democracin\", \"deschlorobiomycin\", \"dumocyclin\", \"enterocycline\", \"hostacyclin\", \"lexacycline\", \"limecycline\", \"liquamycin\", \"medocycline\", \"mericycline\", \"micycline\", \"neocycline\", \"oletetrin\", \"omegamycin\",
|
||||||
\"orlycycline\", \"panmycin\", \"piracaps\", \"polycycline\", \"polyotic\", \"purocyclina\", \"resteclin\", \"robitet\", \"roviciclina\", \"sigmamycin\", \"solvocin\", \"sumycin\", \"sumycin syrup\", \"tetrabon\", \"tetrachel\", \"tetraciclina\", \"tetracycl\", \"tetracyclin\", \"tetracycline\", \"tetracycline base\", \"tetracycline i\", \"tetracycline ii\", \"tetracyclinum\", \"tetracyn\", \"tetradecin\", \"tetrafil\", \"tetramed\", \"tetrasure\", \"tetraverine\", \"tetrazyklin\", \"tetrex\", \"topicycline\", \"tsiklomistsin\", \"tsiklomitsin\", \"veracin\", \"vetacyclinum\"
|
\"orlycycline\", \"panmycin\", \"piracaps\", \"polycycline\", \"polyotic\", \"purocyclina\", \"resteclin\", \"robitet\", \"roviciclina\", \"sigmamycin\", \"solvocin\", \"sumycin\", \"sumycin syrup\", \"tetrabon\", \"tetrachel\", \"tetraciclina\", \"tetracycl\", \"tetracyclin\", \"tetracycline\", \"tetracycline base\", \"tetracycline i\", \"tetracycline ii\", \"tetracyclinum\", \"tetracyn\", \"tetradecin\", \"tetrafil\", \"tetramed\", \"tetrasure\", \"tetraverine\", \"tetrazyklin\", \"tetrex\", \"topicycline\", \"tsiklomistsin\", \"tsiklomitsin\", \"veracin\", \"vetacyclinum\"
|
||||||
)" 1 "g" 1 "g" "c(\"25272-6\", \"4045-1\", \"87590-6\")"
|
)" 1 "g" 1 "g" "c(\"25272-6\", \"4045-1\", \"87590-6\")"
|
||||||
"TET" 65450 "Tetroxoprim" "Other antibacterials" "" "c(\"tetroxoprim\", \"tetroxoprima\", \"tetroxoprime\", \"tetroxoprimum\")" "character(0)"
|
"TET" 65450 "Tetroxoprim" "Other antibacterials" "" "c(\"tetroxoprim\", \"tetroxoprima\", \"tetroxoprime\", \"tetroxoprimum\")" "character(0)"
|
||||||
"THA" 9568512 "Thiacetazone" "Oxazolidinones" "" "c(\"aktivan\", \"ambathizon\", \"amithiozone\", \"amithizone\", \"amitiozon\", \"benthiozone\", \"benzothiozane\", \"benzothiozon\", \"berculon a\", \"berkazon\", \"citazone\", \"conteben\", \"diasan\", \"diazan\", \"domakol\", \"ilbion\", \"livazone\", \"mirizone neustab\", \"mivizon\", \"myvizone\", \"neotibil\", \"neustab\", \"novakol\", \"nuclon argentinian\", \"panrone\", \"parazone\", \"seroden\", \"siocarbazone\", \"tebalon\", \"tebecure\", \"tebemar\", \"tebesone i\", \"tebethion\", \"tebethione\", \"tebezon\", \"thiacetazone\", \"thiacetone\", \"thiacetozone\",
|
"THA" 9568512 "Thiacetazone" "Oxazolidinones" "" "c(\"aktivan\", \"ambathizon\", \"amithiozone\", \"amithizone\", \"amitiozon\", \"benthiozone\", \"benzothiozane\", \"benzothiozon\", \"berculon a\", \"berkazon\", \"citazone\", \"conteben\", \"diasan\", \"diazan\", \"domakol\", \"ilbion\", \"livazone\", \"mirizone neustab\", \"mivizon\", \"myvizone\", \"neotibil\", \"neustab\", \"novakol\", \"nuclon argentinian\", \"panrone\", \"parazone\", \"seroden\", \"siocarbazone\", \"tebalon\", \"tebecure\", \"tebemar\", \"tebesone i\", \"tebethion\", \"tebethione\", \"tebezon\", \"thiacetazone\", \"thiacetone\", \"thiacetozone\",
|
||||||
\"thibon\", \"thibone\", \"thioacetazon\", \"thioacetazone\", \"thioacetazonum\", \"thioazetazone\", \"thiocarbazil\", \"thiomicid\", \"thionicid\", \"thioparamizon\", \"thioparamizone\", \"thiosemicarbarzone\", \"thiosemicarbazone\", \"thiotebesin\", \"thiotebezin\", \"thiotebicina\", \"thizone\", \"tiacetazon\", \"tibicur\", \"tibion\", \"tibione\", \"tibizan\", \"tibone\", \"tioacetazon\", \"tioacetazona\", \"tioatsetazon\", \"tiobicina\", \"tiocarone\", \"tiosecolo\", \"tubercazon\", \"tubigal\")" "character(0)"
|
\"thibon\", \"thibone\", \"thioacetazon\", \"thioacetazone\", \"thioacetazonum\", \"thioazetazone\", \"thiocarbazil\", \"thiomicid\", \"thionicid\", \"thioparamizon\", \"thioparamizone\", \"thiosemicarbarzone\", \"thiosemicarbazone\", \"thiotebesin\", \"thiotebezin\", \"thiotebicina\", \"thizone\", \"tiacetazon\", \"tibicur\", \"tibion\", \"tibione\", \"tibizan\", \"tibone\", \"tioacetazon\", \"tioacetazona\", \"tioatsetazon\", \"tiobicina\", \"tiocarone\", \"tiosecolo\", \"tubercazon\", \"tubigal\")" "character(0)"
|
||||||
"THI" "J01BA02" 27200 "Thiamphenicol" "Amphenicols" "Amphenicols" "Amphenicols" "" "c(\"descocin\", \"dexawin\", \"dextrosulfenidol\", \"dextrosulphenidol\", \"efnicol\", \"hyrazin\", \"igralin\", \"macphenicol\", \"masatirin\", \"neomyson\", \"racefenicol\", \"racefenicolo\", \"racefenicolum\", \"raceophenidol\", \"racephenicol\", \"rincrol\", \"thiamcol\", \"thiamphenicol\", \"thiamphenicolum\", \"thiocymetin\", \"thiomycetin\", \"thiophenicol\", \"tiamfenicol\", \"tiamfenicolo\", \"urfamicina\", \"urfamycine\", \"vicemycetin\")" 1.5 "g" 1.5 "g" "character(0)"
|
"THI" 27200 "Thiamphenicol" "Amphenicols" "J01BA02" "Amphenicols" "Amphenicols" "" "c(\"descocin\", \"dexawin\", \"dextrosulfenidol\", \"dextrosulphenidol\", \"efnicol\", \"hyrazin\", \"igralin\", \"macphenicol\", \"masatirin\", \"neomyson\", \"racefenicol\", \"racefenicolo\", \"racefenicolum\", \"raceophenidol\", \"racephenicol\", \"rincrol\", \"thiamcol\", \"thiamphenicol\", \"thiamphenicolum\", \"thiocymetin\", \"thiomycetin\", \"thiophenicol\", \"tiamfenicol\", \"tiamfenicolo\", \"urfamicina\", \"urfamycine\", \"vicemycetin\")" 1.5 "g" 1.5 "g" "character(0)"
|
||||||
"THI1" "J04AM04" "Thioacetazone/isoniazid" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Combinations of drugs for treatment of tuberculosis" "" "" ""
|
"THI1" "Thioacetazone/isoniazid" "Antimycobacterials" "J04AM04" "Drugs for treatment of tuberculosis" "Combinations of drugs for treatment of tuberculosis" "" "" ""
|
||||||
"TIA" 656958 "Tiamulin" "Other antibacterials" "" "c(\"denagard\", \"tiamulin\", \"tiamulin pamoate\", \"tiamulina\", \"tiamuline\", \"tiamulinum\")" "87589-8"
|
"TIA" 656958 "Tiamulin" "Other antibacterials" "" "c(\"denagard\", \"tiamulin\", \"tiamulin pamoate\", \"tiamulina\", \"tiamuline\", \"tiamulinum\")" "87589-8"
|
||||||
"TIC" "J01CA13" 36921 "Ticarcillin" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"tc\", \"ti\", \"tic\", \"tica\")" "c(\"ticarcilina\", \"ticarcillin\", \"ticarcilline\", \"ticarcillinum\", \"ticillin\")" 15 "g" "c(\"25254-4\", \"4054-3\", \"4055-0\")"
|
"TIC" 36921 "Ticarcillin" "Beta-lactams/penicillins" "J01CA13" "Beta-lactam antibacterials, penicillins" "Penicillins with extended spectrum" "c(\"tc\", \"ti\", \"tic\", \"tica\")" "c(\"ticarcilina\", \"ticarcillin\", \"ticarcilline\", \"ticarcillinum\", \"ticillin\")" 15 "g" "c(\"25254-4\", \"4054-3\", \"4055-0\")"
|
||||||
"TCC" "J01CR03" 6437075 "Ticarcillin/clavulanic acid" "Beta-lactams/penicillins" "Beta-lactam antibacterials, penicillins" "Combinations of penicillins, incl. beta-lactamase inhibitors" "c(\"t/c\", \"tcc\", \"ticl\", \"tim\", \"tlc\")" "timentin" 15 "g" "character(0)"
|
"TCC" 6437075 "Ticarcillin/clavulanic acid" "Beta-lactams/penicillins" "J01CR03" "Beta-lactam antibacterials, penicillins" "Combinations of penicillins, incl. beta-lactamase inhibitors" "c(\"t/c\", \"tcc\", \"ticl\", \"tim\", \"tlc\")" "timentin" 15 "g" "character(0)"
|
||||||
"TGC" "J01AA12" 54686904 "Tigecycline" "Tetracyclines" "Tetracyclines" "Tetracyclines" "c(\"tgc\", \"tig\", \"tige\")" "c(\"haizheng li xing\", \"tigeciclina\", \"tigecyclin\", \"tigecycline\", \"tigecycline hydrate\", \"tigecyclinum\", \"tigilcycline\", \"tygacil\")" 0.1 "g" "character(0)"
|
"TGC" 54686904 "Tigecycline" "Tetracyclines" "J01AA12" "Tetracyclines" "Tetracyclines" "c(\"tgc\", \"tig\", \"tige\")" "c(\"haizheng li xing\", \"tigeciclina\", \"tigecyclin\", \"tigecycline\", \"tigecycline hydrate\", \"tigecyclinum\", \"tigilcycline\", \"tygacil\")" 0.1 "g" "character(0)"
|
||||||
"TBQ" 65592 "Tilbroquinol" "Quinolones" "" "c(\"tilbroquinol\", \"tilbroquinolum\")" "character(0)"
|
"TBQ" 65592 "Tilbroquinol" "Quinolones" "P01AA05" "" "c(\"tilbroquinol\", \"tilbroquinolum\")" "character(0)"
|
||||||
"TIP" 24860548 "Tildipirosin" "Macrolides/lincosamides" "" "c(\"tildipirosin\", \"zuprevo\")" "character(0)"
|
"TIP" 24860548 "Tildipirosin" "Macrolides/lincosamides" "" "c(\"tildipirosin\", \"zuprevo\")" "character(0)"
|
||||||
"TIL" 5282521 "Tilmicosin" "Macrolides/lincosamides" "" "c(\"micotil\", \"pulmotil\", \"tilmicosin\", \"tilmicosina\", \"tilmicosine\", \"tilmicosinum\")" "87588-0"
|
"TIL" 5282521 "Tilmicosin" "Macrolides/lincosamides" "" "c(\"micotil\", \"pulmotil\", \"tilmicosin\", \"tilmicosina\", \"tilmicosine\", \"tilmicosinum\")" "87588-0"
|
||||||
"TIN" "J01XD02" 5479 "Tinidazole" "Other antibacterials" "Other antibacterials" "Imidazole derivatives" "c(\"\", \"tini\")" "c(\"amtiba\", \"bioshik\", \"ethyl sulfone\", \"fasigin\", \"fasigyn\", \"fasigyntrade mark\", \"fasygin\", \"glongyn\", \"haisigyn\", \"pletil\", \"simplotan\", \"simplotantrade mark\", \"sorquetan\", \"tindamax\", \"tindamaxtrade mark\", \"tinidazol\", \"tinidazole\", \"tinidazolum\", \"tricolam\", \"trimonase\")" 1.5 "g" "character(0)"
|
"TIN" 5479 "Tinidazole" "Other antibacterials" "c(\"J01XD02\", \"P01AB02\")" "Other antibacterials" "Imidazole derivatives" "c(\"\", \"tini\")" "c(\"amtiba\", \"bioshik\", \"ethyl sulfone\", \"fasigin\", \"fasigyn\", \"fasigyntrade mark\", \"fasygin\", \"glongyn\", \"haisigyn\", \"pletil\", \"simplotan\", \"simplotantrade mark\", \"sorquetan\", \"tindamax\", \"tindamaxtrade mark\", \"tinidazol\", \"tinidazole\", \"tinidazolum\", \"tricolam\", \"trimonase\")" 2 "g" 1.5 "g" "character(0)"
|
||||||
"TCR" "J04AD02" 3001386 "Tiocarlide" "Antimycobacterials" "Drugs for treatment of tuberculosis" "Thiocarbamide derivatives" "" "c(\"amixyl\", \"datanil\", \"disocarban\", \"disoxyl\", \"thiocarlide\", \"tiocarlid\", \"tiocarlida\", \"tiocarlide\", \"tiocarlidum\")" 7 "g" "character(0)"
|
"TCR" 3001386 "Tiocarlide" "Antimycobacterials" "J04AD02" "Drugs for treatment of tuberculosis" "Thiocarbamide derivatives" "" "c(\"amixyl\", \"datanil\", \"disocarban\", \"disoxyl\", \"thiocarlide\", \"tiocarlid\", \"tiocarlida\", \"tiocarlide\", \"tiocarlidum\")" 7 "g" "character(0)"
|
||||||
"TDC" 10247721 "Tiodonium chloride" "Other antibacterials" "" "c(\"cloruro de tiodonio\", \"tiodonii chloridum\", \"tiodonium chloride\")" "character(0)"
|
"TDC" 10247721 "Tiodonium chloride" "Other antibacterials" "" "c(\"cloruro de tiodonio\", \"tiodonii chloridum\", \"tiodonium chloride\")" "character(0)"
|
||||||
"TXC" 65788 "Tioxacin" "Quinolones" "" "c(\"tioxacin\", \"tioxacine\", \"tioxacino\", \"tioxacinum\", \"tioxic acid\")" "character(0)"
|
"TXC" 65788 "Tioxacin" "Quinolones" "" "c(\"tioxacin\", \"tioxacine\", \"tioxacino\", \"tioxacinum\", \"tioxic acid\")" "character(0)"
|
||||||
"TIZ" 394397 "Tizoxanide" "Other antibacterials" "" "ntzdes" "character(0)"
|
"TIZ" 394397 "Tizoxanide" "Other antibacterials" "" "ntzdes" "character(0)"
|
||||||
"TOB" "J01GB01" 36294 "Tobramycin" "Aminoglycosides" "Aminoglycoside antibacterials" "Other aminoglycosides" "c(\"nn\", \"tm\", \"to\", \"tob\", \"tobr\")" "c(\"bethkis\", \"brulamycin\", \"deoxykanamycin b\", \"distobram\", \"gernebcin\", \"gotabiotic\", \"kitabis pak\", \"nebcin\", \"nebicin\", \"nebramycin\", \"nebramycin vi\", \"obramycin\", \"sybryx\", \"tenebrimycin\", \"tenemycin\", \"tobacin\", \"tobi podhaler\", \"tobracin\", \"tobradex\", \"tobradistin\", \"tobralex\", \"tobramaxin\", \"tobramicin\", \"tobramicina\", \"tobramitsetin\", \"tobramycetin\", \"tobramycin\", \"tobramycin base\", \"tobramycin sulfate\", \"tobramycine\", \"tobramycinum\", \"tobrased\", \"tobrasone\", \"tobrex\")" 0.24 "g" "c(\"13584-8\", \"17808-7\", \"22750-4\", \"22751-2\", \"22752-0\", \"31094-6\", \"31095-3\", \"31096-1\", \"35239-3\", \"35670-9\", \"4057-6\", \"4058-4\", \"4059-2\", \"50927-3\", \"52962-8\", \"59380-6\", \"80966-5\")"
|
"TOB" 36294 "Tobramycin" "Aminoglycosides" "c(\"J01GB01\", \"S01AA12\")" "Aminoglycoside antibacterials" "Other aminoglycosides" "c(\"nn\", \"tm\", \"to\", \"tob\", \"tobr\")" "c(\"bethkis\", \"brulamycin\", \"deoxykanamycin b\", \"distobram\", \"gernebcin\", \"gotabiotic\", \"kitabis pak\", \"nebcin\", \"nebicin\", \"nebramycin\", \"nebramycin vi\", \"obramycin\", \"sybryx\", \"tenebrimycin\", \"tenemycin\", \"tobacin\", \"tobi podhaler\", \"tobracin\", \"tobradex\", \"tobradistin\", \"tobralex\", \"tobramaxin\", \"tobramicin\", \"tobramicina\", \"tobramitsetin\", \"tobramycetin\", \"tobramycin\", \"tobramycin base\", \"tobramycin sulfate\", \"tobramycine\", \"tobramycinum\", \"tobrased\", \"tobrasone\", \"tobrex\")" 0.24 "g" "c(\"13584-8\", \"17808-7\", \"22750-4\", \"22751-2\", \"22752-0\", \"31094-6\", \"31095-3\", \"31096-1\", \"35239-3\", \"35670-9\", \"4057-6\", \"4058-4\", \"4059-2\", \"50927-3\", \"52962-8\", \"59380-6\", \"80966-5\")"
|
||||||
"TOH" "Tobramycin-high" "Aminoglycosides" "c(\"tobra high\", \"tobramycin high\", \"tohl\")" "" ""
|
"TOH" "Tobramycin-high" "Aminoglycosides" "c(\"tobra high\", \"tobramycin high\", \"tohl\")" "" ""
|
||||||
"TFX" 5517 "Tosufloxacin" "Quinolones" "" "tosufloxacin" "character(0)"
|
"TFX" 5517 "Tosufloxacin" "Quinolones" "J01MA22" "" "tosufloxacin" 0.45 "g" "character(0)"
|
||||||
"TMP" "J01EA01" 5578 "Trimethoprim" "Trimethoprims" "Sulfonamides and trimethoprim" "Trimethoprim and derivatives" "c(\"t\", \"tmp\", \"tr\", \"tri\", \"trim\", \"w\")" "c(\"abaprim\", \"alprim\", \"anitrim\", \"antrima\", \"antrimox\", \"bacdan\", \"bacidal\", \"bacide\", \"bacterial\", \"bacticel\", \"bactifor\", \"bactin\", \"bactoprim\", \"bactramin\", \"bactrim\", \"bencole\", \"bethaprim\", \"biosulten\", \"briscotrim\", \"chemotrin\", \"colizole\", \"colizole ds\", \"conprim\", \"cotrimel\", \"cotrimoxizole\", \"deprim\", \"dosulfin\", \"duocide\", \"esbesul\", \"espectrin\", \"euctrim\", \"exbesul\", \"fermagex\", \"fortrim\", \"idotrim\", \"ikaprim\", \"instalac\", \"kombinax\", \"lagatrim\", \"lagatrim forte\", \"lastrim\", \"lescot\",
|
"TMP" 5578 "Trimethoprim" "Trimethoprims" "J01EA01" "Sulfonamides and trimethoprim" "Trimethoprim and derivatives" "c(\"t\", \"tmp\", \"tr\", \"tri\", \"trim\", \"w\")" "c(\"abaprim\", \"alprim\", \"anitrim\", \"antrima\", \"antrimox\", \"bacdan\", \"bacidal\", \"bacide\", \"bacterial\", \"bacticel\", \"bactifor\", \"bactin\", \"bactoprim\", \"bactramin\", \"bactrim\", \"bencole\", \"bethaprim\", \"biosulten\", \"briscotrim\", \"chemotrin\", \"colizole\", \"colizole ds\", \"conprim\", \"cotrimel\", \"cotrimoxizole\", \"deprim\", \"dosulfin\", \"duocide\", \"esbesul\", \"espectrin\", \"euctrim\", \"exbesul\", \"fermagex\", \"fortrim\", \"idotrim\", \"ikaprim\", \"instalac\", \"kombinax\", \"lagatrim\", \"lagatrim forte\", \"lastrim\", \"lescot\",
|
||||||
\"methoprim\", \"metoprim\", \"monoprim\", \"monotrim\", \"monotrimin\", \"novotrimel\", \"omstat\", \"oraprim\", \"pancidim\", \"polytrim\", \"priloprim\", \"primosept\", \"primsol\", \"proloprim\", \"protrin\", \"purbal\", \"resprim\", \"resprim forte\", \"roubac\", \"roubal\", \"salvatrim\", \"septrin ds\", \"septrin forte\", \"septrin s\", \"setprin\", \"sinotrim\", \"stopan\", \"streptoplus\", \"sugaprim\", \"sulfamar\", \"sulfamethoprim\", \"sulfoxaprim\", \"sulthrim\", \"sultrex\", \"syraprim\", \"tiempe\", \"tmp smx\", \"toprim\", \"trimanyl\", \"trimethioprim\", \"trimethopim\",
|
\"methoprim\", \"metoprim\", \"monoprim\", \"monotrim\", \"monotrimin\", \"novotrimel\", \"omstat\", \"oraprim\", \"pancidim\", \"polytrim\", \"priloprim\", \"primosept\", \"primsol\", \"proloprim\", \"protrin\", \"purbal\", \"resprim\", \"resprim forte\", \"roubac\", \"roubal\", \"salvatrim\", \"septrin ds\", \"septrin forte\", \"septrin s\", \"setprin\", \"sinotrim\", \"stopan\", \"streptoplus\", \"sugaprim\", \"sulfamar\", \"sulfamethoprim\", \"sulfoxaprim\", \"sulthrim\", \"sultrex\", \"syraprim\", \"tiempe\", \"tmp smx\", \"toprim\", \"trimanyl\", \"trimethioprim\", \"trimethopim\",
|
||||||
\"trimethoprim\", \"trimethoprime\", \"trimethoprimum\", \"trimethopriom\", \"trimetoprim\", \"trimetoprima\", \"trimexazole\", \"trimexol\", \"trimezol\", \"trimogal\", \"trimono\", \"trimopan\", \"trimpex\", \"triprim\", \"trisul\", \"trisulcom\", \"trisulfam\", \"trisural\", \"uretrim\", \"urobactrim\", \"utetrin\", \"velaten\", \"wellcoprim\", \"wellcoprin\", \"xeroprim\", \"zamboprim\")" 0.4 "g" 0.4 "g" "c(\"11005-6\", \"17747-7\", \"25273-4\", \"32342-8\", \"4079-0\", \"4080-8\", \"4081-6\", \"55584-7\", \"80552-3\", \"80973-1\")"
|
\"trimethoprim\", \"trimethoprime\", \"trimethoprimum\", \"trimethopriom\", \"trimetoprim\", \"trimetoprima\", \"trimexazole\", \"trimexol\", \"trimezol\", \"trimogal\", \"trimono\", \"trimopan\", \"trimpex\", \"triprim\", \"trisul\", \"trisulcom\", \"trisulfam\", \"trisural\", \"uretrim\", \"urobactrim\", \"utetrin\", \"velaten\", \"wellcoprim\", \"wellcoprin\", \"xeroprim\", \"zamboprim\")" 0.4 "g" 0.4 "g" "c(\"11005-6\", \"17747-7\", \"25273-4\", \"32342-8\", \"4079-0\", \"4080-8\", \"4081-6\", \"55584-7\", \"80552-3\", \"80973-1\")"
|
||||||
"SXT" "J01EE01" 358641 "Trimethoprim/sulfamethoxazole" "Trimethoprims" "Sulfonamides and trimethoprim" "Combinations of sulfonamides and trimethoprim, incl. derivatives" "c(\"cot\", \"cotrim\", \"sxt\", \"t/s\", \"trsu\", \"trsx\", \"ts\")" "c(\"bactrim\", \"bactrimel\", \"belcomycine\", \"colimycin\", \"colimycin sulphate\", \"colisticin\", \"colistimethate\", \"colistimethate sodium\", \"colistin sulfate\", \"colistin sulphate\", \"colomycin\", \"coly-mycin\", \"cotrimazole\", \"cotrimoxazole\", \"polymyxin e\", \"polymyxin e. sulfate\", \"promixin\", \"septra\", \"totazina\")" "character(0)"
|
"SXT" 358641 "Trimethoprim/sulfamethoxazole" "Trimethoprims" "J01EE01" "Sulfonamides and trimethoprim" "Combinations of sulfonamides and trimethoprim, incl. derivatives" "c(\"cot\", \"cotrim\", \"sxt\", \"t/s\", \"trsu\", \"trsx\", \"ts\")" "c(\"bactrim\", \"bactrimel\", \"belcomycine\", \"colimycin\", \"colimycin sulphate\", \"colisticin\", \"colistimethate\", \"colistimethate sodium\", \"colistin sulfate\", \"colistin sulphate\", \"colomycin\", \"coly-mycin\", \"cotrimazole\", \"cotrimoxazole\", \"polymyxin e\", \"polymyxin e. sulfate\", \"promixin\", \"septra\", \"totazina\")" "character(0)"
|
||||||
"TRL" "J01FA08" 202225 "Troleandomycin" "Macrolides/lincosamides" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"acetyloleandomycin\", \"aovine\", \"cyclamycin\", \"evramicina\", \"matromicina\", \"matromycin t\", \"oleandocetine\", \"t.a.o.\", \"treolmicina\", \"tribiocillina\", \"triocetin\", \"triolan\", \"troleandomicina\", \"troleandomycin\", \"troleandomycine\", \"troleandomycinum\", \"viamicina\", \"wytrion\")" 1 "g" "character(0)"
|
"TRL" 202225 "Troleandomycin" "Macrolides/lincosamides" "J01FA08" "Macrolides, lincosamides and streptogramins" "Macrolides" "" "c(\"acetyloleandomycin\", \"aovine\", \"cyclamycin\", \"evramicina\", \"matromicina\", \"matromycin t\", \"oleandocetine\", \"t.a.o.\", \"treolmicina\", \"tribiocillina\", \"triocetin\", \"triolan\", \"troleandomicina\", \"troleandomycin\", \"troleandomycine\", \"troleandomycinum\", \"viamicina\", \"wytrion\")" 1 "g" "character(0)"
|
||||||
"TRO" 55886 "Trospectomycin" "Other antibacterials" "" "c(\"trospectinomycin\", \"trospectomicina\", \"trospectomycin\", \"trospectomycine\", \"trospectomycinum\")" "character(0)"
|
"TRO" 55886 "Trospectomycin" "Other antibacterials" "" "c(\"trospectinomycin\", \"trospectomicina\", \"trospectomycin\", \"trospectomycine\", \"trospectomycinum\")" "character(0)"
|
||||||
"TVA" "J01MA13" 62959 "Trovafloxacin" "Quinolones" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"trov\")" "c(\"trovafloxacin\", \"trovan\")" 0.2 "g" 0.2 "g" "character(0)"
|
"TVA" 62959 "Trovafloxacin" "Quinolones" "J01MA13" "Quinolone antibacterials" "Fluoroquinolones" "c(\"\", \"trov\")" "c(\"trovafloxacin\", \"trovan\")" 0.2 "g" 0.2 "g" "character(0)"
|
||||||
"TUL" 9832301 "Tulathromycin" "Macrolides/lincosamides" "" "c(\"draxxin\", \"tulathrmycin a\", \"tulathromycin\", \"tulathromycin a\")" "character(0)"
|
"TUL" 9832301 "Tulathromycin" "Macrolides/lincosamides" "" "c(\"draxxin\", \"tulathrmycin a\", \"tulathromycin\", \"tulathromycin a\")" "character(0)"
|
||||||
"TYL" 5280440 "Tylosin" "Macrolides/lincosamides" "" "c(\"fradizine\", \"tilosina\", \"tylocine\", \"tylosin\", \"tylosin a\", \"tylosine\", \"tylosinum\")" "87587-2"
|
"TYL" 5280440 "Tylosin" "Macrolides/lincosamides" "" "c(\"fradizine\", \"tilosina\", \"tylocine\", \"tylosin\", \"tylosin a\", \"tylosine\", \"tylosinum\")" "87587-2"
|
||||||
"TYL1" "A07AA11" 6441094 "Tylvalosin" "Other antibacterials" "Intestinal antiinfectives" "Antibiotics" "" "" 0.6 "g" ""
|
"TYL1" 6441094 "Tylvalosin" "Macrolides/lincosamides" "" "" ""
|
||||||
"PRU1" 124225 "Ulifloxacin (Prulifloxacin)" "Other antibacterials" "" "ulifloxacin" "character(0)"
|
"PRU1" 124225 "Ulifloxacin (Prulifloxacin)" "Other antibacterials" "" "ulifloxacin" "character(0)"
|
||||||
"VAN" "J01XA01" 14969 "Vancomycin" "Glycopeptides" "Other antibacterials" "Glycopeptide antibacterials" "c(\"va\", \"van\", \"vanc\")" "c(\"vancocin\", \"vancocin hcl\", \"vancoled\", \"vancomicina\", \"vancomycin\", \"vancomycin hcl\", \"vancomycine\", \"vancomycinum\", \"vancor\", \"viomycin derivative\")" 2 "g" "c(\"13586-3\", \"13587-1\", \"20578-1\", \"31012-8\", \"39092-2\", \"39796-8\", \"39797-6\", \"4089-9\", \"4090-7\", \"4091-5\", \"4092-3\", \"50938-0\", \"59381-4\")"
|
"VAN" 14969 "Vancomycin" "Glycopeptides" "c(\"A07AA09\", \"J01XA01\", \"S01AA28\")" "Other antibacterials" "Glycopeptide antibacterials" "c(\"va\", \"van\", \"vanc\")" "c(\"vancocin\", \"vancocin hcl\", \"vancoled\", \"vancomicina\", \"vancomycin\", \"vancomycin hcl\", \"vancomycine\", \"vancomycinum\", \"vancor\", \"viomycin derivative\")" 2 "g" 2 "g" "c(\"13586-3\", \"13587-1\", \"20578-1\", \"31012-8\", \"39092-2\", \"39796-8\", \"39797-6\", \"4089-9\", \"4090-7\", \"4091-5\", \"4092-3\", \"50938-0\", \"59381-4\")"
|
||||||
"VAM" "Vancomycin-macromethod" "Glycopeptides" "" "" ""
|
"VAM" "Vancomycin-macromethod" "Glycopeptides" "" "" ""
|
||||||
"VIO" 135398671 "Viomycin" "Antimycobacterials" "" "c(\"celiomycin\", \"florimycin\", \"floromycin\", \"viomicina\", \"viomycin\", \"viomycine\", \"viomycinum\")" "character(0)"
|
"VIO" 135398671 "Viomycin" "Antimycobacterials" "" "c(\"celiomycin\", \"florimycin\", \"floromycin\", \"viomicina\", \"viomycin\", \"viomycine\", \"viomycinum\")" "character(0)"
|
||||||
"VIR" 11979535 "Virginiamycine" "Other antibacterials" "" "c(\"eskalin v\", \"mikamycin\", \"mikamycine\", \"mikamycinum\", \"ostreogrycinum\", \"pristinamycine\", \"pristinamycinum\", \"stafac\", \"stafytracine\", \"staphylomycin\", \"starfac\", \"streptogramin\", \"vernamycin\", \"virgimycin\", \"virgimycine\", \"virginiamycina\", \"virginiamycine\", \"virginiamycinum\")" "character(0)"
|
"VIR" 11979535 "Virginiamycine" "Other antibacterials" "" "c(\"eskalin v\", \"mikamycin\", \"mikamycine\", \"mikamycinum\", \"ostreogrycinum\", \"pristinamycine\", \"pristinamycinum\", \"stafac\", \"stafytracine\", \"staphylomycin\", \"starfac\", \"streptogramin\", \"vernamycin\", \"virgimycin\", \"virgimycine\", \"virginiamycina\", \"virginiamycine\", \"virginiamycinum\")" "character(0)"
|
||||||
"VOR" "J02AC03" 71616 "Voriconazole" "Antifungals/antimycotics" "Antimycotics for systemic use" "Triazole derivatives" "c(\"vori\", \"vrc\")" "c(\"pfizer\", \"vfend i.v.\", \"voriconazol\", \"voriconazole\", \"voriconazolum\", \"vorikonazole\")" 0.4 "g" 0.4 "g" "c(\"38370-3\", \"53902-3\", \"73676-9\", \"80553-1\", \"80651-3\")"
|
"VOR" 71616 "Voriconazole" "Antifungals/antimycotics" "J02AC03" "Antimycotics for systemic use" "Triazole derivatives" "c(\"vori\", \"vrc\")" "c(\"pfizer\", \"vfend i.v.\", \"voriconazol\", \"voriconazole\", \"voriconazolum\", \"vorikonazole\")" 0.4 "g" 0.4 "g" "c(\"38370-3\", \"53902-3\", \"73676-9\", \"80553-1\", \"80651-3\")"
|
||||||
"XBR" "J01XX02" 72144 "Xibornol" "Other antibacterials" "Other antibacterials" "Other antibacterials" "" "c(\"bactacine\", \"bracen\", \"nanbacine\", \"xibornol\", \"xibornolo\", \"xibornolum\")" "character(0)"
|
"XBR" 72144 "Xibornol" "Other antibacterials" "J01XX02" "Other antibacterials" "Other antibacterials" "" "c(\"bactacine\", \"bracen\", \"nanbacine\", \"xibornol\", \"xibornolo\", \"xibornolum\")" "character(0)"
|
||||||
"ZID" 77846445 "Zidebactam" "Other antibacterials" "" "zidebactam" "character(0)"
|
"ZID" 77846445 "Zidebactam" "Other antibacterials" "" "zidebactam" "character(0)"
|
||||||
|
|||||||
@@ -0,0 +1,28 @@
|
|||||||
|
library(dplyr)
|
||||||
|
example_isolates %>%
|
||||||
|
select(mo, where(is.rsi)) %>%
|
||||||
|
tidyr::pivot_longer(cols = where(is.rsi)) %>%
|
||||||
|
# remove intrisic R
|
||||||
|
filter(!paste(mo, name) %in% AMR:::INTRINSIC_R) %>%
|
||||||
|
mutate(name = as.ab(name),
|
||||||
|
value = ifelse(value == "R", 1, 0),
|
||||||
|
class = ab_group(name)) %>%
|
||||||
|
group_by(mo, class) %>%
|
||||||
|
summarise(n = n(),
|
||||||
|
res = mean(value, na.rm = TRUE)) %>%
|
||||||
|
filter(n > 30, !is.na(res))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
df <- example_isolates
|
||||||
|
search_mo <- "B_ESCHR_COLI"
|
||||||
|
intrinsic_res <- INTRINSIC_R[INTRINSIC_R %like% search_mo]
|
||||||
|
intrinsic_res <- gsub(".* (.*)", "\\1", intrinsic_res)
|
||||||
|
|
||||||
|
x <- df %>%
|
||||||
|
select(mo, where(is.rsi)) %>%
|
||||||
|
filter(mo == search_mo) %>%
|
||||||
|
# at least 30 results available
|
||||||
|
select(function(x) sum(!is.na(x)) >= 30) %>%
|
||||||
|
# remove intrisic R
|
||||||
|
select(!matches(paste(intrinsic_res, collapse = "|")))
|
||||||
@@ -118,7 +118,7 @@ read_EUCAST <- function(sheet, file, guideline_name) {
|
|||||||
seq(from = 41, to = 49, by = 1),
|
seq(from = 41, to = 49, by = 1),
|
||||||
seq(from = 81, to = 89, by = 1))
|
seq(from = 81, to = 89, by = 1))
|
||||||
has_superscript <- function(x) {
|
has_superscript <- function(x) {
|
||||||
# because due to floating point error 0.1252 is not in:
|
# because due to floating point error, 0.1252 is not in:
|
||||||
# seq(from = 0.1251, to = 0.1259, by = 0.0001)
|
# seq(from = 0.1251, to = 0.1259, by = 0.0001)
|
||||||
sapply(x, function(x) any(near(x, MICs_with_trailing_superscript)))
|
sapply(x, function(x) any(near(x, MICs_with_trailing_superscript)))
|
||||||
}
|
}
|
||||||
@@ -242,3 +242,21 @@ for (i in 2:length(sheets_to_analyse)) {
|
|||||||
guideline_name = guideline_name))
|
guideline_name = guideline_name))
|
||||||
, error = function(e) message(e$message))
|
, error = function(e) message(e$message))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# 2021-07-12 fix for Morganellaceae (check other lines too next time)
|
||||||
|
morg <- rsi_translation %>%
|
||||||
|
as_tibble() %>%
|
||||||
|
filter(ab == "IPM",
|
||||||
|
guideline == "EUCAST 2021",
|
||||||
|
mo == as.mo("Enterobacterales")) %>%
|
||||||
|
mutate(mo = as.mo("Morganellaceae"))
|
||||||
|
morg[which(morg$method == "MIC"), "breakpoint_S"] <- 0.001
|
||||||
|
morg[which(morg$method == "MIC"), "breakpoint_R"] <- 4
|
||||||
|
morg[which(morg$method == "DISK"), "breakpoint_S"] <- 50
|
||||||
|
morg[which(morg$method == "DISK"), "breakpoint_R"] <- 19
|
||||||
|
|
||||||
|
rsi_translation <- rsi_translation %>%
|
||||||
|
bind_rows(morg) %>%
|
||||||
|
bind_rows(morg %>%
|
||||||
|
mutate(guideline = "EUCAST 2020")) %>%
|
||||||
|
arrange(desc(guideline), ab, mo, method)
|
||||||
|
|||||||
@@ -646,28 +646,104 @@ antibiotics <- antibiotics %>%
|
|||||||
oral_ddd = NA_real_))
|
oral_ddd = NA_real_))
|
||||||
|
|
||||||
|
|
||||||
# update DDDs from WHOCC website
|
|
||||||
ddd_oral <- double(length = nrow(antibiotics))
|
# update ATC codes from WHOCC website -------------------------------------
|
||||||
ddd_iv <- double(length = nrow(antibiotics))
|
|
||||||
|
# last time checked: 2021-08-16
|
||||||
|
|
||||||
|
updated_atc <- as.list(antibiotics$atc)
|
||||||
|
|
||||||
|
get_atcs <- function(ab_name, url = "https://www.whocc.no/atc_ddd_index/") {
|
||||||
|
|
||||||
|
ab_name <- gsub("/", " and ", tolower(ab_name), fixed = TRUE)
|
||||||
|
|
||||||
|
# we will do a search on their website, which means:
|
||||||
|
|
||||||
|
# go to the url
|
||||||
|
atc_tbl <- read_html(url) %>%
|
||||||
|
# get all forms
|
||||||
|
html_form() %>%
|
||||||
|
# get the second form (the first form is a global website form)
|
||||||
|
.[[2]] %>%
|
||||||
|
# set the name input box to our search parameter
|
||||||
|
html_form_set(name = ab_name) %>%
|
||||||
|
# hit Submit
|
||||||
|
html_form_submit() %>%
|
||||||
|
# read the resulting page
|
||||||
|
read_html() %>%
|
||||||
|
# retrieve the table on it
|
||||||
|
html_node("table") %>%
|
||||||
|
# transform it to an R data set
|
||||||
|
html_table(header = FALSE)
|
||||||
|
# and get the ATCs (first column) of only exact hits
|
||||||
|
unique(as.character(atc_tbl[which(tolower(atc_tbl[, 2, drop = TRUE]) == ab_name), 1, drop = TRUE]))
|
||||||
|
}
|
||||||
|
|
||||||
|
# this takes around 4 minutes (some are skipped and go faster)
|
||||||
|
for (i in seq_len(nrow(antibiotics))) {
|
||||||
|
message(percentage(i / nrow(antibiotics), digits = 1),
|
||||||
|
" - Downloading ", antibiotics$name[i],
|
||||||
|
appendLF = FALSE)
|
||||||
|
atcs <- get_atcs(antibiotics$name[i])
|
||||||
|
if (length(atcs) > 0) {
|
||||||
|
updated_atc[[i]] <- atcs
|
||||||
|
message(" (", length(atcs), " results)")
|
||||||
|
# let the WHO server rest for a second - they might have a limitation on the queries per second
|
||||||
|
Sys.sleep(1)
|
||||||
|
} else {
|
||||||
|
message(" (skipping)")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
antibiotics$atc <- updated_atc
|
||||||
|
|
||||||
|
# update DDDs from WHOCC website ------------------------------------------
|
||||||
|
|
||||||
|
# last time checked: 2021-08-19
|
||||||
|
ddd_oral <- rep(NA_real_, nrow(antibiotics))
|
||||||
|
ddd_oral_units <- rep(NA_character_, nrow(antibiotics))
|
||||||
|
ddd_iv <- rep(NA_real_, nrow(antibiotics))
|
||||||
|
ddd_iv_units <- rep(NA_character_, nrow(antibiotics))
|
||||||
progress <- progress_ticker(nrow(antibiotics))
|
progress <- progress_ticker(nrow(antibiotics))
|
||||||
for (i in seq_len(nrow(antibiotics))) {
|
for (i in seq_len(nrow(antibiotics))) {
|
||||||
on.exit(close(progress))
|
on.exit(close(progress))
|
||||||
progress$tick()
|
progress$tick()
|
||||||
if (!is.na(antibiotics$atc[i])) {
|
atcs <- antibiotics$atc[[i]]
|
||||||
ddd_oral[i] <- atc_online_ddd(antibiotics$atc[i], administration = "O")
|
if (!all(is.na(atcs))) {
|
||||||
ddd_iv[i] <- atc_online_ddd(antibiotics$atc[i], administration = "P") # parenteral
|
for (j in seq_len(length(atcs))) {
|
||||||
Sys.sleep(1)
|
# oral
|
||||||
|
if (is.na(ddd_oral[i])) {
|
||||||
|
ddd_oral[i] <- atc_online_ddd(atcs[j], administration = "O")
|
||||||
|
if (!is.na(ddd_oral[i])) {
|
||||||
|
ddd_oral_units[i] <- atc_online_ddd_units(atcs[j], administration = "O")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
# parenteral
|
||||||
|
if (is.na(ddd_iv[i])) {
|
||||||
|
ddd_iv[i] <- atc_online_ddd(atcs[j], administration = "P")
|
||||||
|
if (!is.na(ddd_iv[i])) {
|
||||||
|
ddd_iv_units[i] <- atc_online_ddd_units(atcs[j], administration = "P")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!is.na(ddd_oral[i]) | !is.na(ddd_iv[i])) {
|
||||||
|
# let the WHO server rest for 0.25 second - they might have a limitation on the queries per second
|
||||||
|
Sys.sleep(0.25)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ddd_oral[ddd_oral == 0] <- NA_real_
|
|
||||||
ddd_iv[ddd_iv == 0] <- NA_real_
|
|
||||||
antibiotics$oral_ddd <- ddd_oral
|
antibiotics$oral_ddd <- ddd_oral
|
||||||
|
antibiotics$oral_units <- ddd_oral_units
|
||||||
antibiotics$iv_ddd <- ddd_iv
|
antibiotics$iv_ddd <- ddd_iv
|
||||||
|
antibiotics$iv_units <- ddd_iv_units
|
||||||
|
|
||||||
|
# Wrap up -----------------------------------------------------------------
|
||||||
|
|
||||||
# set as data.frame again
|
# set as data.frame again
|
||||||
antibiotics <- as.data.frame(antibiotics, stringsAsFactors = FALSE)
|
antibiotics <- as.data.frame(antibiotics, stringsAsFactors = FALSE)
|
||||||
class(antibiotics$ab) <- c("ab", "character")
|
class(antibiotics$ab) <- c("ab", "character")
|
||||||
antibiotics <- antibiotics %>% dplyr::arrange(name)
|
antibiotics <- dplyr::arrange(antibiotics, name)
|
||||||
|
|
||||||
# make all abbreviations and synonyms lower case, unique and alphabetically sorted ----
|
# make all abbreviations and synonyms lower case, unique and alphabetically sorted ----
|
||||||
for (i in 1:nrow(antibiotics)) {
|
for (i in 1:nrow(antibiotics)) {
|
||||||
@@ -683,5 +759,5 @@ for (i in 1:nrow(antibiotics)) {
|
|||||||
|
|
||||||
# REFER TO data-raw/loinc.R FOR ADDING LOINC CODES
|
# REFER TO data-raw/loinc.R FOR ADDING LOINC CODES
|
||||||
|
|
||||||
usethis::use_data(antibiotics, overwrite = TRUE, version = 2)
|
usethis::use_data(antibiotics, overwrite = TRUE, version = 2, compress = "xz")
|
||||||
rm(antibiotics)
|
rm(antibiotics)
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ for (i in seq_len(nrow(antibiotics))) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
int_resis <- eucast_rules(int_resis,
|
int_resis <- eucast_rules(int_resis,
|
||||||
eucast_rules_df = subset(AMR:::eucast_rules_file,
|
eucast_rules_df = subset(AMR:::EUCAST_RULES_DF,
|
||||||
is.na(have_these_values) & reference.version == 3.2),
|
is.na(have_these_values) & reference.version == 3.2),
|
||||||
info = FALSE)
|
info = FALSE)
|
||||||
|
|
||||||
|
|||||||
@@ -872,12 +872,12 @@ View(old_new)
|
|||||||
# set new MO codes as names to existing data sets
|
# set new MO codes as names to existing data sets
|
||||||
rsi_translation$mo <- mo_name(rsi_translation$mo, language = NULL)
|
rsi_translation$mo <- mo_name(rsi_translation$mo, language = NULL)
|
||||||
microorganisms.codes$mo <- mo_name(microorganisms.codes$mo, language = NULL)
|
microorganisms.codes$mo <- mo_name(microorganisms.codes$mo, language = NULL)
|
||||||
microorganisms.translation <- AMR:::microorganisms.translation %>%
|
# microorganisms.translation <- AMR:::microorganisms.translation %>%
|
||||||
bind_rows(tibble(mo_old = AMR:::microorganisms.translation$mo_new, mo_new = mo_old)) %>%
|
# bind_rows(tibble(mo_old = AMR:::microorganisms.translation$mo_new, mo_new = mo_old)) %>%
|
||||||
filter(!mo_old %in% MOs$mo) %>%
|
# filter(!mo_old %in% MOs$mo) %>%
|
||||||
mutate(mo_new = mo_name(mo_new, language = NULL)) %>%
|
# mutate(mo_new = mo_name(mo_new, language = NULL)) %>%
|
||||||
bind_rows(old_new %>% select(mo_old, mo_new)) %>%
|
# bind_rows(old_new %>% select(mo_old, mo_new)) %>%
|
||||||
distinct(mo_old, .keep_all = TRUE)
|
# distinct(mo_old, .keep_all = TRUE)
|
||||||
|
|
||||||
# arrange the data sets to save
|
# arrange the data sets to save
|
||||||
MOs <- MOs %>% arrange(fullname)
|
MOs <- MOs %>% arrange(fullname)
|
||||||
@@ -911,23 +911,23 @@ devtools::load_all(".")
|
|||||||
rsi_translation$mo <- as.mo(rsi_translation$mo)
|
rsi_translation$mo <- as.mo(rsi_translation$mo)
|
||||||
microorganisms.codes$mo <- as.mo(microorganisms.codes$mo)
|
microorganisms.codes$mo <- as.mo(microorganisms.codes$mo)
|
||||||
class(microorganisms.codes$mo) <- c("mo", "character")
|
class(microorganisms.codes$mo) <- c("mo", "character")
|
||||||
microorganisms.translation <- microorganisms.translation %>%
|
# microorganisms.translation <- microorganisms.translation %>%
|
||||||
# (to do: add last package version to column pkg_version)
|
# # (to do: add last package version to column pkg_version)
|
||||||
left_join(microorganisms.old[, c("fullname", "fullname_new")], # microorganisms.old is now new and loaded
|
# left_join(microorganisms.old[, c("fullname", "fullname_new")], # microorganisms.old is now new and loaded
|
||||||
by = c("mo_new" = "fullname")) %>%
|
# by = c("mo_new" = "fullname")) %>%
|
||||||
mutate(name = ifelse(!is.na(fullname_new), fullname_new, mo_new)) %>%
|
# mutate(name = ifelse(!is.na(fullname_new), fullname_new, mo_new)) %>%
|
||||||
left_join(microorganisms[, c("fullname", "mo")], # as is microorganisms
|
# left_join(microorganisms[, c("fullname", "mo")], # as is microorganisms
|
||||||
by = c("name" = "fullname")) %>%
|
# by = c("name" = "fullname")) %>%
|
||||||
select(mo_old, mo_new = mo) %>%
|
# select(mo_old, mo_new = mo) %>%
|
||||||
filter(!is.na(mo_old), !is.na(mo_new))
|
# filter(!is.na(mo_old), !is.na(mo_new))
|
||||||
class(microorganisms.translation$mo_old) <- "character" # no class <mo> since those aren't valid MO codes
|
# class(microorganisms.translation$mo_old) <- "character" # no class <mo> since those aren't valid MO codes
|
||||||
class(microorganisms.translation$mo_new) <- c("mo", "character")
|
# class(microorganisms.translation$mo_new) <- c("mo", "character")
|
||||||
# save those to the package
|
# save those to the package
|
||||||
usethis::use_data(rsi_translation, overwrite = TRUE, version = 2)
|
usethis::use_data(rsi_translation, overwrite = TRUE, version = 2)
|
||||||
usethis::use_data(microorganisms.codes, overwrite = TRUE, version = 2)
|
usethis::use_data(microorganisms.codes, overwrite = TRUE, version = 2)
|
||||||
saveRDS(microorganisms.translation, file = "data-raw/microorganisms.translation.rds", version = 2)
|
# saveRDS(microorganisms.translation, file = "data-raw/microorganisms.translation.rds", version = 2)
|
||||||
# to save microorganisms.translation internally to the package
|
# to save microorganisms.translation internally to the package
|
||||||
source("data-raw/_internals.R")
|
# source("data-raw/_internals.R")
|
||||||
|
|
||||||
# load new data sets again
|
# load new data sets again
|
||||||
devtools::load_all(".")
|
devtools::load_all(".")
|
||||||
@@ -935,7 +935,7 @@ devtools::load_all(".")
|
|||||||
# and check: these codes should not be missing (will otherwise throw a unit test error):
|
# and check: these codes should not be missing (will otherwise throw a unit test error):
|
||||||
AMR::microorganisms.codes %>% filter(!mo %in% MOs$mo)
|
AMR::microorganisms.codes %>% filter(!mo %in% MOs$mo)
|
||||||
AMR::rsi_translation %>% filter(!mo %in% MOs$mo)
|
AMR::rsi_translation %>% filter(!mo %in% MOs$mo)
|
||||||
AMR:::microorganisms.translation %>% filter(!mo_new %in% MOs$mo)
|
# AMR:::microorganisms.translation %>% filter(!mo_new %in% MOs$mo)
|
||||||
|
|
||||||
# update the example_isolates data set
|
# update the example_isolates data set
|
||||||
example_isolates$mo <- as.mo(example_isolates$mo)
|
example_isolates$mo <- as.mo(example_isolates$mo)
|
||||||
|
|||||||
@@ -380,37 +380,37 @@ MOs.old <- microorganisms.old %>%
|
|||||||
# Keep old codes for translation ------------------------------------------
|
# Keep old codes for translation ------------------------------------------
|
||||||
|
|
||||||
# add removed microbial IDs to the internal translation table so old package versions keep working
|
# add removed microbial IDs to the internal translation table so old package versions keep working
|
||||||
MOs.translation <- microorganisms %>%
|
# MOs.translation <- microorganisms %>%
|
||||||
filter(!mo %in% MOs$mo) %>%
|
# filter(!mo %in% MOs$mo) %>%
|
||||||
select(mo, fullname) %>%
|
# select(mo, fullname) %>%
|
||||||
left_join(new_synonyms) %>%
|
# left_join(new_synonyms) %>%
|
||||||
left_join(MOs %>% transmute(fullname_new = fullname, mo2 = as.character(mo))) %>%
|
# left_join(MOs %>% transmute(fullname_new = fullname, mo2 = as.character(mo))) %>%
|
||||||
select(mo_old = mo, mo_new = mo2) %>%
|
# select(mo_old = mo, mo_new = mo2) %>%
|
||||||
distinct()
|
# distinct()
|
||||||
MOs.translation <- AMR:::microorganisms.translation %>%
|
# MOs.translation <- AMR:::microorganisms.translation %>%
|
||||||
left_join(MOs.translation %>% select(mo_new_update = mo_new, mo_new = mo_old)) %>%
|
# left_join(MOs.translation %>% select(mo_new_update = mo_new, mo_new = mo_old)) %>%
|
||||||
mutate(mo_new = as.character(ifelse(!is.na(mo_new_update), mo_new_update, mo_new))) %>%
|
# mutate(mo_new = as.character(ifelse(!is.na(mo_new_update), mo_new_update, mo_new))) %>%
|
||||||
select(-mo_new_update) %>%
|
# select(-mo_new_update) %>%
|
||||||
bind_rows(
|
# bind_rows(
|
||||||
# old IDs used in microorganisms.codes must put in here as well
|
# # old IDs used in microorganisms.codes must put in here as well
|
||||||
microorganisms.codes %>%
|
# microorganisms.codes %>%
|
||||||
filter(!mo %in% MOs$mo) %>%
|
# filter(!mo %in% MOs$mo) %>%
|
||||||
transmute(mo_old = mo, fullname = mo_name(mo)) %>%
|
# transmute(mo_old = mo, fullname = mo_name(mo)) %>%
|
||||||
left_join(MOs.old %>%
|
# left_join(MOs.old %>%
|
||||||
select(fullname, fullname_new)) %>%
|
# select(fullname, fullname_new)) %>%
|
||||||
left_join(MOs %>%
|
# left_join(MOs %>%
|
||||||
select(mo_new = mo, fullname_new = fullname)) %>%
|
# select(mo_new = mo, fullname_new = fullname)) %>%
|
||||||
transmute(mo_old = as.character(mo_old), mo_new)) %>%
|
# transmute(mo_old = as.character(mo_old), mo_new)) %>%
|
||||||
arrange(mo_old) %>%
|
# arrange(mo_old) %>%
|
||||||
filter(mo_old != mo_new,
|
# filter(mo_old != mo_new,
|
||||||
!mo_old %in% MOs$mo) %>%
|
# !mo_old %in% MOs$mo) %>%
|
||||||
left_join(., .,
|
# left_join(., .,
|
||||||
by = c("mo_new" = "mo_old"),
|
# by = c("mo_new" = "mo_old"),
|
||||||
suffix = c("", ".2")) %>%
|
# suffix = c("", ".2")) %>%
|
||||||
mutate(mo_new = ifelse(!is.na(mo_new.2), mo_new.2, mo_new)) %>%
|
# mutate(mo_new = ifelse(!is.na(mo_new.2), mo_new.2, mo_new)) %>%
|
||||||
distinct(mo_old, mo_new) %>%
|
# distinct(mo_old, mo_new) %>%
|
||||||
# clean up
|
# # clean up
|
||||||
df_remove_nonASCII()
|
# df_remove_nonASCII()
|
||||||
|
|
||||||
message("microorganisms new: ", sum(!MOs$fullname %in% c(microorganisms$fullname, MOs.old$fullname)))
|
message("microorganisms new: ", sum(!MOs$fullname %in% c(microorganisms$fullname, MOs.old$fullname)))
|
||||||
message("microorganisms renamed: ", sum(!MOs.old$fullname %in% microorganisms.old$fullname))
|
message("microorganisms renamed: ", sum(!MOs.old$fullname %in% microorganisms.old$fullname))
|
||||||
@@ -424,12 +424,12 @@ class(MOs.translation$mo_new) <- c("mo", "character")
|
|||||||
|
|
||||||
microorganisms <- MOs
|
microorganisms <- MOs
|
||||||
microorganisms.old <- MOs.old
|
microorganisms.old <- MOs.old
|
||||||
microorganisms.translation <- MOs.translation
|
# microorganisms.translation <- MOs.translation
|
||||||
|
|
||||||
# on the server, do:
|
# on the server, do:
|
||||||
usethis::use_data(microorganisms, overwrite = TRUE, version = 2, compress = "xz")
|
usethis::use_data(microorganisms, overwrite = TRUE, version = 2, compress = "xz")
|
||||||
usethis::use_data(microorganisms.old, overwrite = TRUE, version = 2)
|
usethis::use_data(microorganisms.old, overwrite = TRUE, version = 2)
|
||||||
saveRDS(microorganisms.translation, file = "data-raw/microorganisms.translation.rds", version = 2)
|
# saveRDS(microorganisms.translation, file = "data-raw/microorganisms.translation.rds", version = 2)
|
||||||
rm(microorganisms)
|
rm(microorganisms)
|
||||||
rm(microorganisms.old)
|
rm(microorganisms.old)
|
||||||
rm(microorganisms.translation)
|
rm(microorganisms.translation)
|
||||||
|
|||||||
@@ -2,10 +2,9 @@ library(dplyr)
|
|||||||
library(readr)
|
library(readr)
|
||||||
library(tidyr)
|
library(tidyr)
|
||||||
|
|
||||||
# Installed WHONET 2019 software on Windows (http://www.whonet.org/software.html),
|
# Installed WHONET software on Windows (http://www.whonet.org/software.html),
|
||||||
# opened C:\WHONET\Codes\WHONETCodes.mdb in MS Access
|
# imported C:\WHONET\Codes\DRGLST1.txt
|
||||||
# and exported table 'DRGLST1' to MS Excel
|
DRGLST1 <- readr::read_tsv("data-raw/DRGLST1.txt", na = c("", "NA", "-"))
|
||||||
DRGLST1 <- readxl::read_excel("data-raw/DRGLST1.xlsx", na = c("", "NA", "-"))
|
|
||||||
rsi_trans <- DRGLST1 %>%
|
rsi_trans <- DRGLST1 %>%
|
||||||
# only keep CLSI and EUCAST guidelines:
|
# only keep CLSI and EUCAST guidelines:
|
||||||
filter(GUIDELINES %like% "^(CLSI|EUCST)")
|
filter(GUIDELINES %like% "^(CLSI|EUCST)")
|
||||||
@@ -13,6 +12,9 @@ if (any(is.na(rsi_trans$BREAKPOINT_TYPE)) | !"Human" %in% rsi_trans$BREAKPOINT_T
|
|||||||
stop("Check column BREAKPOINT_TYPE - something is WRONG!")
|
stop("Check column BREAKPOINT_TYPE - something is WRONG!")
|
||||||
}
|
}
|
||||||
rsi_trans <- rsi_trans %>%
|
rsi_trans <- rsi_trans %>%
|
||||||
|
##### If looking for adding a specific guideline, do it here!
|
||||||
|
# filter(GUIDELINES == "CLSI20") %>%
|
||||||
|
#####
|
||||||
filter(BREAKPOINT_TYPE == "Human") %>%
|
filter(BREAKPOINT_TYPE == "Human") %>%
|
||||||
mutate(DISK_S = ifelse(as.double(DISK_S) > 50, 50, DISK_S),
|
mutate(DISK_S = ifelse(as.double(DISK_S) > 50, 50, DISK_S),
|
||||||
MIC_R = ifelse(as.double(MIC_R) %in% c(1025, 129, 513), as.double(MIC_R) - 1, MIC_R)) %>%
|
MIC_R = ifelse(as.double(MIC_R) %in% c(1025, 129, 513), as.double(MIC_R) - 1, MIC_R)) %>%
|
||||||
@@ -50,7 +52,7 @@ rsi_trans <- bind_rows(tbl_mic, tbl_disk) %>%
|
|||||||
select(-ends_with("_mic"), -ends_with("_disk"))
|
select(-ends_with("_mic"), -ends_with("_disk"))
|
||||||
|
|
||||||
# add extra CLSI general guidelines
|
# add extra CLSI general guidelines
|
||||||
clsi_general <- read_tsv("data-raw/DRGLST.txt") %>%
|
clsi_general <- readr::read_tsv("data-raw/DRGLST.txt") %>%
|
||||||
filter(CLSI == "X") %>%
|
filter(CLSI == "X") %>%
|
||||||
select(WHON5_CODE,
|
select(WHON5_CODE,
|
||||||
disk_dose = POTENCY,
|
disk_dose = POTENCY,
|
||||||
@@ -76,13 +78,13 @@ clsi_general <- read_tsv("data-raw/DRGLST.txt") %>%
|
|||||||
|
|
||||||
|
|
||||||
# add new EUCAST with read_EUCAST.R
|
# add new EUCAST with read_EUCAST.R
|
||||||
# 2020-04-14 did that now for 2019 and 2020
|
|
||||||
|
|
||||||
|
# 2020-04-14 did that now for 2019 and 2020
|
||||||
rsi_trans <- rsi_trans %>%
|
rsi_trans <- rsi_trans %>%
|
||||||
filter(guideline != "EUCAST 2019") %>%
|
filter(guideline != "EUCAST 2019") %>%
|
||||||
bind_rows(new_EUCAST) %>%
|
bind_rows(new_EUCAST) %>%
|
||||||
bind_rows(clsi_general) %>%
|
bind_rows(clsi_general) %>%
|
||||||
mutate(uti = site %like% "(UTI|urinary)") %>%
|
mutate(uti = site %like% "(UTI|urinary|urine)") %>%
|
||||||
as.data.frame(stringsAsFactors = FALSE) %>%
|
as.data.frame(stringsAsFactors = FALSE) %>%
|
||||||
# force classes again
|
# force classes again
|
||||||
mutate(mo = as.mo(mo),
|
mutate(mo = as.mo(mo),
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
aa80f169fc2cba97f5eedc1d24ca8c03
|
67a83b234f25a303c7944222bea47d73
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ unknown genus TRUE TRUE FALSE TRUE unbekannte Gattung onbekend geslacht género
|
|||||||
unknown species TRUE TRUE FALSE TRUE unbekannte Art onbekende soort especie desconocida specie sconosciute espèce inconnue espécies desconhecida
|
unknown species TRUE TRUE FALSE TRUE unbekannte Art onbekende soort especie desconocida specie sconosciute espèce inconnue espécies desconhecida
|
||||||
unknown subspecies TRUE TRUE FALSE TRUE unbekannte Unterart onbekende ondersoort subespecie desconocida sottospecie sconosciute sous-espèce inconnue subespécies desconhecida
|
unknown subspecies TRUE TRUE FALSE TRUE unbekannte Unterart onbekende ondersoort subespecie desconocida sottospecie sconosciute sous-espèce inconnue subespécies desconhecida
|
||||||
unknown rank TRUE TRUE FALSE TRUE unbekannter Rang onbekende rang rango desconocido grado sconosciuto rang inconnu classificação desconhecido
|
unknown rank TRUE TRUE FALSE TRUE unbekannter Rang onbekende rang rango desconocido grado sconosciuto rang inconnu classificação desconhecido
|
||||||
|
group TRUE TRUE FALSE TRUE Gruppe groep grupo gruppo groupe grupo
|
||||||
CoNS FALSE TRUE FALSE TRUE KNS CNS SCN
|
CoNS FALSE TRUE FALSE TRUE KNS CNS SCN
|
||||||
CoPS FALSE TRUE FALSE TRUE KPS CPS SCP
|
CoPS FALSE TRUE FALSE TRUE KPS CPS SCP
|
||||||
Gram-negative TRUE TRUE FALSE FALSE Gramnegativ Gram-negatief Gram negativo Gram negativo Gram négatif Gram negativo
|
Gram-negative TRUE TRUE FALSE FALSE Gramnegativ Gram-negatief Gram negativo Gram negativo Gram négatif Gram negativo
|
||||||
@@ -31,8 +32,10 @@ vegetative TRUE TRUE FALSE FALSE vegetativ vegetatief vegetativo vegetativo vég
|
|||||||
([([ ]*?)Group TRUE TRUE FALSE FALSE \\1Gruppe \\1Groep \\1Grupo \\1Gruppo \\1Groupe \\1Grupo
|
([([ ]*?)Group TRUE TRUE FALSE FALSE \\1Gruppe \\1Groep \\1Grupo \\1Gruppo \\1Groupe \\1Grupo
|
||||||
no .*growth TRUE FALSE FALSE FALSE keine? .*wachstum geen .*groei no .*crecimientonon sem .*crescimento pas .*croissance sem .*crescimento
|
no .*growth TRUE FALSE FALSE FALSE keine? .*wachstum geen .*groei no .*crecimientonon sem .*crescimento pas .*croissance sem .*crescimento
|
||||||
no|not TRUE FALSE FALSE FALSE keine? geen|niet no|sin sem non sem
|
no|not TRUE FALSE FALSE FALSE keine? geen|niet no|sin sem non sem
|
||||||
Susceptible TRUE FALSE FALSE FALSE Empfindlich Gevoelig Susceptible
|
|
||||||
Intermediate TRUE FALSE FALSE FALSE Mittlere Intermediair Intermedio
|
Intermediate TRUE FALSE FALSE FALSE Mittlere Intermediair Intermedio
|
||||||
|
Susceptible, incr. exp. FALSE TRUE FALSE FALSE Empfindlich, erh Belastung Gevoelig, hoge dosis
|
||||||
|
susceptible, incr. exp. FALSE TRUE FALSE FALSE empfindlich, erh Belastung gevoelig, hoge dosis
|
||||||
|
Susceptible TRUE FALSE FALSE FALSE Empfindlich Gevoelig Susceptible
|
||||||
Incr. exposure TRUE FALSE FALSE FALSE Empfindlich, erh Belastung 'Incr. exposure' 'Incr. exposure'
|
Incr. exposure TRUE FALSE FALSE FALSE Empfindlich, erh Belastung 'Incr. exposure' 'Incr. exposure'
|
||||||
Resistant TRUE FALSE FALSE FALSE Resistent Resistent Resistente
|
Resistant TRUE FALSE FALSE FALSE Resistent Resistent Resistente
|
||||||
antibiotic TRUE TRUE FALSE FALSE Antibiotikum antibioticum antibiótico
|
antibiotic TRUE TRUE FALSE FALSE Antibiotikum antibioticum antibiótico
|
||||||
|
|||||||
|
@@ -1,76 +1,38 @@
|
|||||||
<!-- Generated by pkgdown: do not edit by hand -->
|
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<!-- Generated by pkgdown: do not edit by hand --><html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<meta charset="utf-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
|
||||||
<title>Page not found (404) • AMR (for R)</title>
|
<title>Page not found (404) • AMR (for R)</title>
|
||||||
|
<!-- favicons --><link rel="icon" type="image/png" sizes="16x16" href="https://msberends.github.io/AMR/favicon-16x16.png">
|
||||||
<!-- favicons -->
|
<link rel="icon" type="image/png" sizes="32x32" href="https://msberends.github.io/AMR/favicon-32x32.png">
|
||||||
<link rel="icon" type="image/png" sizes="16x16" href="https://msberends.github.io/AMR//favicon-16x16.png">
|
<link rel="apple-touch-icon" type="image/png" sizes="180x180" href="https://msberends.github.io/AMR/apple-touch-icon.png">
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="https://msberends.github.io/AMR//favicon-32x32.png">
|
<link rel="apple-touch-icon" type="image/png" sizes="120x120" href="https://msberends.github.io/AMR/apple-touch-icon-120x120.png">
|
||||||
<link rel="apple-touch-icon" type="image/png" sizes="180x180" href="https://msberends.github.io/AMR//apple-touch-icon.png" />
|
<link rel="apple-touch-icon" type="image/png" sizes="76x76" href="https://msberends.github.io/AMR/apple-touch-icon-76x76.png">
|
||||||
<link rel="apple-touch-icon" type="image/png" sizes="120x120" href="https://msberends.github.io/AMR//apple-touch-icon-120x120.png" />
|
<link rel="apple-touch-icon" type="image/png" sizes="60x60" href="https://msberends.github.io/AMR/apple-touch-icon-60x60.png">
|
||||||
<link rel="apple-touch-icon" type="image/png" sizes="76x76" href="https://msberends.github.io/AMR//apple-touch-icon-76x76.png" />
|
<!-- jquery --><script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script><!-- Bootstrap --><link href="https://cdnjs.cloudflare.com/ajax/libs/bootswatch/3.4.0/flatly/bootstrap.min.css" rel="stylesheet" crossorigin="anonymous">
|
||||||
<link rel="apple-touch-icon" type="image/png" sizes="60x60" href="https://msberends.github.io/AMR//apple-touch-icon-60x60.png" />
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.4.1/js/bootstrap.min.js" integrity="sha256-nuL8/2cJ5NDSSwnKD8VqreErSWHtnEP9E7AySL+1ev4=" crossorigin="anonymous"></script><!-- bootstrap-toc --><link rel="stylesheet" href="https://msberends.github.io/AMR/bootstrap-toc.css">
|
||||||
|
<script src="https://msberends.github.io/AMR/bootstrap-toc.js"></script><!-- Font Awesome icons --><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/all.min.css" integrity="sha256-mmgLkCYLUQbXn0B1SRqzHar6dCnv9oZFPEC1g1cwlkk=" crossorigin="anonymous">
|
||||||
<!-- jquery -->
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/v4-shims.min.css" integrity="sha256-wZjR52fzng1pJHwx4aV2AO3yyTOXrcDW7jBpJtTwVxw=" crossorigin="anonymous">
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
|
<!-- clipboard.js --><script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.6/clipboard.min.js" integrity="sha256-inc5kl9MA1hkeYUt+EC3BhlIgyp/2jDIyBLS6k3UxPI=" crossorigin="anonymous"></script><!-- headroom.js --><script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/headroom.min.js" integrity="sha256-AsUX4SJE1+yuDu5+mAVzJbuYNPHj/WroHuZ8Ir/CkE0=" crossorigin="anonymous"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/jQuery.headroom.min.js" integrity="sha256-ZX/yNShbjqsohH1k95liqY9Gd8uOiE1S4vZc+9KQ1K4=" crossorigin="anonymous"></script><!-- pkgdown --><link href="https://msberends.github.io/AMR/pkgdown.css" rel="stylesheet">
|
||||||
<!-- Bootstrap -->
|
<script src="https://msberends.github.io/AMR/pkgdown.js"></script><link href="https://msberends.github.io/AMR/extra.css" rel="stylesheet">
|
||||||
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootswatch/3.4.0/flatly/bootstrap.min.css" rel="stylesheet" crossorigin="anonymous" />
|
<script src="https://msberends.github.io/AMR/extra.js"></script><meta property="og:title" content="Page not found (404)">
|
||||||
|
<meta property="og:image" content="https://msberends.github.io/AMR/logo.png">
|
||||||
|
<meta name="twitter:card" content="summary_large_image">
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.4.1/js/bootstrap.min.js" integrity="sha256-nuL8/2cJ5NDSSwnKD8VqreErSWHtnEP9E7AySL+1ev4=" crossorigin="anonymous"></script>
|
<meta name="twitter:creator" content="@msberends">
|
||||||
|
<meta name="twitter:site" content="@univgroningen">
|
||||||
<!-- bootstrap-toc -->
|
<!-- mathjax --><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js" integrity="sha256-nvJJv9wWKEm88qvoQl9ekL2J+k/RWIsaSScxxlsrv8k=" crossorigin="anonymous"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/config/TeX-AMS-MML_HTMLorMML.js" integrity="sha256-84DKXVJXs0/F8OTMzX4UR909+jtl4G7SPypPavF+GfA=" crossorigin="anonymous"></script><!--[if lt IE 9]>
|
||||||
<link rel="stylesheet" href="https://msberends.github.io/AMR//bootstrap-toc.css">
|
|
||||||
<script src="https://msberends.github.io/AMR//bootstrap-toc.js"></script>
|
|
||||||
|
|
||||||
<!-- Font Awesome icons -->
|
|
||||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/all.min.css" integrity="sha256-mmgLkCYLUQbXn0B1SRqzHar6dCnv9oZFPEC1g1cwlkk=" crossorigin="anonymous" />
|
|
||||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/v4-shims.min.css" integrity="sha256-wZjR52fzng1pJHwx4aV2AO3yyTOXrcDW7jBpJtTwVxw=" crossorigin="anonymous" />
|
|
||||||
|
|
||||||
<!-- clipboard.js -->
|
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.6/clipboard.min.js" integrity="sha256-inc5kl9MA1hkeYUt+EC3BhlIgyp/2jDIyBLS6k3UxPI=" crossorigin="anonymous"></script>
|
|
||||||
|
|
||||||
<!-- headroom.js -->
|
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/headroom.min.js" integrity="sha256-AsUX4SJE1+yuDu5+mAVzJbuYNPHj/WroHuZ8Ir/CkE0=" crossorigin="anonymous"></script>
|
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/jQuery.headroom.min.js" integrity="sha256-ZX/yNShbjqsohH1k95liqY9Gd8uOiE1S4vZc+9KQ1K4=" crossorigin="anonymous"></script>
|
|
||||||
|
|
||||||
<!-- pkgdown -->
|
|
||||||
<link href="https://msberends.github.io/AMR//pkgdown.css" rel="stylesheet">
|
|
||||||
<script src="https://msberends.github.io/AMR//pkgdown.js"></script>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link href="https://msberends.github.io/AMR//extra.css" rel="stylesheet">
|
|
||||||
<script src="https://msberends.github.io/AMR//extra.js"></script>
|
|
||||||
|
|
||||||
<meta property="og:title" content="Page not found (404)" />
|
|
||||||
<meta property="og:image" content="https://msberends.github.io/AMR/logo.png" />
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- mathjax -->
|
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js" integrity="sha256-nvJJv9wWKEm88qvoQl9ekL2J+k/RWIsaSScxxlsrv8k=" crossorigin="anonymous"></script>
|
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/config/TeX-AMS-MML_HTMLorMML.js" integrity="sha256-84DKXVJXs0/F8OTMzX4UR909+jtl4G7SPypPavF+GfA=" crossorigin="anonymous"></script>
|
|
||||||
|
|
||||||
<!--[if lt IE 9]>
|
|
||||||
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
|
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
|
||||||
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
|
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
|
||||||
<![endif]-->
|
<![endif]-->
|
||||||
|
</head>
|
||||||
|
<body data-spy="scroll" data-target="#toc">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body data-spy="scroll" data-target="#toc">
|
|
||||||
<div class="container template-title-body">
|
<div class="container template-title-body">
|
||||||
<header>
|
<header><div class="navbar navbar-default navbar-fixed-top" role="navigation">
|
||||||
<div class="navbar navbar-default navbar-fixed-top" role="navigation">
|
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="navbar-header">
|
<div class="navbar-header">
|
||||||
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
|
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
|
||||||
@@ -80,102 +42,102 @@
|
|||||||
<span class="icon-bar"></span>
|
<span class="icon-bar"></span>
|
||||||
</button>
|
</button>
|
||||||
<span class="navbar-brand">
|
<span class="navbar-brand">
|
||||||
<a class="navbar-link" href="https://msberends.github.io/AMR//index.html">AMR (for R)</a>
|
<a class="navbar-link" href="https://msberends.github.io/AMR/index.html">AMR (for R)</a>
|
||||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Latest development version">1.7.0</span>
|
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Latest development version">1.7.1.9030</span>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="navbar" class="navbar-collapse collapse">
|
<div id="navbar" class="navbar-collapse collapse">
|
||||||
<ul class="nav navbar-nav">
|
<ul class="nav navbar-nav">
|
||||||
<li>
|
<li>
|
||||||
<a href="index.html">
|
<a href="https://msberends.github.io/AMR/index.html">
|
||||||
<span class="fas fa-home"></span>
|
<span class="fa fa-home"></span>
|
||||||
|
|
||||||
Home
|
Home
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="dropdown">
|
<li class="dropdown">
|
||||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
|
<a href="https://msberends.github.io/AMR/#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
|
||||||
<span class="fas fa-question-circle"></span>
|
<span class="fa fa-question-circle"></span>
|
||||||
|
|
||||||
How to
|
How to
|
||||||
|
|
||||||
<span class="caret"></span>
|
<span class="caret"></span>
|
||||||
</a>
|
</a>
|
||||||
<ul class="dropdown-menu" role="menu">
|
<ul class="dropdown-menu" role="menu">
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/AMR.html">
|
<a href="https://msberends.github.io/AMR/articles/AMR.html">
|
||||||
<span class="fas fa-directions"></span>
|
<span class="fa fa-directions"></span>
|
||||||
|
|
||||||
Conduct AMR analysis
|
Conduct AMR analysis
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/resistance_predict.html">
|
<a href="https://msberends.github.io/AMR/articles/resistance_predict.html">
|
||||||
<span class="fas fa-dice"></span>
|
<span class="fa fa-dice"></span>
|
||||||
|
|
||||||
Predict antimicrobial resistance
|
Predict antimicrobial resistance
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/datasets.html">
|
<a href="https://msberends.github.io/AMR/articles/datasets.html">
|
||||||
<span class="fas fa-database"></span>
|
<span class="fa fa-database"></span>
|
||||||
|
|
||||||
Data sets for download / own use
|
Data sets for download / own use
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/PCA.html">
|
<a href="https://msberends.github.io/AMR/articles/PCA.html">
|
||||||
<span class="fas fa-compress"></span>
|
<span class="fa fa-compress"></span>
|
||||||
|
|
||||||
Conduct principal component analysis for AMR
|
Conduct principal component analysis for AMR
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/MDR.html">
|
<a href="https://msberends.github.io/AMR/articles/MDR.html">
|
||||||
<span class="fas fa-skull-crossbones"></span>
|
<span class="fa fa-skull-crossbones"></span>
|
||||||
|
|
||||||
Determine multi-drug resistance (MDR)
|
Determine multi-drug resistance (MDR)
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/WHONET.html">
|
<a href="https://msberends.github.io/AMR/articles/WHONET.html">
|
||||||
<span class="fas fa-globe-americas"></span>
|
<span class="fa fa-globe-americas"></span>
|
||||||
|
|
||||||
Work with WHONET data
|
Work with WHONET data
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/SPSS.html">
|
<a href="https://msberends.github.io/AMR/articles/SPSS.html">
|
||||||
<span class="fas fa-file-upload"></span>
|
<span class="fa fa-file-upload"></span>
|
||||||
|
|
||||||
Import data from SPSS/SAS/Stata
|
Import data from SPSS/SAS/Stata
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/EUCAST.html">
|
<a href="https://msberends.github.io/AMR/articles/EUCAST.html">
|
||||||
<span class="fas fa-exchange-alt"></span>
|
<span class="fa fa-exchange-alt"></span>
|
||||||
|
|
||||||
Apply EUCAST rules
|
Apply EUCAST rules
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="reference/mo_property.html">
|
<a href="https://msberends.github.io/AMR/reference/mo_property.html">
|
||||||
<span class="fas fa-bug"></span>
|
<span class="fa fa-bug"></span>
|
||||||
|
|
||||||
Get properties of a microorganism
|
Get properties of a microorganism
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="reference/ab_property.html">
|
<a href="https://msberends.github.io/AMR/reference/ab_property.html">
|
||||||
<span class="fas fa-capsules"></span>
|
<span class="fa fa-capsules"></span>
|
||||||
|
|
||||||
Get properties of an antibiotic
|
Get properties of an antibiotic
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/benchmarks.html">
|
<a href="https://msberends.github.io/AMR/articles/benchmarks.html">
|
||||||
<span class="fas fa-shipping-fast"></span>
|
<span class="fa fa-shipping-fast"></span>
|
||||||
|
|
||||||
Other: benchmarks
|
Other: benchmarks
|
||||||
</a>
|
</a>
|
||||||
@@ -183,53 +145,46 @@
|
|||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="reference/index.html">
|
<a href="https://msberends.github.io/AMR/reference/index.html">
|
||||||
<span class="fas fa-book-open"></span>
|
<span class="fa fa-book-open"></span>
|
||||||
|
|
||||||
Manual
|
Manual
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="authors.html">
|
<a href="https://msberends.github.io/AMR/authors.html">
|
||||||
<span class="fas fa-users"></span>
|
<span class="fa fa-users"></span>
|
||||||
|
|
||||||
Authors
|
Authors
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="news/index.html">
|
<a href="https://msberends.github.io/AMR/news/index.html">
|
||||||
<span class="far fa-newspaper"></span>
|
<span class="far fa-newspaper"></span>
|
||||||
|
|
||||||
Changelog
|
Changelog
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<ul class="nav navbar-nav navbar-right">
|
<ul class="nav navbar-nav navbar-right">
|
||||||
<li>
|
<li>
|
||||||
<a href="https://github.com/msberends/AMR">
|
<a href="https://github.com/msberends/AMR">
|
||||||
<span class="fab fa-github"></span>
|
<span class="fab fa-github"></span>
|
||||||
|
|
||||||
Source Code
|
Source Code
|
||||||
</a>
|
</a>
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="survey.html">
|
|
||||||
<span class="fas fa-clipboard-list"></span>
|
|
||||||
|
|
||||||
Survey
|
|
||||||
</a>
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
</div>
|
||||||
</div><!--/.nav-collapse -->
|
<!--/.nav-collapse -->
|
||||||
</div><!--/.container -->
|
</div>
|
||||||
</div><!--/.navbar -->
|
<!--/.container -->
|
||||||
|
</div>
|
||||||
|
<!--/.navbar -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</header>
|
</header><div class="row">
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="contents col-md-9">
|
<div class="contents col-md-9">
|
||||||
<div class="page-header">
|
<div class="page-header">
|
||||||
<h1>Page not found (404)</h1>
|
<h1>Page not found (404)</h1>
|
||||||
@@ -240,31 +195,31 @@ Content not found. Please use links in the navbar.
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3 hidden-xs hidden-sm" id="pkgdown-sidebar">
|
<div class="col-md-3 hidden-xs hidden-sm" id="pkgdown-sidebar">
|
||||||
<nav id="toc" data-toggle="toc" class="sticky-top">
|
<nav id="toc" data-toggle="toc" class="sticky-top"><h2 data-toc-skip>Contents</h2>
|
||||||
<h2 data-toc-skip>Contents</h2>
|
|
||||||
</nav>
|
</nav>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<footer>
|
<footer><div class="copyright">
|
||||||
<div class="copyright">
|
<p></p>
|
||||||
<p>Developed by <a href='https://www.rug.nl/staff/m.s.berends/'>Matthijs S. Berends</a>, <a href='https://www.rug.nl/staff/c.f.luz/'>Christian F. Luz</a>, <a href='https://www.rug.nl/staff/a.w.friedrich/'>Alexander W. Friedrich</a>, <a href='https://www.rug.nl/staff/b.sinha/'>Bhanu N. M. Sinha</a>, <a href='https://www.rug.nl/staff/c.j.albers/'>Casper J. Albers</a>, <a href='https://www.rug.nl/staff/c.glasner/'>Corinna Glasner</a>.</p>
|
<p>Developed by <a href="https://www.rug.nl/staff/m.s.berends/" class="external-link">Matthijs S. Berends</a>, <a href="https://www.rug.nl/staff/c.f.luz/" class="external-link">Christian F. Luz</a>, <a href="https://www.rug.nl/staff/a.w.friedrich/" class="external-link">Alexander W. Friedrich</a>, <a href="https://www.rug.nl/staff/b.sinha/" class="external-link">Bhanu N. M. Sinha</a>, <a href="https://www.rug.nl/staff/c.j.albers/" class="external-link">Casper J. Albers</a>, <a href="https://www.rug.nl/staff/c.glasner/" class="external-link">Corinna Glasner</a>.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="pkgdown">
|
<div class="pkgdown">
|
||||||
<p>Site built with <a href="https://pkgdown.r-lib.org/">pkgdown</a> 1.6.1.</p>
|
<p></p>
|
||||||
|
<p>Site built with <a href="https://pkgdown.r-lib.org/" class="external-link">pkgdown</a> 1.6.1.9001.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</footer>
|
</footer>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -50,6 +50,11 @@
|
|||||||
|
|
||||||
<meta property="og:title" content="License" />
|
<meta property="og:title" content="License" />
|
||||||
<meta property="og:image" content="https://msberends.github.io/AMR/logo.png" />
|
<meta property="og:image" content="https://msberends.github.io/AMR/logo.png" />
|
||||||
|
<meta name="twitter:card" content="summary_large_image" />
|
||||||
|
<meta name="twitter:creator" content="@msberends" />
|
||||||
|
<meta name="twitter:site" content="@univgroningen" />
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -65,9 +70,15 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body data-spy="scroll" data-target="#toc">
|
<body data-spy="scroll" data-target="#toc">
|
||||||
|
|
||||||
|
|
||||||
<div class="container template-title-body">
|
<div class="container template-title-body">
|
||||||
<header>
|
<header>
|
||||||
<div class="navbar navbar-default navbar-fixed-top" role="navigation">
|
<div class="navbar navbar-default navbar-fixed-top" role="navigation">
|
||||||
@@ -81,7 +92,7 @@
|
|||||||
</button>
|
</button>
|
||||||
<span class="navbar-brand">
|
<span class="navbar-brand">
|
||||||
<a class="navbar-link" href="index.html">AMR (for R)</a>
|
<a class="navbar-link" href="index.html">AMR (for R)</a>
|
||||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Latest development version">1.7.0</span>
|
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Latest development version">1.7.1.9033</span>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -89,14 +100,14 @@
|
|||||||
<ul class="nav navbar-nav">
|
<ul class="nav navbar-nav">
|
||||||
<li>
|
<li>
|
||||||
<a href="index.html">
|
<a href="index.html">
|
||||||
<span class="fas fa-home"></span>
|
<span class="fa fa-home"></span>
|
||||||
|
|
||||||
Home
|
Home
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="dropdown">
|
<li class="dropdown">
|
||||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
|
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
|
||||||
<span class="fas fa-question-circle"></span>
|
<span class="fa fa-question-circle"></span>
|
||||||
|
|
||||||
How to
|
How to
|
||||||
|
|
||||||
@@ -105,77 +116,77 @@
|
|||||||
<ul class="dropdown-menu" role="menu">
|
<ul class="dropdown-menu" role="menu">
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/AMR.html">
|
<a href="articles/AMR.html">
|
||||||
<span class="fas fa-directions"></span>
|
<span class="fa fa-directions"></span>
|
||||||
|
|
||||||
Conduct AMR analysis
|
Conduct AMR analysis
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/resistance_predict.html">
|
<a href="articles/resistance_predict.html">
|
||||||
<span class="fas fa-dice"></span>
|
<span class="fa fa-dice"></span>
|
||||||
|
|
||||||
Predict antimicrobial resistance
|
Predict antimicrobial resistance
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/datasets.html">
|
<a href="articles/datasets.html">
|
||||||
<span class="fas fa-database"></span>
|
<span class="fa fa-database"></span>
|
||||||
|
|
||||||
Data sets for download / own use
|
Data sets for download / own use
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/PCA.html">
|
<a href="articles/PCA.html">
|
||||||
<span class="fas fa-compress"></span>
|
<span class="fa fa-compress"></span>
|
||||||
|
|
||||||
Conduct principal component analysis for AMR
|
Conduct principal component analysis for AMR
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/MDR.html">
|
<a href="articles/MDR.html">
|
||||||
<span class="fas fa-skull-crossbones"></span>
|
<span class="fa fa-skull-crossbones"></span>
|
||||||
|
|
||||||
Determine multi-drug resistance (MDR)
|
Determine multi-drug resistance (MDR)
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/WHONET.html">
|
<a href="articles/WHONET.html">
|
||||||
<span class="fas fa-globe-americas"></span>
|
<span class="fa fa-globe-americas"></span>
|
||||||
|
|
||||||
Work with WHONET data
|
Work with WHONET data
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/SPSS.html">
|
<a href="articles/SPSS.html">
|
||||||
<span class="fas fa-file-upload"></span>
|
<span class="fa fa-file-upload"></span>
|
||||||
|
|
||||||
Import data from SPSS/SAS/Stata
|
Import data from SPSS/SAS/Stata
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/EUCAST.html">
|
<a href="articles/EUCAST.html">
|
||||||
<span class="fas fa-exchange-alt"></span>
|
<span class="fa fa-exchange-alt"></span>
|
||||||
|
|
||||||
Apply EUCAST rules
|
Apply EUCAST rules
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="reference/mo_property.html">
|
<a href="reference/mo_property.html">
|
||||||
<span class="fas fa-bug"></span>
|
<span class="fa fa-bug"></span>
|
||||||
|
|
||||||
Get properties of a microorganism
|
Get properties of a microorganism
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="reference/ab_property.html">
|
<a href="reference/ab_property.html">
|
||||||
<span class="fas fa-capsules"></span>
|
<span class="fa fa-capsules"></span>
|
||||||
|
|
||||||
Get properties of an antibiotic
|
Get properties of an antibiotic
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="articles/benchmarks.html">
|
<a href="articles/benchmarks.html">
|
||||||
<span class="fas fa-shipping-fast"></span>
|
<span class="fa fa-shipping-fast"></span>
|
||||||
|
|
||||||
Other: benchmarks
|
Other: benchmarks
|
||||||
</a>
|
</a>
|
||||||
@@ -184,14 +195,14 @@
|
|||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="reference/index.html">
|
<a href="reference/index.html">
|
||||||
<span class="fas fa-book-open"></span>
|
<span class="fa fa-book-open"></span>
|
||||||
|
|
||||||
Manual
|
Manual
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="authors.html">
|
<a href="authors.html">
|
||||||
<span class="fas fa-users"></span>
|
<span class="fa fa-users"></span>
|
||||||
|
|
||||||
Authors
|
Authors
|
||||||
</a>
|
</a>
|
||||||
@@ -211,13 +222,6 @@
|
|||||||
|
|
||||||
Source Code
|
Source Code
|
||||||
</a>
|
</a>
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="survey.html">
|
|
||||||
<span class="fas fa-clipboard-list"></span>
|
|
||||||
|
|
||||||
Survey
|
|
||||||
</a>
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
@@ -499,11 +503,11 @@ END OF TERMS AND CONDITIONS
|
|||||||
|
|
||||||
<footer>
|
<footer>
|
||||||
<div class="copyright">
|
<div class="copyright">
|
||||||
<p>Developed by <a href='https://www.rug.nl/staff/m.s.berends/'>Matthijs S. Berends</a>, <a href='https://www.rug.nl/staff/c.f.luz/'>Christian F. Luz</a>, <a href='https://www.rug.nl/staff/a.w.friedrich/'>Alexander W. Friedrich</a>, <a href='https://www.rug.nl/staff/b.sinha/'>Bhanu N. M. Sinha</a>, <a href='https://www.rug.nl/staff/c.j.albers/'>Casper J. Albers</a>, <a href='https://www.rug.nl/staff/c.glasner/'>Corinna Glasner</a>.</p>
|
<p><p>Developed by <a href="https://www.rug.nl/staff/m.s.berends/" class="external-link">Matthijs S. Berends</a>, <a href="https://www.rug.nl/staff/c.f.luz/" class="external-link">Christian F. Luz</a>, <a href="https://www.rug.nl/staff/a.w.friedrich/" class="external-link">Alexander W. Friedrich</a>, <a href="https://www.rug.nl/staff/b.sinha/" class="external-link">Bhanu N. M. Sinha</a>, <a href="https://www.rug.nl/staff/c.j.albers/" class="external-link">Casper J. Albers</a>, <a href="https://www.rug.nl/staff/c.glasner/" class="external-link">Corinna Glasner</a>.</p></p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="pkgdown">
|
<div class="pkgdown">
|
||||||
<p>Site built with <a href="https://pkgdown.r-lib.org/">pkgdown</a> 1.6.1.</p>
|
<p><p>Site built with <a href="https://pkgdown.r-lib.org/" class="external-link">pkgdown</a> 1.6.1.9001.</p></p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</footer>
|
</footer>
|
||||||
@@ -512,6 +516,8 @@ END OF TERMS AND CONDITIONS
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
||||||
|
|||||||
@@ -1,15 +0,0 @@
|
|||||||
// Hide empty <a> tag within highlighted CodeBlock for screen reader accessibility (see https://github.com/jgm/pandoc/issues/6352#issuecomment-626106786) -->
|
|
||||||
// v0.0.1
|
|
||||||
// Written by JooYoung Seo (jooyoung@psu.edu) and Atsushi Yasumoto on June 1st, 2020.
|
|
||||||
|
|
||||||
document.addEventListener('DOMContentLoaded', function() {
|
|
||||||
const codeList = document.getElementsByClassName("sourceCode");
|
|
||||||
for (var i = 0; i < codeList.length; i++) {
|
|
||||||
var linkList = codeList[i].getElementsByTagName('a');
|
|
||||||
for (var j = 0; j < linkList.length; j++) {
|
|
||||||
if (linkList[j].innerHTML === "") {
|
|
||||||
linkList[j].setAttribute('aria-hidden', 'true');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
/* Styles for section anchors */
|
|
||||||
a.anchor-section {margin-left: 10px; visibility: hidden; color: inherit;}
|
|
||||||
a.anchor-section::before {content: '#';}
|
|
||||||
.hasAnchor:hover a.anchor-section {visibility: visible;}
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
// Anchor sections v1.0 written by Atsushi Yasumoto on Oct 3rd, 2020.
|
|
||||||
document.addEventListener('DOMContentLoaded', function() {
|
|
||||||
// Do nothing if AnchorJS is used
|
|
||||||
if (typeof window.anchors === 'object' && anchors.hasOwnProperty('hasAnchorJSLink')) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
const h = document.querySelectorAll('h1, h2, h3, h4, h5, h6');
|
|
||||||
|
|
||||||
// Do nothing if sections are already anchored
|
|
||||||
if (Array.from(h).some(x => x.classList.contains('hasAnchor'))) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Use section id when pandoc runs with --section-divs
|
|
||||||
const section_id = function(x) {
|
|
||||||
return ((x.classList.contains('section') || (x.tagName === 'SECTION'))
|
|
||||||
? x.id : '');
|
|
||||||
};
|
|
||||||
|
|
||||||
// Add anchors
|
|
||||||
h.forEach(function(x) {
|
|
||||||
const id = x.id || section_id(x.parentElement);
|
|
||||||
if (id === '') {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
let anchor = document.createElement('a');
|
|
||||||
anchor.href = '#' + id;
|
|
||||||
anchor.classList = ['anchor-section'];
|
|
||||||
x.classList.add('hasAnchor');
|
|
||||||
x.appendChild(anchor);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 51 KiB After Width: | Height: | Size: 54 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 37 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 41 KiB |
|
Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 69 KiB |
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 46 KiB |
@@ -21,12 +21,17 @@
|
|||||||
<script src="../extra.js"></script><meta property="og:title" content="How to apply EUCAST rules">
|
<script src="../extra.js"></script><meta property="og:title" content="How to apply EUCAST rules">
|
||||||
<meta property="og:description" content="AMR">
|
<meta property="og:description" content="AMR">
|
||||||
<meta property="og:image" content="https://msberends.github.io/AMR/logo.png">
|
<meta property="og:image" content="https://msberends.github.io/AMR/logo.png">
|
||||||
|
<meta name="twitter:card" content="summary_large_image">
|
||||||
|
<meta name="twitter:creator" content="@msberends">
|
||||||
|
<meta name="twitter:site" content="@univgroningen">
|
||||||
<!-- mathjax --><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js" integrity="sha256-nvJJv9wWKEm88qvoQl9ekL2J+k/RWIsaSScxxlsrv8k=" crossorigin="anonymous"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/config/TeX-AMS-MML_HTMLorMML.js" integrity="sha256-84DKXVJXs0/F8OTMzX4UR909+jtl4G7SPypPavF+GfA=" crossorigin="anonymous"></script><!--[if lt IE 9]>
|
<!-- mathjax --><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js" integrity="sha256-nvJJv9wWKEm88qvoQl9ekL2J+k/RWIsaSScxxlsrv8k=" crossorigin="anonymous"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/config/TeX-AMS-MML_HTMLorMML.js" integrity="sha256-84DKXVJXs0/F8OTMzX4UR909+jtl4G7SPypPavF+GfA=" crossorigin="anonymous"></script><!--[if lt IE 9]>
|
||||||
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
|
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
|
||||||
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
|
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
|
||||||
<![endif]-->
|
<![endif]-->
|
||||||
</head>
|
</head>
|
||||||
<body data-spy="scroll" data-target="#toc">
|
<body data-spy="scroll" data-target="#toc">
|
||||||
|
|
||||||
|
|
||||||
<div class="container template-article">
|
<div class="container template-article">
|
||||||
<header><div class="navbar navbar-default navbar-fixed-top" role="navigation">
|
<header><div class="navbar navbar-default navbar-fixed-top" role="navigation">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
@@ -39,7 +44,7 @@
|
|||||||
</button>
|
</button>
|
||||||
<span class="navbar-brand">
|
<span class="navbar-brand">
|
||||||
<a class="navbar-link" href="../index.html">AMR (for R)</a>
|
<a class="navbar-link" href="../index.html">AMR (for R)</a>
|
||||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Latest development version">1.7.0</span>
|
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Latest development version">1.7.1.9030</span>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -47,14 +52,14 @@
|
|||||||
<ul class="nav navbar-nav">
|
<ul class="nav navbar-nav">
|
||||||
<li>
|
<li>
|
||||||
<a href="../index.html">
|
<a href="../index.html">
|
||||||
<span class="fas fa-home"></span>
|
<span class="fa fa-home"></span>
|
||||||
|
|
||||||
Home
|
Home
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="dropdown">
|
<li class="dropdown">
|
||||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
|
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
|
||||||
<span class="fas fa-question-circle"></span>
|
<span class="fa fa-question-circle"></span>
|
||||||
|
|
||||||
How to
|
How to
|
||||||
|
|
||||||
@@ -63,77 +68,77 @@
|
|||||||
<ul class="dropdown-menu" role="menu">
|
<ul class="dropdown-menu" role="menu">
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/AMR.html">
|
<a href="../articles/AMR.html">
|
||||||
<span class="fas fa-directions"></span>
|
<span class="fa fa-directions"></span>
|
||||||
|
|
||||||
Conduct AMR analysis
|
Conduct AMR analysis
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/resistance_predict.html">
|
<a href="../articles/resistance_predict.html">
|
||||||
<span class="fas fa-dice"></span>
|
<span class="fa fa-dice"></span>
|
||||||
|
|
||||||
Predict antimicrobial resistance
|
Predict antimicrobial resistance
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/datasets.html">
|
<a href="../articles/datasets.html">
|
||||||
<span class="fas fa-database"></span>
|
<span class="fa fa-database"></span>
|
||||||
|
|
||||||
Data sets for download / own use
|
Data sets for download / own use
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/PCA.html">
|
<a href="../articles/PCA.html">
|
||||||
<span class="fas fa-compress"></span>
|
<span class="fa fa-compress"></span>
|
||||||
|
|
||||||
Conduct principal component analysis for AMR
|
Conduct principal component analysis for AMR
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/MDR.html">
|
<a href="../articles/MDR.html">
|
||||||
<span class="fas fa-skull-crossbones"></span>
|
<span class="fa fa-skull-crossbones"></span>
|
||||||
|
|
||||||
Determine multi-drug resistance (MDR)
|
Determine multi-drug resistance (MDR)
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/WHONET.html">
|
<a href="../articles/WHONET.html">
|
||||||
<span class="fas fa-globe-americas"></span>
|
<span class="fa fa-globe-americas"></span>
|
||||||
|
|
||||||
Work with WHONET data
|
Work with WHONET data
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/SPSS.html">
|
<a href="../articles/SPSS.html">
|
||||||
<span class="fas fa-file-upload"></span>
|
<span class="fa fa-file-upload"></span>
|
||||||
|
|
||||||
Import data from SPSS/SAS/Stata
|
Import data from SPSS/SAS/Stata
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/EUCAST.html">
|
<a href="../articles/EUCAST.html">
|
||||||
<span class="fas fa-exchange-alt"></span>
|
<span class="fa fa-exchange-alt"></span>
|
||||||
|
|
||||||
Apply EUCAST rules
|
Apply EUCAST rules
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../reference/mo_property.html">
|
<a href="../reference/mo_property.html">
|
||||||
<span class="fas fa-bug"></span>
|
<span class="fa fa-bug"></span>
|
||||||
|
|
||||||
Get properties of a microorganism
|
Get properties of a microorganism
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../reference/ab_property.html">
|
<a href="../reference/ab_property.html">
|
||||||
<span class="fas fa-capsules"></span>
|
<span class="fa fa-capsules"></span>
|
||||||
|
|
||||||
Get properties of an antibiotic
|
Get properties of an antibiotic
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/benchmarks.html">
|
<a href="../articles/benchmarks.html">
|
||||||
<span class="fas fa-shipping-fast"></span>
|
<span class="fa fa-shipping-fast"></span>
|
||||||
|
|
||||||
Other: benchmarks
|
Other: benchmarks
|
||||||
</a>
|
</a>
|
||||||
@@ -142,14 +147,14 @@
|
|||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../reference/index.html">
|
<a href="../reference/index.html">
|
||||||
<span class="fas fa-book-open"></span>
|
<span class="fa fa-book-open"></span>
|
||||||
|
|
||||||
Manual
|
Manual
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../authors.html">
|
<a href="../authors.html">
|
||||||
<span class="fas fa-users"></span>
|
<span class="fa fa-users"></span>
|
||||||
|
|
||||||
Authors
|
Authors
|
||||||
</a>
|
</a>
|
||||||
@@ -164,18 +169,11 @@
|
|||||||
</ul>
|
</ul>
|
||||||
<ul class="nav navbar-nav navbar-right">
|
<ul class="nav navbar-nav navbar-right">
|
||||||
<li>
|
<li>
|
||||||
<a href="https://github.com/msberends/AMR">
|
<a href="https://github.com/msberends/AMR" class="external-link">
|
||||||
<span class="fab fa-github"></span>
|
<span class="fab fa-github"></span>
|
||||||
|
|
||||||
Source Code
|
Source Code
|
||||||
</a>
|
</a>
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="../survey.html">
|
|
||||||
<span class="fas fa-clipboard-list"></span>
|
|
||||||
|
|
||||||
Survey
|
|
||||||
</a>
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
@@ -187,13 +185,13 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
</header><script src="EUCAST_files/header-attrs-2.8/header-attrs.js"></script><div class="row">
|
</header><script src="EUCAST_files/header-attrs-2.9/header-attrs.js"></script><div class="row">
|
||||||
<div class="col-md-9 contents">
|
<div class="col-md-9 contents">
|
||||||
<div class="page-header toc-ignore">
|
<div class="page-header toc-ignore">
|
||||||
<h1 data-toc-skip>How to apply EUCAST rules</h1>
|
<h1 data-toc-skip>How to apply EUCAST rules</h1>
|
||||||
|
|
||||||
|
|
||||||
<small class="dont-index">Source: <a href="https://github.com/msberends/AMR/blob/master/vignettes/EUCAST.Rmd"><code>vignettes/EUCAST.Rmd</code></a></small>
|
<small class="dont-index">Source: <a href="https://github.com/msberends/AMR/blob/master/vignettes/EUCAST.Rmd" class="external-link"><code>vignettes/EUCAST.Rmd</code></a></small>
|
||||||
<div class="hidden name"><code>EUCAST.Rmd</code></div>
|
<div class="hidden name"><code>EUCAST.Rmd</code></div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -202,21 +200,21 @@
|
|||||||
|
|
||||||
<div id="introduction" class="section level2">
|
<div id="introduction" class="section level2">
|
||||||
<h2 class="hasAnchor">
|
<h2 class="hasAnchor">
|
||||||
<a href="#introduction" class="anchor"></a>Introduction</h2>
|
<a href="#introduction" class="anchor" aria-hidden="true"></a>Introduction</h2>
|
||||||
<p>What are EUCAST rules? The European Committee on Antimicrobial Susceptibility Testing (EUCAST) states <a href="https://www.eucast.org/expert_rules_and_intrinsic_resistance/">on their website</a>:</p>
|
<p>What are EUCAST rules? The European Committee on Antimicrobial Susceptibility Testing (EUCAST) states <a href="https://www.eucast.org/expert_rules_and_intrinsic_resistance/" class="external-link">on their website</a>:</p>
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<p><em>EUCAST expert rules are a tabulated collection of expert knowledge on intrinsic resistances, exceptional resistance phenotypes and interpretive rules that may be applied to antimicrobial susceptibility testing in order to reduce errors and make appropriate recommendations for reporting particular resistances.</em></p>
|
<p><em>EUCAST expert rules are a tabulated collection of expert knowledge on intrinsic resistances, exceptional resistance phenotypes and interpretive rules that may be applied to antimicrobial susceptibility testing in order to reduce errors and make appropriate recommendations for reporting particular resistances.</em></p>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
<p>In Europe, a lot of medical microbiological laboratories already apply these rules (<a href="https://www.eurosurveillance.org/content/10.2807/1560-7917.ES2015.20.2.21008">Brown <em>et al.</em>, 2015</a>). Our package features their latest insights on intrinsic resistance and unusual phenotypes (v3.2, 2020).</p>
|
<p>In Europe, a lot of medical microbiological laboratories already apply these rules (<a href="https://www.eurosurveillance.org/content/10.2807/1560-7917.ES2015.20.2.21008" class="external-link">Brown <em>et al.</em>, 2015</a>). Our package features their latest insights on intrinsic resistance and unusual phenotypes (v3.2, 2020).</p>
|
||||||
<p>Moreover, the <code><a href="../reference/eucast_rules.html">eucast_rules()</a></code> function we use for this purpose can also apply additional rules, like forcing <help title="ATC: J01CA01">ampicillin</help> = R in isolates when <help title="ATC: J01CR02">amoxicillin/clavulanic acid</help> = R.</p>
|
<p>Moreover, the <code><a href="../reference/eucast_rules.html">eucast_rules()</a></code> function we use for this purpose can also apply additional rules, like forcing <help title="ATC: J01CA01">ampicillin</help> = R in isolates when <help title="ATC: J01CR02">amoxicillin/clavulanic acid</help> = R.</p>
|
||||||
</div>
|
</div>
|
||||||
<div id="examples" class="section level2">
|
<div id="examples" class="section level2">
|
||||||
<h2 class="hasAnchor">
|
<h2 class="hasAnchor">
|
||||||
<a href="#examples" class="anchor"></a>Examples</h2>
|
<a href="#examples" class="anchor" aria-hidden="true"></a>Examples</h2>
|
||||||
<p>These rules can be used to discard impossible bug-drug combinations in your data. For example, <em>Klebsiella</em> produces beta-lactamase that prevents ampicillin (or amoxicillin) from working against it. In other words, practically every strain of <em>Klebsiella</em> is resistant to ampicillin.</p>
|
<p>These rules can be used to discard impossible bug-drug combinations in your data. For example, <em>Klebsiella</em> produces beta-lactamase that prevents ampicillin (or amoxicillin) from working against it. In other words, practically every strain of <em>Klebsiella</em> is resistant to ampicillin.</p>
|
||||||
<p>Sometimes, laboratory data can still contain such strains with ampicillin being susceptible to ampicillin. This could be because an antibiogram is available before an identification is available, and the antibiogram is then not re-interpreted based on the identification (namely, <em>Klebsiella</em>). EUCAST expert rules solve this, that can be applied using <code><a href="../reference/eucast_rules.html">eucast_rules()</a></code>:</p>
|
<p>Sometimes, laboratory data can still contain such strains with ampicillin being susceptible to ampicillin. This could be because an antibiogram is available before an identification is available, and the antibiogram is then not re-interpreted based on the identification (namely, <em>Klebsiella</em>). EUCAST expert rules solve this, that can be applied using <code><a href="../reference/eucast_rules.html">eucast_rules()</a></code>:</p>
|
||||||
<div class="sourceCode" id="cb1"><pre class="downlit sourceCode r">
|
<div class="sourceCode" id="cb1"><pre class="downlit sourceCode r">
|
||||||
<code class="sourceCode R"><span class="va">oops</span> <span class="op"><-</span> <span class="fu"><a href="https://rdrr.io/r/base/data.frame.html">data.frame</a></span><span class="op">(</span>mo <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html">c</a></span><span class="op">(</span><span class="st">"Klebsiella"</span>,
|
<code class="sourceCode R"><span class="va">oops</span> <span class="op"><-</span> <span class="fu"><a href="https://rdrr.io/r/base/data.frame.html" class="external-link">data.frame</a></span><span class="op">(</span>mo <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"Klebsiella"</span>,
|
||||||
<span class="st">"Escherichia"</span><span class="op">)</span>,
|
<span class="st">"Escherichia"</span><span class="op">)</span>,
|
||||||
ampicillin <span class="op">=</span> <span class="st">"S"</span><span class="op">)</span>
|
ampicillin <span class="op">=</span> <span class="st">"S"</span><span class="op">)</span>
|
||||||
<span class="va">oops</span>
|
<span class="va">oops</span>
|
||||||
@@ -230,16 +228,16 @@
|
|||||||
<span class="co"># 2 Escherichia S</span></code></pre></div>
|
<span class="co"># 2 Escherichia S</span></code></pre></div>
|
||||||
<p>A more convenient function is <code><a href="../reference/mo_property.html">mo_is_intrinsic_resistant()</a></code> that uses the same guideline, but allows to check for one or more specific microorganisms or antibiotics:</p>
|
<p>A more convenient function is <code><a href="../reference/mo_property.html">mo_is_intrinsic_resistant()</a></code> that uses the same guideline, but allows to check for one or more specific microorganisms or antibiotics:</p>
|
||||||
<div class="sourceCode" id="cb2"><pre class="downlit sourceCode r">
|
<div class="sourceCode" id="cb2"><pre class="downlit sourceCode r">
|
||||||
<code class="sourceCode R"><span class="fu"><a href="../reference/mo_property.html">mo_is_intrinsic_resistant</a></span><span class="op">(</span><span class="fu"><a href="https://rdrr.io/r/base/c.html">c</a></span><span class="op">(</span><span class="st">"Klebsiella"</span>, <span class="st">"Escherichia"</span><span class="op">)</span>,
|
<code class="sourceCode R"><span class="fu"><a href="../reference/mo_property.html">mo_is_intrinsic_resistant</a></span><span class="op">(</span><span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"Klebsiella"</span>, <span class="st">"Escherichia"</span><span class="op">)</span>,
|
||||||
<span class="st">"ampicillin"</span><span class="op">)</span>
|
<span class="st">"ampicillin"</span><span class="op">)</span>
|
||||||
<span class="co"># [1] TRUE FALSE</span>
|
<span class="co"># [1] TRUE FALSE</span>
|
||||||
|
|
||||||
<span class="fu"><a href="../reference/mo_property.html">mo_is_intrinsic_resistant</a></span><span class="op">(</span><span class="st">"Klebsiella"</span>,
|
<span class="fu"><a href="../reference/mo_property.html">mo_is_intrinsic_resistant</a></span><span class="op">(</span><span class="st">"Klebsiella"</span>,
|
||||||
<span class="fu"><a href="https://rdrr.io/r/base/c.html">c</a></span><span class="op">(</span><span class="st">"ampicillin"</span>, <span class="st">"kanamycin"</span><span class="op">)</span><span class="op">)</span>
|
<span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"ampicillin"</span>, <span class="st">"kanamycin"</span><span class="op">)</span><span class="op">)</span>
|
||||||
<span class="co"># [1] TRUE FALSE</span></code></pre></div>
|
<span class="co"># [1] TRUE FALSE</span></code></pre></div>
|
||||||
<p>EUCAST rules can not only be used for correction, they can also be used for filling in known resistance and susceptibility based on results of other antimicrobials drugs. This process is called <em>interpretive reading</em>, is basically a form of imputation, and is part of the <code><a href="../reference/eucast_rules.html">eucast_rules()</a></code> function as well:</p>
|
<p>EUCAST rules can not only be used for correction, they can also be used for filling in known resistance and susceptibility based on results of other antimicrobials drugs. This process is called <em>interpretive reading</em>, is basically a form of imputation, and is part of the <code><a href="../reference/eucast_rules.html">eucast_rules()</a></code> function as well:</p>
|
||||||
<div class="sourceCode" id="cb3"><pre class="downlit sourceCode r">
|
<div class="sourceCode" id="cb3"><pre class="downlit sourceCode r">
|
||||||
<code class="sourceCode R"><span class="va">data</span> <span class="op"><-</span> <span class="fu"><a href="https://rdrr.io/r/base/data.frame.html">data.frame</a></span><span class="op">(</span>mo <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html">c</a></span><span class="op">(</span><span class="st">"Staphylococcus aureus"</span>,
|
<code class="sourceCode R"><span class="va">data</span> <span class="op"><-</span> <span class="fu"><a href="https://rdrr.io/r/base/data.frame.html" class="external-link">data.frame</a></span><span class="op">(</span>mo <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"Staphylococcus aureus"</span>,
|
||||||
<span class="st">"Enterococcus faecalis"</span>,
|
<span class="st">"Enterococcus faecalis"</span>,
|
||||||
<span class="st">"Escherichia coli"</span>,
|
<span class="st">"Escherichia coli"</span>,
|
||||||
<span class="st">"Klebsiella pneumoniae"</span>,
|
<span class="st">"Klebsiella pneumoniae"</span>,
|
||||||
@@ -398,11 +396,13 @@
|
|||||||
|
|
||||||
|
|
||||||
<footer><div class="copyright">
|
<footer><div class="copyright">
|
||||||
<p>Developed by <a href="https://www.rug.nl/staff/m.s.berends/">Matthijs S. Berends</a>, <a href="https://www.rug.nl/staff/c.f.luz/">Christian F. Luz</a>, <a href="https://www.rug.nl/staff/a.w.friedrich/">Alexander W. Friedrich</a>, <a href="https://www.rug.nl/staff/b.sinha/">Bhanu N. M. Sinha</a>, <a href="https://www.rug.nl/staff/c.j.albers/">Casper J. Albers</a>, <a href="https://www.rug.nl/staff/c.glasner/">Corinna Glasner</a>.</p>
|
<p></p>
|
||||||
|
<p>Developed by <a href="https://www.rug.nl/staff/m.s.berends/" class="external-link external-link">Matthijs S. Berends</a>, <a href="https://www.rug.nl/staff/c.f.luz/" class="external-link external-link">Christian F. Luz</a>, <a href="https://www.rug.nl/staff/a.w.friedrich/" class="external-link external-link">Alexander W. Friedrich</a>, <a href="https://www.rug.nl/staff/b.sinha/" class="external-link external-link">Bhanu N. M. Sinha</a>, <a href="https://www.rug.nl/staff/c.j.albers/" class="external-link external-link">Casper J. Albers</a>, <a href="https://www.rug.nl/staff/c.glasner/" class="external-link external-link">Corinna Glasner</a>.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="pkgdown">
|
<div class="pkgdown">
|
||||||
<p>Site built with <a href="https://pkgdown.r-lib.org/">pkgdown</a> 1.6.1.</p>
|
<p></p>
|
||||||
|
<p>Site built with <a href="https://pkgdown.r-lib.org/" class="external-link external-link">pkgdown</a> 1.6.1.9001.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</footer>
|
</footer>
|
||||||
@@ -411,5 +411,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1,15 +0,0 @@
|
|||||||
// Hide empty <a> tag within highlighted CodeBlock for screen reader accessibility (see https://github.com/jgm/pandoc/issues/6352#issuecomment-626106786) -->
|
|
||||||
// v0.0.1
|
|
||||||
// Written by JooYoung Seo (jooyoung@psu.edu) and Atsushi Yasumoto on June 1st, 2020.
|
|
||||||
|
|
||||||
document.addEventListener('DOMContentLoaded', function() {
|
|
||||||
const codeList = document.getElementsByClassName("sourceCode");
|
|
||||||
for (var i = 0; i < codeList.length; i++) {
|
|
||||||
var linkList = codeList[i].getElementsByTagName('a');
|
|
||||||
for (var j = 0; j < linkList.length; j++) {
|
|
||||||
if (linkList[j].innerHTML === "") {
|
|
||||||
linkList[j].setAttribute('aria-hidden', 'true');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
/* Styles for section anchors */
|
|
||||||
a.anchor-section {margin-left: 10px; visibility: hidden; color: inherit;}
|
|
||||||
a.anchor-section::before {content: '#';}
|
|
||||||
.hasAnchor:hover a.anchor-section {visibility: visible;}
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
// Anchor sections v1.0 written by Atsushi Yasumoto on Oct 3rd, 2020.
|
|
||||||
document.addEventListener('DOMContentLoaded', function() {
|
|
||||||
// Do nothing if AnchorJS is used
|
|
||||||
if (typeof window.anchors === 'object' && anchors.hasOwnProperty('hasAnchorJSLink')) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
const h = document.querySelectorAll('h1, h2, h3, h4, h5, h6');
|
|
||||||
|
|
||||||
// Do nothing if sections are already anchored
|
|
||||||
if (Array.from(h).some(x => x.classList.contains('hasAnchor'))) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Use section id when pandoc runs with --section-divs
|
|
||||||
const section_id = function(x) {
|
|
||||||
return ((x.classList.contains('section') || (x.tagName === 'SECTION'))
|
|
||||||
? x.id : '');
|
|
||||||
};
|
|
||||||
|
|
||||||
// Add anchors
|
|
||||||
h.forEach(function(x) {
|
|
||||||
const id = x.id || section_id(x.parentElement);
|
|
||||||
if (id === '') {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
let anchor = document.createElement('a');
|
|
||||||
anchor.href = '#' + id;
|
|
||||||
anchor.classList = ['anchor-section'];
|
|
||||||
x.classList.add('hasAnchor');
|
|
||||||
x.appendChild(anchor);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
@@ -21,12 +21,17 @@
|
|||||||
<script src="../extra.js"></script><meta property="og:title" content="How to determine multi-drug resistance (MDR)">
|
<script src="../extra.js"></script><meta property="og:title" content="How to determine multi-drug resistance (MDR)">
|
||||||
<meta property="og:description" content="AMR">
|
<meta property="og:description" content="AMR">
|
||||||
<meta property="og:image" content="https://msberends.github.io/AMR/logo.png">
|
<meta property="og:image" content="https://msberends.github.io/AMR/logo.png">
|
||||||
|
<meta name="twitter:card" content="summary_large_image">
|
||||||
|
<meta name="twitter:creator" content="@msberends">
|
||||||
|
<meta name="twitter:site" content="@univgroningen">
|
||||||
<!-- mathjax --><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js" integrity="sha256-nvJJv9wWKEm88qvoQl9ekL2J+k/RWIsaSScxxlsrv8k=" crossorigin="anonymous"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/config/TeX-AMS-MML_HTMLorMML.js" integrity="sha256-84DKXVJXs0/F8OTMzX4UR909+jtl4G7SPypPavF+GfA=" crossorigin="anonymous"></script><!--[if lt IE 9]>
|
<!-- mathjax --><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js" integrity="sha256-nvJJv9wWKEm88qvoQl9ekL2J+k/RWIsaSScxxlsrv8k=" crossorigin="anonymous"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/config/TeX-AMS-MML_HTMLorMML.js" integrity="sha256-84DKXVJXs0/F8OTMzX4UR909+jtl4G7SPypPavF+GfA=" crossorigin="anonymous"></script><!--[if lt IE 9]>
|
||||||
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
|
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
|
||||||
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
|
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
|
||||||
<![endif]-->
|
<![endif]-->
|
||||||
</head>
|
</head>
|
||||||
<body data-spy="scroll" data-target="#toc">
|
<body data-spy="scroll" data-target="#toc">
|
||||||
|
|
||||||
|
|
||||||
<div class="container template-article">
|
<div class="container template-article">
|
||||||
<header><div class="navbar navbar-default navbar-fixed-top" role="navigation">
|
<header><div class="navbar navbar-default navbar-fixed-top" role="navigation">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
@@ -39,7 +44,7 @@
|
|||||||
</button>
|
</button>
|
||||||
<span class="navbar-brand">
|
<span class="navbar-brand">
|
||||||
<a class="navbar-link" href="../index.html">AMR (for R)</a>
|
<a class="navbar-link" href="../index.html">AMR (for R)</a>
|
||||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Latest development version">1.7.0</span>
|
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Latest development version">1.7.1.9030</span>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -47,14 +52,14 @@
|
|||||||
<ul class="nav navbar-nav">
|
<ul class="nav navbar-nav">
|
||||||
<li>
|
<li>
|
||||||
<a href="../index.html">
|
<a href="../index.html">
|
||||||
<span class="fas fa-home"></span>
|
<span class="fa fa-home"></span>
|
||||||
|
|
||||||
Home
|
Home
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="dropdown">
|
<li class="dropdown">
|
||||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
|
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
|
||||||
<span class="fas fa-question-circle"></span>
|
<span class="fa fa-question-circle"></span>
|
||||||
|
|
||||||
How to
|
How to
|
||||||
|
|
||||||
@@ -63,77 +68,77 @@
|
|||||||
<ul class="dropdown-menu" role="menu">
|
<ul class="dropdown-menu" role="menu">
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/AMR.html">
|
<a href="../articles/AMR.html">
|
||||||
<span class="fas fa-directions"></span>
|
<span class="fa fa-directions"></span>
|
||||||
|
|
||||||
Conduct AMR analysis
|
Conduct AMR analysis
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/resistance_predict.html">
|
<a href="../articles/resistance_predict.html">
|
||||||
<span class="fas fa-dice"></span>
|
<span class="fa fa-dice"></span>
|
||||||
|
|
||||||
Predict antimicrobial resistance
|
Predict antimicrobial resistance
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/datasets.html">
|
<a href="../articles/datasets.html">
|
||||||
<span class="fas fa-database"></span>
|
<span class="fa fa-database"></span>
|
||||||
|
|
||||||
Data sets for download / own use
|
Data sets for download / own use
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/PCA.html">
|
<a href="../articles/PCA.html">
|
||||||
<span class="fas fa-compress"></span>
|
<span class="fa fa-compress"></span>
|
||||||
|
|
||||||
Conduct principal component analysis for AMR
|
Conduct principal component analysis for AMR
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/MDR.html">
|
<a href="../articles/MDR.html">
|
||||||
<span class="fas fa-skull-crossbones"></span>
|
<span class="fa fa-skull-crossbones"></span>
|
||||||
|
|
||||||
Determine multi-drug resistance (MDR)
|
Determine multi-drug resistance (MDR)
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/WHONET.html">
|
<a href="../articles/WHONET.html">
|
||||||
<span class="fas fa-globe-americas"></span>
|
<span class="fa fa-globe-americas"></span>
|
||||||
|
|
||||||
Work with WHONET data
|
Work with WHONET data
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/SPSS.html">
|
<a href="../articles/SPSS.html">
|
||||||
<span class="fas fa-file-upload"></span>
|
<span class="fa fa-file-upload"></span>
|
||||||
|
|
||||||
Import data from SPSS/SAS/Stata
|
Import data from SPSS/SAS/Stata
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/EUCAST.html">
|
<a href="../articles/EUCAST.html">
|
||||||
<span class="fas fa-exchange-alt"></span>
|
<span class="fa fa-exchange-alt"></span>
|
||||||
|
|
||||||
Apply EUCAST rules
|
Apply EUCAST rules
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../reference/mo_property.html">
|
<a href="../reference/mo_property.html">
|
||||||
<span class="fas fa-bug"></span>
|
<span class="fa fa-bug"></span>
|
||||||
|
|
||||||
Get properties of a microorganism
|
Get properties of a microorganism
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../reference/ab_property.html">
|
<a href="../reference/ab_property.html">
|
||||||
<span class="fas fa-capsules"></span>
|
<span class="fa fa-capsules"></span>
|
||||||
|
|
||||||
Get properties of an antibiotic
|
Get properties of an antibiotic
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../articles/benchmarks.html">
|
<a href="../articles/benchmarks.html">
|
||||||
<span class="fas fa-shipping-fast"></span>
|
<span class="fa fa-shipping-fast"></span>
|
||||||
|
|
||||||
Other: benchmarks
|
Other: benchmarks
|
||||||
</a>
|
</a>
|
||||||
@@ -142,14 +147,14 @@
|
|||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../reference/index.html">
|
<a href="../reference/index.html">
|
||||||
<span class="fas fa-book-open"></span>
|
<span class="fa fa-book-open"></span>
|
||||||
|
|
||||||
Manual
|
Manual
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="../authors.html">
|
<a href="../authors.html">
|
||||||
<span class="fas fa-users"></span>
|
<span class="fa fa-users"></span>
|
||||||
|
|
||||||
Authors
|
Authors
|
||||||
</a>
|
</a>
|
||||||
@@ -164,18 +169,11 @@
|
|||||||
</ul>
|
</ul>
|
||||||
<ul class="nav navbar-nav navbar-right">
|
<ul class="nav navbar-nav navbar-right">
|
||||||
<li>
|
<li>
|
||||||
<a href="https://github.com/msberends/AMR">
|
<a href="https://github.com/msberends/AMR" class="external-link">
|
||||||
<span class="fab fa-github"></span>
|
<span class="fab fa-github"></span>
|
||||||
|
|
||||||
Source Code
|
Source Code
|
||||||
</a>
|
</a>
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="../survey.html">
|
|
||||||
<span class="fas fa-clipboard-list"></span>
|
|
||||||
|
|
||||||
Survey
|
|
||||||
</a>
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
@@ -187,13 +185,13 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
</header><script src="MDR_files/header-attrs-2.8/header-attrs.js"></script><div class="row">
|
</header><script src="MDR_files/header-attrs-2.9/header-attrs.js"></script><div class="row">
|
||||||
<div class="col-md-9 contents">
|
<div class="col-md-9 contents">
|
||||||
<div class="page-header toc-ignore">
|
<div class="page-header toc-ignore">
|
||||||
<h1 data-toc-skip>How to determine multi-drug resistance (MDR)</h1>
|
<h1 data-toc-skip>How to determine multi-drug resistance (MDR)</h1>
|
||||||
|
|
||||||
|
|
||||||
<small class="dont-index">Source: <a href="https://github.com/msberends/AMR/blob/master/vignettes/MDR.Rmd"><code>vignettes/MDR.Rmd</code></a></small>
|
<small class="dont-index">Source: <a href="https://github.com/msberends/AMR/blob/master/vignettes/MDR.Rmd" class="external-link"><code>vignettes/MDR.Rmd</code></a></small>
|
||||||
<div class="hidden name"><code>MDR.Rmd</code></div>
|
<div class="hidden name"><code>MDR.Rmd</code></div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -203,50 +201,50 @@
|
|||||||
<p>With the function <code><a href="../reference/mdro.html">mdro()</a></code>, you can determine which micro-organisms are multi-drug resistant organisms (MDRO).</p>
|
<p>With the function <code><a href="../reference/mdro.html">mdro()</a></code>, you can determine which micro-organisms are multi-drug resistant organisms (MDRO).</p>
|
||||||
<div id="type-of-input" class="section level3">
|
<div id="type-of-input" class="section level3">
|
||||||
<h3 class="hasAnchor">
|
<h3 class="hasAnchor">
|
||||||
<a href="#type-of-input" class="anchor"></a>Type of input</h3>
|
<a href="#type-of-input" class="anchor" aria-hidden="true"></a>Type of input</h3>
|
||||||
<p>The <code><a href="../reference/mdro.html">mdro()</a></code> function takes a data set as input, such as a regular <code>data.frame</code>. It tries to automatically determine the right columns for info about your isolates, like the name of the species and all columns with results of antimicrobial agents. See the help page for more info about how to set the right settings for your data with the command <code><a href="../reference/mdro.html">?mdro</a></code>.</p>
|
<p>The <code><a href="../reference/mdro.html">mdro()</a></code> function takes a data set as input, such as a regular <code>data.frame</code>. It tries to automatically determine the right columns for info about your isolates, such as the name of the species and all columns with results of antimicrobial agents. See the help page for more info about how to set the right settings for your data with the command <code><a href="../reference/mdro.html">?mdro</a></code>.</p>
|
||||||
<p>For WHONET data (and most other data), all settings are automatically set correctly.</p>
|
<p>For WHONET data (and most other data), all settings are automatically set correctly.</p>
|
||||||
</div>
|
</div>
|
||||||
<div id="guidelines" class="section level3">
|
<div id="guidelines" class="section level3">
|
||||||
<h3 class="hasAnchor">
|
<h3 class="hasAnchor">
|
||||||
<a href="#guidelines" class="anchor"></a>Guidelines</h3>
|
<a href="#guidelines" class="anchor" aria-hidden="true"></a>Guidelines</h3>
|
||||||
<p>The function support multiple guidelines. You can select a guideline with the <code>guideline</code> parameter. Currently supported guidelines are (case-insensitive):</p>
|
<p>The <code><a href="../reference/mdro.html">mdro()</a></code> function support multiple guidelines. You can select a guideline with the <code>guideline</code> parameter. Currently supported guidelines are (case-insensitive):</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li>
|
||||||
<p><code>guideline = "CMI2012"</code> (default)</p>
|
<p><code>guideline = "CMI2012"</code> (default)</p>
|
||||||
<p>Magiorakos AP, Srinivasan A <em>et al.</em> “Multidrug-resistant, extensively drug-resistant and pandrug-resistant bacteria: an international expert proposal for interim standard definitions for acquired resistance.” Clinical Microbiology and Infection (2012) (<a href="https://www.clinicalmicrobiologyandinfection.com/article/S1198-743X(14)61632-3/fulltext">link</a>)</p>
|
<p>Magiorakos AP, Srinivasan A <em>et al.</em> “Multidrug-resistant, extensively drug-resistant and pandrug-resistant bacteria: an international expert proposal for interim standard definitions for acquired resistance.” Clinical Microbiology and Infection (2012) (<a href="https://www.clinicalmicrobiologyandinfection.com/article/S1198-743X(14)61632-3/fulltext" class="external-link">link</a>)</p>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<p><code>guideline = "EUCAST3.2"</code> (or simply <code>guideline = "EUCAST"</code>)</p>
|
<p><code>guideline = "EUCAST3.2"</code> (or simply <code>guideline = "EUCAST"</code>)</p>
|
||||||
<p>The European international guideline - EUCAST Expert Rules Version 3.2 “Intrinsic Resistance and Unusual Phenotypes” (<a href="https://www.eucast.org/fileadmin/src/media/PDFs/EUCAST_files/Expert_Rules/2020/Intrinsic_Resistance_and_Unusual_Phenotypes_Tables_v3.2_20200225.pdf">link</a>)</p>
|
<p>The European international guideline - EUCAST Expert Rules Version 3.2 “Intrinsic Resistance and Unusual Phenotypes” (<a href="https://www.eucast.org/fileadmin/src/media/PDFs/EUCAST_files/Expert_Rules/2020/Intrinsic_Resistance_and_Unusual_Phenotypes_Tables_v3.2_20200225.pdf" class="external-link">link</a>)</p>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<p><code>guideline = "EUCAST3.1"</code></p>
|
<p><code>guideline = "EUCAST3.1"</code></p>
|
||||||
<p>The European international guideline - EUCAST Expert Rules Version 3.1 “Intrinsic Resistance and Exceptional Phenotypes Tables” (<a href="https://www.eucast.org/fileadmin/src/media/PDFs/EUCAST_files/Expert_Rules/Expert_rules_intrinsic_exceptional_V3.1.pdf">link</a>)</p>
|
<p>The European international guideline - EUCAST Expert Rules Version 3.1 “Intrinsic Resistance and Exceptional Phenotypes Tables” (<a href="https://www.eucast.org/fileadmin/src/media/PDFs/EUCAST_files/Expert_Rules/Expert_rules_intrinsic_exceptional_V3.1.pdf" class="external-link">link</a>)</p>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<p><code>guideline = "TB"</code></p>
|
<p><code>guideline = "TB"</code></p>
|
||||||
<p>The international guideline for multi-drug resistant tuberculosis - World Health Organization “Companion handbook to the WHO guidelines for the programmatic management of drug-resistant tuberculosis” (<a href="https://www.who.int/tb/publications/pmdt_companionhandbook/en/">link</a>)</p>
|
<p>The international guideline for multi-drug resistant tuberculosis - World Health Organization “Companion handbook to the WHO guidelines for the programmatic management of drug-resistant tuberculosis” (<a href="https://www.who.int/tb/publications/pmdt_companionhandbook/en/" class="external-link">link</a>)</p>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<p><code>guideline = "MRGN"</code></p>
|
<p><code>guideline = "MRGN"</code></p>
|
||||||
<p>The German national guideline - Mueller et al. (2015) Antimicrobial Resistance and Infection Control 4:7. DOI: 10.1186/s13756-015-0047-6</p>
|
<p>The German national guideline - Mueller <em>et al.</em> (2015) Antimicrobial Resistance and Infection Control 4:7. DOI: 10.1186/s13756-015-0047-6</p>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<p><code>guideline = "BRMO"</code></p>
|
<p><code>guideline = "BRMO"</code></p>
|
||||||
<p>The Dutch national guideline - Rijksinstituut voor Volksgezondheid en Milieu “WIP-richtlijn BRMO (Bijzonder Resistente Micro-Organismen) (ZKH)” (<a href="https://www.rivm.nl/wip-richtlijn-brmo-bijzonder-resistente-micro-organismen-zkh">link</a>)</p>
|
<p>The Dutch national guideline - Rijksinstituut voor Volksgezondheid en Milieu “WIP-richtlijn BRMO (Bijzonder Resistente Micro-Organismen) (ZKH)” (<a href="https://www.rivm.nl/wip-richtlijn-brmo-bijzonder-resistente-micro-organismen-zkh" class="external-link">link</a>)</p>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>Please suggest your own (country-specific) guidelines by letting us know: <a href="https://github.com/msberends/AMR/issues/new" class="uri">https://github.com/msberends/AMR/issues/new</a>.</p>
|
<p>Please suggest your own (country-specific) guidelines by letting us know: <a href="https://github.com/msberends/AMR/issues/new" class="external-link uri">https://github.com/msberends/AMR/issues/new</a>.</p>
|
||||||
<div id="custom-guidelines" class="section level4">
|
<div id="custom-guidelines" class="section level4">
|
||||||
<h4 class="hasAnchor">
|
<h4 class="hasAnchor">
|
||||||
<a href="#custom-guidelines" class="anchor"></a>Custom Guidelines</h4>
|
<a href="#custom-guidelines" class="anchor" aria-hidden="true"></a>Custom Guidelines</h4>
|
||||||
<p>You can also use your own custom guideline. Custom guidelines can be set with the <code><a href="../reference/mdro.html">custom_mdro_guideline()</a></code> function. This is of great importance if you have custom rules to determine MDROs in your hospital, e.g., rules that are dependent on ward, state of contact isolation or other variables in your data.</p>
|
<p>You can also use your own custom guideline. Custom guidelines can be set with the <code><a href="../reference/mdro.html">custom_mdro_guideline()</a></code> function. This is of great importance if you have custom rules to determine MDROs in your hospital, e.g., rules that are dependent on ward, state of contact isolation or other variables in your data.</p>
|
||||||
<p>If you are familiar with <code><a href="https://dplyr.tidyverse.org/reference/case_when.html">case_when()</a></code> of the <code>dplyr</code> package, you will recognise the input method to set your own rules. Rules must be set using what considers to be the ‘formula notation’:</p>
|
<p>If you are familiar with <code><a href="https://dplyr.tidyverse.org/reference/case_when.html" class="external-link">case_when()</a></code> of the <code>dplyr</code> package, you will recognise the input method to set your own rules. Rules must be set using what R considers to be the ‘formula notation’:</p>
|
||||||
<div class="sourceCode" id="cb1"><pre class="downlit sourceCode r">
|
<div class="sourceCode" id="cb1"><pre class="downlit sourceCode r">
|
||||||
<code class="sourceCode R"><span class="va">custom</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mdro.html">custom_mdro_guideline</a></span><span class="op">(</span><span class="va">CIP</span> <span class="op">==</span> <span class="st">"R"</span> <span class="op">&</span> <span class="va">age</span> <span class="op">></span> <span class="fl">60</span> <span class="op">~</span> <span class="st">"Elderly Type A"</span>,
|
<code class="sourceCode R"><span class="va">custom</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mdro.html">custom_mdro_guideline</a></span><span class="op">(</span><span class="va">CIP</span> <span class="op">==</span> <span class="st">"R"</span> <span class="op">&</span> <span class="va">age</span> <span class="op">></span> <span class="fl">60</span> <span class="op">~</span> <span class="st">"Elderly Type A"</span>,
|
||||||
<span class="va">ERY</span> <span class="op">==</span> <span class="st">"R"</span> <span class="op">&</span> <span class="va">age</span> <span class="op">></span> <span class="fl">60</span> <span class="op">~</span> <span class="st">"Elderly Type B"</span><span class="op">)</span></code></pre></div>
|
<span class="va">ERY</span> <span class="op">==</span> <span class="st">"R"</span> <span class="op">&</span> <span class="va">age</span> <span class="op">></span> <span class="fl">60</span> <span class="op">~</span> <span class="st">"Elderly Type B"</span><span class="op">)</span></code></pre></div>
|
||||||
<p>If a row/an isolate matches the first rule, the value after the first <code><a href="https://rdrr.io/r/base/tilde.html">~</a></code> (in this case <em>‘Elderly Type A’</em>) will be set as MDRO value. Otherwise, the second rule will be tried and so on. The number of rules is unlimited.</p>
|
<p>If a row/an isolate matches the first rule, the value after the first <code><a href="https://rdrr.io/r/base/tilde.html" class="external-link">~</a></code> (in this case <em>‘Elderly Type A’</em>) will be set as MDRO value. Otherwise, the second rule will be tried and so on. The maximum number of rules is unlimited.</p>
|
||||||
<p>You can print the rules set in the console for an overview. Colours will help reading it if your console supports colours.</p>
|
<p>You can print the rules set in the console for an overview. Colours will help reading it if your console supports colours.</p>
|
||||||
<div class="sourceCode" id="cb2"><pre class="downlit sourceCode r">
|
<div class="sourceCode" id="cb2"><pre class="downlit sourceCode r">
|
||||||
<code class="sourceCode R"><span class="va">custom</span>
|
<code class="sourceCode R"><span class="va">custom</span>
|
||||||
@@ -257,30 +255,50 @@
|
|||||||
<span class="co"># </span>
|
<span class="co"># </span>
|
||||||
<span class="co"># Unmatched rows will return NA.</span>
|
<span class="co"># Unmatched rows will return NA.</span>
|
||||||
<span class="co"># Results will be of class <factor>, with ordered levels: Negative < Elderly Type A < Elderly Type B</span></code></pre></div>
|
<span class="co"># Results will be of class <factor>, with ordered levels: Negative < Elderly Type A < Elderly Type B</span></code></pre></div>
|
||||||
<p>The outcome of the function can be used for the <code>guideline</code> argument in the [mdro()] function:</p>
|
<p>The outcome of the function can be used for the <code>guideline</code> argument in the <code><a href="../reference/mdro.html">mdro()</a></code> function:</p>
|
||||||
<div class="sourceCode" id="cb3"><pre class="downlit sourceCode r">
|
<div class="sourceCode" id="cb3"><pre class="downlit sourceCode r">
|
||||||
<code class="sourceCode R"><span class="va">x</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mdro.html">mdro</a></span><span class="op">(</span><span class="va">example_isolates</span>, guideline <span class="op">=</span> <span class="va">custom</span><span class="op">)</span>
|
<code class="sourceCode R"><span class="va">x</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mdro.html">mdro</a></span><span class="op">(</span><span class="va">example_isolates</span>, guideline <span class="op">=</span> <span class="va">custom</span><span class="op">)</span>
|
||||||
<span class="fu"><a href="https://rdrr.io/r/base/table.html">table</a></span><span class="op">(</span><span class="va">x</span><span class="op">)</span>
|
<span class="co"># Determining MDROs based on custom rules, resulting in factor levels:</span>
|
||||||
|
<span class="co"># Negative < Elderly Type A < Elderly Type B.</span>
|
||||||
|
<span class="co"># - Custom MDRO rule 1: `CIP == "R" & age > 60` (198 rows matched)</span>
|
||||||
|
<span class="co"># - Custom MDRO rule 2: `ERY == "R" & age > 60` (732 rows matched)</span>
|
||||||
|
<span class="fu"><a href="https://rdrr.io/r/base/table.html" class="external-link">table</a></span><span class="op">(</span><span class="va">x</span><span class="op">)</span>
|
||||||
<span class="co"># x</span>
|
<span class="co"># x</span>
|
||||||
<span class="co"># Negative Elderly Type A Elderly Type B </span>
|
<span class="co"># Negative Elderly Type A Elderly Type B </span>
|
||||||
<span class="co"># 1070 198 732</span></code></pre></div>
|
<span class="co"># 1070 198 732</span></code></pre></div>
|
||||||
<p>The rules set (the <code>custom</code> object in this case) could be exported to a shared file location using <code><a href="https://rdrr.io/r/base/readRDS.html">saveRDS()</a></code> if you collaborate with multiple users. The custom rules set could then be imported using <code><a href="https://rdrr.io/r/base/readRDS.html">readRDS()</a></code>.</p>
|
<p>The rules set (the <code>custom</code> object in this case) could be exported to a shared file location using <code><a href="https://rdrr.io/r/base/readRDS.html" class="external-link">saveRDS()</a></code> if you collaborate with multiple users. The custom rules set could then be imported using <code><a href="https://rdrr.io/r/base/readRDS.html" class="external-link">readRDS()</a></code>.</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id="examples" class="section level3">
|
<div id="examples" class="section level3">
|
||||||
<h3 class="hasAnchor">
|
<h3 class="hasAnchor">
|
||||||
<a href="#examples" class="anchor"></a>Examples</h3>
|
<a href="#examples" class="anchor" aria-hidden="true"></a>Examples</h3>
|
||||||
<p>The <code><a href="../reference/mdro.html">mdro()</a></code> function always returns an ordered <code>factor</code>. For example, the output of the default guideline by Magiorakos <em>et al.</em> returns a <code>factor</code> with levels ‘Negative’, ‘MDR’, ‘XDR’ or ‘PDR’ in that order.</p>
|
<p>The <code><a href="../reference/mdro.html">mdro()</a></code> function always returns an ordered <code>factor</code> for predefined guidelines. For example, the output of the default guideline by Magiorakos <em>et al.</em> returns a <code>factor</code> with levels ‘Negative’, ‘MDR’, ‘XDR’ or ‘PDR’ in that order.</p>
|
||||||
<p>The next example uses the <code>example_isolates</code> data set. This is a data set included with this package and contains 2,000 microbial isolates with their full antibiograms. It reflects reality and can be used to practice AMR data analysis. If we test the MDR/XDR/PDR guideline on this data set, we get:</p>
|
<p>The next example uses the <code>example_isolates</code> data set. This is a data set included with this package and contains full antibiograms of 2,000 microbial isolates. It reflects reality and can be used to practise AMR data analysis. If we test the MDR/XDR/PDR guideline on this data set, we get:</p>
|
||||||
<div class="sourceCode" id="cb4"><pre class="downlit sourceCode r">
|
<div class="sourceCode" id="cb4"><pre class="downlit sourceCode r">
|
||||||
<code class="sourceCode R"><span class="kw"><a href="https://rdrr.io/r/base/library.html">library</a></span><span class="op">(</span><span class="va"><a href="https://dplyr.tidyverse.org">dplyr</a></span><span class="op">)</span> <span class="co"># to support pipes: %>%</span>
|
<code class="sourceCode R"><span class="kw"><a href="https://rdrr.io/r/base/library.html" class="external-link">library</a></span><span class="op">(</span><span class="va"><a href="https://dplyr.tidyverse.org" class="external-link">dplyr</a></span><span class="op">)</span> <span class="co"># to support pipes: %>%</span>
|
||||||
<span class="kw"><a href="https://rdrr.io/r/base/library.html">library</a></span><span class="op">(</span><span class="va"><a href="https://github.com/msberends/cleaner">cleaner</a></span><span class="op">)</span> <span class="co"># to create frequency tables</span></code></pre></div>
|
<span class="kw"><a href="https://rdrr.io/r/base/library.html" class="external-link">library</a></span><span class="op">(</span><span class="va"><a href="https://github.com/msberends/cleaner" class="external-link">cleaner</a></span><span class="op">)</span> <span class="co"># to create frequency tables</span></code></pre></div>
|
||||||
<div class="sourceCode" id="cb5"><pre class="downlit sourceCode r">
|
<div class="sourceCode" id="cb5"><pre class="downlit sourceCode r">
|
||||||
<code class="sourceCode R"><span class="va">example_isolates</span> <span class="op">%>%</span>
|
<code class="sourceCode R"><span class="va">example_isolates</span> <span class="op">%>%</span>
|
||||||
<span class="fu"><a href="../reference/mdro.html">mdro</a></span><span class="op">(</span><span class="op">)</span> <span class="op">%>%</span>
|
<span class="fu"><a href="../reference/mdro.html">mdro</a></span><span class="op">(</span><span class="op">)</span> <span class="op">%>%</span>
|
||||||
<span class="fu"><a href="https://rdrr.io/pkg/cleaner/man/freq.html">freq</a></span><span class="op">(</span><span class="op">)</span> <span class="co"># show frequency table of the result</span>
|
<span class="fu"><a href="https://rdrr.io/pkg/cleaner/man/freq.html" class="external-link">freq</a></span><span class="op">(</span><span class="op">)</span> <span class="co"># show frequency table of the result</span>
|
||||||
|
<span class="co"># ℹ Using column 'mo' as input for `col_mo`.</span>
|
||||||
|
<span class="co"># Auto-guessing columns suitable for analysis... OK.</span>
|
||||||
|
<span class="co"># ℹ Reliability would be improved if these antimicrobial results would be</span>
|
||||||
|
<span class="co"># available too: ampicillin/sulbactam (SAM), aztreonam (ATM), cefotetan</span>
|
||||||
|
<span class="co"># (CTT), ceftaroline (CPT), daptomycin (DAP), doripenem (DOR), ertapenem</span>
|
||||||
|
<span class="co"># (ETP), fusidic acid (FUS), gentamicin-high (GEH), levofloxacin (LVX),</span>
|
||||||
|
<span class="co"># minocycline (MNO), netilmicin (NET), polymyxin B (PLB),</span>
|
||||||
|
<span class="co"># quinupristin/dalfopristin (QDA), streptomycin-high (STH), telavancin (TLV)</span>
|
||||||
|
<span class="co"># and ticarcillin/clavulanic acid (TCC)</span>
|
||||||
|
<span class="co"># Table 1 - Staphylococcus aureus... OK.</span>
|
||||||
|
<span class="co"># Table 2 - Enterococcus spp.... OK.</span>
|
||||||
|
<span class="co"># Table 3 - Enterobacteriaceae... OK.</span>
|
||||||
|
<span class="co"># Table 4 - Pseudomonas aeruginosa... OK.</span>
|
||||||
|
<span class="co"># Table 5 - Acinetobacter spp.... OK.</span>
|
||||||
<span class="co"># Warning: NA introduced for isolates where the available percentage of antimicrobial</span>
|
<span class="co"># Warning: NA introduced for isolates where the available percentage of antimicrobial</span>
|
||||||
<span class="co"># classes was below 50% (set with `pct_required_classes`)</span></code></pre></div>
|
<span class="co"># classes was below 50% (set with `pct_required_classes`)</span></code></pre></div>
|
||||||
|
<p>Only results with ‘R’ are considered as resistance. Use <code>combine_SI = FALSE</code> to also consider ‘I’ as resistance.</p>
|
||||||
|
<p>Determining multidrug-resistant organisms (MDRO), according to: Guideline: Multidrug-resistant, extensively drug-resistant and pandrug-resistant bacteria: an international expert proposal for interim standard definitions for acquired resistance. Author(s): Magiorakos AP, Srinivasan A, Carey RB, …, Vatopoulos A, Weber JT, Monnet DL Source: Clinical Microbiology and Infection 18:3, 2012; doi: 10.1111/j.1469-0691.2011.03570.x</p>
|
||||||
<p><strong>Frequency table</strong></p>
|
<p><strong>Frequency table</strong></p>
|
||||||
<p>Class: factor > ordered (numeric)<br>
|
<p>Class: factor > ordered (numeric)<br>
|
||||||
Length: 2,000<br>
|
Length: 2,000<br>
|
||||||
@@ -319,16 +337,16 @@ Unique: 2</p>
|
|||||||
<div class="sourceCode" id="cb6"><pre class="downlit sourceCode r">
|
<div class="sourceCode" id="cb6"><pre class="downlit sourceCode r">
|
||||||
<code class="sourceCode R"><span class="co"># random_rsi() is a helper function to generate</span>
|
<code class="sourceCode R"><span class="co"># random_rsi() is a helper function to generate</span>
|
||||||
<span class="co"># a random vector with values S, I and R</span>
|
<span class="co"># a random vector with values S, I and R</span>
|
||||||
<span class="va">my_TB_data</span> <span class="op"><-</span> <span class="fu"><a href="https://rdrr.io/r/base/data.frame.html">data.frame</a></span><span class="op">(</span>rifampicin <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
<span class="va">my_TB_data</span> <span class="op"><-</span> <span class="fu"><a href="https://rdrr.io/r/base/data.frame.html" class="external-link">data.frame</a></span><span class="op">(</span>rifampicin <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
||||||
isoniazid <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
isoniazid <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
||||||
gatifloxacin <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
gatifloxacin <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
||||||
ethambutol <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
ethambutol <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
||||||
pyrazinamide <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
pyrazinamide <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
||||||
moxifloxacin <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
moxifloxacin <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
||||||
kanamycin <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span><span class="op">)</span></code></pre></div>
|
kanamycin <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span><span class="op">)</span></code></pre></div>
|
||||||
<p>Because all column names are automatically verified for valid drug names or codes, this would have worked exactly the same:</p>
|
<p>Because all column names are automatically verified for valid drug names or codes, this would have worked exactly the same way:</p>
|
||||||
<div class="sourceCode" id="cb7"><pre class="downlit sourceCode r">
|
<div class="sourceCode" id="cb7"><pre class="downlit sourceCode r">
|
||||||
<code class="sourceCode R"><span class="va">my_TB_data</span> <span class="op"><-</span> <span class="fu"><a href="https://rdrr.io/r/base/data.frame.html">data.frame</a></span><span class="op">(</span>RIF <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
<code class="sourceCode R"><span class="va">my_TB_data</span> <span class="op"><-</span> <span class="fu"><a href="https://rdrr.io/r/base/data.frame.html" class="external-link">data.frame</a></span><span class="op">(</span>RIF <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
||||||
INH <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
INH <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
||||||
GAT <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
GAT <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
||||||
ETH <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
ETH <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span>,
|
||||||
@@ -337,20 +355,20 @@ Unique: 2</p>
|
|||||||
KAN <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span><span class="op">)</span></code></pre></div>
|
KAN <span class="op">=</span> <span class="fu"><a href="../reference/random.html">random_rsi</a></span><span class="op">(</span><span class="fl">5000</span><span class="op">)</span><span class="op">)</span></code></pre></div>
|
||||||
<p>The data set now looks like this:</p>
|
<p>The data set now looks like this:</p>
|
||||||
<div class="sourceCode" id="cb8"><pre class="downlit sourceCode r">
|
<div class="sourceCode" id="cb8"><pre class="downlit sourceCode r">
|
||||||
<code class="sourceCode R"><span class="fu"><a href="https://rdrr.io/r/utils/head.html">head</a></span><span class="op">(</span><span class="va">my_TB_data</span><span class="op">)</span>
|
<code class="sourceCode R"><span class="fu"><a href="https://rdrr.io/r/utils/head.html" class="external-link">head</a></span><span class="op">(</span><span class="va">my_TB_data</span><span class="op">)</span>
|
||||||
<span class="co"># rifampicin isoniazid gatifloxacin ethambutol pyrazinamide moxifloxacin</span>
|
<span class="co"># rifampicin isoniazid gatifloxacin ethambutol pyrazinamide moxifloxacin</span>
|
||||||
<span class="co"># 1 I I I I S S</span>
|
<span class="co"># 1 S I I R I I</span>
|
||||||
<span class="co"># 2 R I S I I I</span>
|
<span class="co"># 2 S S I I R R</span>
|
||||||
<span class="co"># 3 S R R R R I</span>
|
<span class="co"># 3 I S S I I R</span>
|
||||||
<span class="co"># 4 S R S S R S</span>
|
<span class="co"># 4 S R S R S R</span>
|
||||||
<span class="co"># 5 R S I R S R</span>
|
<span class="co"># 5 R S R S R R</span>
|
||||||
<span class="co"># 6 R R R R I I</span>
|
<span class="co"># 6 I S S R I S</span>
|
||||||
<span class="co"># kanamycin</span>
|
<span class="co"># kanamycin</span>
|
||||||
<span class="co"># 1 I</span>
|
<span class="co"># 1 I</span>
|
||||||
<span class="co"># 2 I</span>
|
<span class="co"># 2 R</span>
|
||||||
<span class="co"># 3 S</span>
|
<span class="co"># 3 I</span>
|
||||||
<span class="co"># 4 R</span>
|
<span class="co"># 4 R</span>
|
||||||
<span class="co"># 5 I</span>
|
<span class="co"># 5 R</span>
|
||||||
<span class="co"># 6 I</span></code></pre></div>
|
<span class="co"># 6 I</span></code></pre></div>
|
||||||
<p>We can now add the interpretation of MDR-TB to our data set. You can use:</p>
|
<p>We can now add the interpretation of MDR-TB to our data set. You can use:</p>
|
||||||
<div class="sourceCode" id="cb9"><pre class="downlit sourceCode r">
|
<div class="sourceCode" id="cb9"><pre class="downlit sourceCode r">
|
||||||
@@ -359,10 +377,22 @@ Unique: 2</p>
|
|||||||
<div class="sourceCode" id="cb10"><pre class="downlit sourceCode r">
|
<div class="sourceCode" id="cb10"><pre class="downlit sourceCode r">
|
||||||
<code class="sourceCode R"><span class="va">my_TB_data</span><span class="op">$</span><span class="va">mdr</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mdro.html">mdr_tb</a></span><span class="op">(</span><span class="va">my_TB_data</span><span class="op">)</span>
|
<code class="sourceCode R"><span class="va">my_TB_data</span><span class="op">$</span><span class="va">mdr</span> <span class="op"><-</span> <span class="fu"><a href="../reference/mdro.html">mdr_tb</a></span><span class="op">(</span><span class="va">my_TB_data</span><span class="op">)</span>
|
||||||
<span class="co"># ℹ No column found as input for `col_mo`, assuming all rows contain</span>
|
<span class="co"># ℹ No column found as input for `col_mo`, assuming all rows contain</span>
|
||||||
<span class="co"># Mycobacterium tuberculosis.</span></code></pre></div>
|
<span class="co"># Mycobacterium tuberculosis.</span>
|
||||||
|
<span class="co"># Auto-guessing columns suitable for analysis... OK.</span>
|
||||||
|
<span class="co"># ℹ Reliability would be improved if these antimicrobial results would be</span>
|
||||||
|
<span class="co"># available too: capreomycin (CAP), rifabutin (RIB) and rifapentine (RFP)</span>
|
||||||
|
<span class="co"># </span>
|
||||||
|
<span class="co"># Only results with 'R' are considered as resistance. Use `combine_SI = FALSE` to also consider 'I' as resistance.</span>
|
||||||
|
<span class="co"># </span>
|
||||||
|
<span class="co"># Determining multidrug-resistant organisms (MDRO), according to:</span>
|
||||||
|
<span class="co"># Guideline: Companion handbook to the WHO guidelines for the programmatic</span>
|
||||||
|
<span class="co"># management of drug-resistant tuberculosis</span>
|
||||||
|
<span class="co"># Author(s): WHO (World Health Organization)</span>
|
||||||
|
<span class="co"># Version: WHO/HTM/TB/2014.11, 2014</span>
|
||||||
|
<span class="co"># Source: https://www.who.int/tb/publications/pmdt_companionhandbook/en/</span></code></pre></div>
|
||||||
<p>Create a frequency table of the results:</p>
|
<p>Create a frequency table of the results:</p>
|
||||||
<div class="sourceCode" id="cb11"><pre class="downlit sourceCode r">
|
<div class="sourceCode" id="cb11"><pre class="downlit sourceCode r">
|
||||||
<code class="sourceCode R"><span class="fu"><a href="https://rdrr.io/pkg/cleaner/man/freq.html">freq</a></span><span class="op">(</span><span class="va">my_TB_data</span><span class="op">$</span><span class="va">mdr</span><span class="op">)</span></code></pre></div>
|
<code class="sourceCode R"><span class="fu"><a href="https://rdrr.io/pkg/cleaner/man/freq.html" class="external-link">freq</a></span><span class="op">(</span><span class="va">my_TB_data</span><span class="op">$</span><span class="va">mdr</span><span class="op">)</span></code></pre></div>
|
||||||
<p><strong>Frequency table</strong></p>
|
<p><strong>Frequency table</strong></p>
|
||||||
<p>Class: factor > ordered (numeric)<br>
|
<p>Class: factor > ordered (numeric)<br>
|
||||||
Length: 5,000<br>
|
Length: 5,000<br>
|
||||||
@@ -382,40 +412,40 @@ Unique: 5</p>
|
|||||||
<tr class="odd">
|
<tr class="odd">
|
||||||
<td align="left">1</td>
|
<td align="left">1</td>
|
||||||
<td align="left">Mono-resistant</td>
|
<td align="left">Mono-resistant</td>
|
||||||
<td align="right">3271</td>
|
<td align="right">3144</td>
|
||||||
<td align="right">65.42%</td>
|
<td align="right">62.88%</td>
|
||||||
<td align="right">3271</td>
|
<td align="right">3144</td>
|
||||||
<td align="right">65.42%</td>
|
<td align="right">62.88%</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="even">
|
<tr class="even">
|
||||||
<td align="left">2</td>
|
<td align="left">2</td>
|
||||||
<td align="left">Negative</td>
|
<td align="left">Negative</td>
|
||||||
<td align="right">949</td>
|
<td align="right">1027</td>
|
||||||
<td align="right">18.98%</td>
|
<td align="right">20.54%</td>
|
||||||
<td align="right">4220</td>
|
<td align="right">4171</td>
|
||||||
<td align="right">84.40%</td>
|
<td align="right">83.42%</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="odd">
|
<tr class="odd">
|
||||||
<td align="left">3</td>
|
<td align="left">3</td>
|
||||||
<td align="left">Multi-drug-resistant</td>
|
<td align="left">Multi-drug-resistant</td>
|
||||||
<td align="right">449</td>
|
<td align="right">464</td>
|
||||||
<td align="right">8.98%</td>
|
<td align="right">9.28%</td>
|
||||||
<td align="right">4669</td>
|
<td align="right">4635</td>
|
||||||
<td align="right">93.38%</td>
|
<td align="right">92.70%</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="even">
|
<tr class="even">
|
||||||
<td align="left">4</td>
|
<td align="left">4</td>
|
||||||
<td align="left">Poly-resistant</td>
|
<td align="left">Poly-resistant</td>
|
||||||
<td align="right">240</td>
|
<td align="right">257</td>
|
||||||
<td align="right">4.80%</td>
|
<td align="right">5.14%</td>
|
||||||
<td align="right">4909</td>
|
<td align="right">4892</td>
|
||||||
<td align="right">98.18%</td>
|
<td align="right">97.84%</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="odd">
|
<tr class="odd">
|
||||||
<td align="left">5</td>
|
<td align="left">5</td>
|
||||||
<td align="left">Extensively drug-resistant</td>
|
<td align="left">Extensively drug-resistant</td>
|
||||||
<td align="right">91</td>
|
<td align="right">108</td>
|
||||||
<td align="right">1.82%</td>
|
<td align="right">2.16%</td>
|
||||||
<td align="right">5000</td>
|
<td align="right">5000</td>
|
||||||
<td align="right">100.00%</td>
|
<td align="right">100.00%</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -433,11 +463,13 @@ Unique: 5</p>
|
|||||||
|
|
||||||
|
|
||||||
<footer><div class="copyright">
|
<footer><div class="copyright">
|
||||||
<p>Developed by <a href="https://www.rug.nl/staff/m.s.berends/">Matthijs S. Berends</a>, <a href="https://www.rug.nl/staff/c.f.luz/">Christian F. Luz</a>, <a href="https://www.rug.nl/staff/a.w.friedrich/">Alexander W. Friedrich</a>, <a href="https://www.rug.nl/staff/b.sinha/">Bhanu N. M. Sinha</a>, <a href="https://www.rug.nl/staff/c.j.albers/">Casper J. Albers</a>, <a href="https://www.rug.nl/staff/c.glasner/">Corinna Glasner</a>.</p>
|
<p></p>
|
||||||
|
<p>Developed by <a href="https://www.rug.nl/staff/m.s.berends/" class="external-link external-link">Matthijs S. Berends</a>, <a href="https://www.rug.nl/staff/c.f.luz/" class="external-link external-link">Christian F. Luz</a>, <a href="https://www.rug.nl/staff/a.w.friedrich/" class="external-link external-link">Alexander W. Friedrich</a>, <a href="https://www.rug.nl/staff/b.sinha/" class="external-link external-link">Bhanu N. M. Sinha</a>, <a href="https://www.rug.nl/staff/c.j.albers/" class="external-link external-link">Casper J. Albers</a>, <a href="https://www.rug.nl/staff/c.glasner/" class="external-link external-link">Corinna Glasner</a>.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="pkgdown">
|
<div class="pkgdown">
|
||||||
<p>Site built with <a href="https://pkgdown.r-lib.org/">pkgdown</a> 1.6.1.</p>
|
<p></p>
|
||||||
|
<p>Site built with <a href="https://pkgdown.r-lib.org/" class="external-link external-link">pkgdown</a> 1.6.1.9001.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</footer>
|
</footer>
|
||||||
@@ -446,5 +478,7 @@ Unique: 5</p>
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1,15 +0,0 @@
|
|||||||
// Hide empty <a> tag within highlighted CodeBlock for screen reader accessibility (see https://github.com/jgm/pandoc/issues/6352#issuecomment-626106786) -->
|
|
||||||
// v0.0.1
|
|
||||||
// Written by JooYoung Seo (jooyoung@psu.edu) and Atsushi Yasumoto on June 1st, 2020.
|
|
||||||
|
|
||||||
document.addEventListener('DOMContentLoaded', function() {
|
|
||||||
const codeList = document.getElementsByClassName("sourceCode");
|
|
||||||
for (var i = 0; i < codeList.length; i++) {
|
|
||||||
var linkList = codeList[i].getElementsByTagName('a');
|
|
||||||
for (var j = 0; j < linkList.length; j++) {
|
|
||||||
if (linkList[j].innerHTML === "") {
|
|
||||||
linkList[j].setAttribute('aria-hidden', 'true');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||