You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

149 lines
4.3 KiB

5 years ago
# `AMR`
This is an [R package]( to simplify the analysis of Antimicrobial Resistance (AMR).
## Why this package?
This R package contains functions to make microbiological, epidemiological data analysis easier. It allows the use of some new S3 classes to work with MIC values and antimicrobial interpretations (i.e. values S, I and R).
This R package was created for academic research by PhD students of the [University of Groningen](
## How to use it?
# Call it with:
# For a list of functions:
help(package = "AMR")
### Databases included in package
# Dataset with ATC antibiotics codes, official names and DDD's (oral and parenteral)
ablist # A tibble: 420 x 12
# Dataset with bacteria codes and properties like gram stain and aerobic/anaerobic
bactlist # A tibble: 2,507 x 10
### New classes
This package contains two new S3 classes: `mic` for MIC values (e.g. from Vitek or Phoenix) and `rsi` for antimicrobial drug interpretations (i.e. S, I and R). Both are actually ordered factors under the hood (an MIC of `2` being higher than `<=1` but lower than `>=32`, and for class `rsi` factors are ordered as `S < I < R`).
Both classes have extensions for existing generic functions like `print`, `summary` and `plot`.
# Transform values to new classes
mic_data <- as.mic(c(">=32", "1.0", "8", "<=0.128", "8", "16", "16"))
rsi_data <- as.rsi(c(rep("S", 474), rep("I", 36), rep("R", 370)))
These functions also try to coerce valid values.
Quick overviews when just printing objects:
# Class 'mic': 7 isolates
# <NA> 0
# <=0.128 1 8 16 >=32
# 1 1 2 2 1
# Class 'rsi': 880 isolates
# <NA>: 0
# Sum of S: 474
# Sum of IR: 406
# - Sum of R: 370
# - Sum of I: 36
# %S %IR %I %R
# 53.9 46.1 4.1 42.0
A plot of `rsi_data`:
Other epidemiological functions:
# Apply EUCAST Expert Rules v3.1 (latest) to antibiotic columns
# Determine key antibiotic based on bacteria ID
# Check if key antibiotics are equal
# Selection of first isolates of any patient
# Calculate resistance levels of antibiotics
# Predict resistance levels of antibiotics
# Get name of antibiotic by ATC code
abname("J01CR02", from = "atc", to = "umcg") # "AMCL"
# Calculate age of patients
# Categorize patients age to age groups
## How to get it?
This package is only available here on GitHub, but respects the [CRAN Repository Policy](
*Installation commands:*
*Working behind a proxy? Then use:*
"any")) # change "any" to "basic" or "digest" if needed
## Authors
- [Berends MS](<sup>1,2</sup>
- [Luz CF](<sup>1</sup>
- [Hassing EEA](<sup>2</sup> (contributor)
<sup>1</sup> Department of Medical Microbiology, University of Groningen, University Medical Center Groningen, Groningen, the Netherlands
<sup>2</sup> Department of Medical, Market and Innovation (MMI), Certe Medische diagnostiek & advies, Groningen, the Netherlands
## Copyright
This R package is licensed under the [GNU General Public License (GPL) v2.0]( In a nutshell, this means that this package:
- May be used for commercial purposes
- May be used for private purposes
- May be modified, although:
- Modifications **must** be released under the same license when distributing the package
- Changes made to the code **must** be documented
- May be distributed, although:
- Source code **must** be made available when the package is distributed
- A copy of the license and copyright notice **must** be included with the package.
- Comes with a LIMITATION of liability
- Comes with NO warranty