MDR.Rmd
With the function mdro()
, you can determine multi-drug resistant organisms (MDRO). It currently support these guidelines:
As an example, I will make a data set to determine multi-drug resistant TB:
# a helper function to get a random vector with values S, I and R
# with the probabilities 50%-10%-40%
sample_rsi <- function() {
sample(c("S", "I", "R"),
size = 5000,
prob = c(0.5, 0.1, 0.4),
replace = TRUE)
}
my_TB_data <- data.frame(rifampicin = sample_rsi(),
isoniazid = sample_rsi(),
gatifloxacin = sample_rsi(),
ethambutol = sample_rsi(),
pyrazinamide = sample_rsi(),
moxifloxacin = sample_rsi(),
kanamycin = sample_rsi())
Because all column names are automatically verified for valid drug names or codes, this would have worked exactly the same:
my_TB_data <- data.frame(RIF = sample_rsi(),
INH = sample_rsi(),
GAT = sample_rsi(),
ETH = sample_rsi(),
PZA = sample_rsi(),
MFX = sample_rsi(),
KAN = sample_rsi())
The data set looks like this now:
head(my_TB_data)
# rifampicin isoniazid gatifloxacin ethambutol pyrazinamide moxifloxacin
# 1 R R R R R S
# 2 S R R S R S
# 3 R S S I S S
# 4 R S S R S S
# 5 R R S I I R
# 6 R S S S S S
# kanamycin
# 1 S
# 2 R
# 3 S
# 4 R
# 5 S
# 6 I
We can now add the interpretation of MDR-TB to our data set:
my_TB_data$mdr <- mdr_tb(my_TB_data)
# NOTE: No column found as input for `col_mo`, assuming all records contain Mycobacterium tuberculosis.
# Determining multidrug-resistant organisms (MDRO), according to:
# Guideline: Companion handbook to the WHO guidelines for the programmatic management of drug-resistant tuberculosis
# Version: WHO/HTM/TB/2014.11
# Author: WHO (World Health Organization)
# Source: https://www.who.int/tb/publications/pmdt_companionhandbook/en/
# Warning: Reliability might be improved if these antimicrobial results
# would be available too: `CAP` (capreomycin), `RIB` (rifabutin), `RFP`
# (rifapentine)
And review the result with a frequency table:
freq(my_TB_data$mdr)
#
#
# **Frequency table of `mdr` from `my_TB_data` (5,000 x 8)**
#
# Class: `factor` > `ordered` (`numeric`)
# Length: 5,000 (of which NA: 0 = 0.00%)
# Levels: 5: `Negative` < `Mono-resistance` < `Poly-resistance` < `Multidrug res...`
# Unique: 5
#
#
# | |Item | Count| Percent| Cum. Count| Cum. Percent|
# |:--|:-------------------------|-----:|-------:|----------:|------------:|
# |1 |Mono-resistance | 3,297| 65.9%| 3,297| 65.9%|
# |2 |Negative | 627| 12.5%| 3,924| 78.5%|
# |3 |Multidrug resistance | 612| 12.2%| 4,536| 90.7%|
# |4 |Poly-resistance | 263| 5.3%| 4,799| 96.0%|
# |5 |Extensive drug resistance | 201| 4.0%| 5,000| 100.0%|