6.1 KiB
(Key) Antimicrobials for First Weighted Isolates
These functions can be used to determine first weighted isolates by
considering the phenotype for isolate selection (see
first_isolate()).
Using a phenotype-based method to determine first isolates is more
reliable than methods that disregard phenotypes.
Usage
key_antimicrobials(x = NULL, col_mo = NULL, universal = c("ampicillin",
"amoxicillin/clavulanic acid", "cefuroxime", "piperacillin/tazobactam",
"ciprofloxacin", "trimethoprim/sulfamethoxazole"),
gram_negative = c("gentamicin", "tobramycin", "colistin", "cefotaxime",
"ceftazidime", "meropenem"), gram_positive = c("vancomycin", "teicoplanin",
"tetracycline", "erythromycin", "oxacillin", "rifampin"),
antifungal = c("anidulafungin", "caspofungin", "fluconazole", "miconazole",
"nystatin", "voriconazole"), only_sir_columns = any(is.sir(x)), ...)
all_antimicrobials(x = NULL, only_sir_columns = any(is.sir(x)), ...)
antimicrobials_equal(y, z, type = c("points", "keyantimicrobials"),
ignore_I = TRUE, points_threshold = 2, ...)
Arguments
-
x:
A data.frame with antimicrobials columns, like
AMXoramox. Can be left blank to determine automatically. -
col_mo:
Column name of the names or codes of the microorganisms (see
as.mo()) - the default is the first column of classmo. Values will be coerced usingas.mo(). -
universal:
Names of broad-spectrum antimicrobial drugs, case-insensitive. Set to
NULLto ignore. See Details for the default antimicrobial drugs. -
gram_negative:
Names of antibiotic drugs for Gram-positives, case-insensitive. Set to
NULLto ignore. See Details for the default antibiotic drugs. -
gram_positive:
Names of antibiotic drugs for Gram-negatives, case-insensitive. Set to
NULLto ignore. See Details for the default antibiotic drugs. -
antifungal:
Names of antifungal drugs for fungi, case-insensitive. Set to
NULLto ignore. See Details for the default antifungal drugs. -
only_sir_columns:
A logical to indicate whether only antimicrobial columns must be included that were transformed to class sir on beforehand. Defaults to
FALSEif no columns ofxhave a class sir. -
...:
Ignored, only in place to allow future extensions.
-
y, z:
character vectors to compare.
-
type:
Type to determine weighed isolates; can be
"keyantimicrobials"or"points", see Details. -
ignore_I:
logical to indicate whether antibiotic interpretations with
"I"will be ignored whentype = "keyantimicrobials", see Details. -
points_threshold:
Minimum number of points to require before differences in the antibiogram will lead to inclusion of an isolate when
type = "points", see Details.
Details
The key_antimicrobials() and all_antimicrobials() functions are
context-aware. This means that the x argument can be left blank if
used inside a data.frame call,
see Examples.
The function key_antimicrobials() returns a
character vector with 12
antimicrobial results for every isolate. The function
all_antimicrobials() returns a
character vector with all
antimicrobial drug results for every isolate. These vectors can then be
compared using antimicrobials_equal(), to check if two isolates have
generally the same antibiogram. Missing and invalid values are replaced
with a dot (".") by key_antimicrobials() and ignored by
antimicrobials_equal().
Please see the
first_isolate()
function how these important functions enable the 'phenotype-based'
method for determination of first isolates.
The default antimicrobial drugs used for all rows (set in
universal) are:
-
Ampicillin
-
Amoxicillin/clavulanic acid
-
Cefuroxime
-
Ciprofloxacin
-
Piperacillin/tazobactam
-
Trimethoprim/sulfamethoxazole
The default antimicrobial drugs used for Gram-negative bacteria (set
in gram_negative) are:
-
Cefotaxime
-
Ceftazidime
-
Colistin
-
Gentamicin
-
Meropenem
-
Tobramycin
The default antimicrobial drugs used for Gram-positive bacteria (set
in gram_positive) are:
-
Erythromycin
-
Oxacillin
-
Rifampin
-
Teicoplanin
-
Tetracycline
-
Vancomycin
The default antimicrobial drugs used for fungi (set in antifungal)
are:
-
Anidulafungin
-
Caspofungin
-
Fluconazole
-
Miconazole
-
Nystatin
-
Voriconazole
See also
Examples
# `example_isolates` is a data set available in the AMR package.
# See ?example_isolates.
# output of the `key_antimicrobials()` function could be like this:
strainA <- "SSSRR.S.R..S"
strainB <- "SSSIRSSSRSSS"
# those strings can be compared with:
antimicrobials_equal(strainA, strainB, type = "keyantimicrobials")
#> [1] TRUE
# TRUE, because I is ignored (as well as missing values)
antimicrobials_equal(strainA, strainB, type = "keyantimicrobials", ignore_I = FALSE)
#> [1] FALSE
# FALSE, because I is not ignored and so the 4th [character] differs
# \donttest{
if (require("dplyr")) {
# set key antimicrobials to a new variable
my_patients <- example_isolates %>%
mutate(keyab = key_antimicrobials(antifungal = NULL)) %>% # no need to define `x`
mutate(
# now calculate first isolates
first_regular = first_isolate(col_keyantimicrobials = FALSE),
# and first WEIGHTED isolates
first_weighted = first_isolate(col_keyantimicrobials = "keyab")
)
# Check the difference in this data set, 'weighted' results in more isolates:
sum(my_patients$first_regular, na.rm = TRUE)
sum(my_patients$first_weighted, na.rm = TRUE)
}
#> [1] 1383
# }