eucast_rules.Rd
Apply susceptibility rules as defined by the European Committee on Antimicrobial Susceptibility Testing (EUCAST, http://eucast.org), see Source. This includes (1) expert rules, (2) intrinsic resistance and (3) inferred resistance as defined in their breakpoint tables.
eucast_rules(x, col_mo = NULL, info = TRUE, rules = c("breakpoints", "expert", "other", "all"), verbose = FALSE, amcl = guess_ab_col(), amik = guess_ab_col(), amox = guess_ab_col(), ampi = guess_ab_col(), azit = guess_ab_col(), azlo = guess_ab_col(), aztr = guess_ab_col(), cefa = guess_ab_col(), cfep = guess_ab_col(), cfot = guess_ab_col(), cfox = guess_ab_col(), cfra = guess_ab_col(), cfta = guess_ab_col(), cftr = guess_ab_col(), cfur = guess_ab_col(), chlo = guess_ab_col(), cipr = guess_ab_col(), clar = guess_ab_col(), clin = guess_ab_col(), clox = guess_ab_col(), coli = guess_ab_col(), czol = guess_ab_col(), dapt = guess_ab_col(), doxy = guess_ab_col(), erta = guess_ab_col(), eryt = guess_ab_col(), fosf = guess_ab_col(), fusi = guess_ab_col(), gent = guess_ab_col(), imip = guess_ab_col(), kana = guess_ab_col(), levo = guess_ab_col(), linc = guess_ab_col(), line = guess_ab_col(), mero = guess_ab_col(), mezl = guess_ab_col(), mino = guess_ab_col(), moxi = guess_ab_col(), nali = guess_ab_col(), neom = guess_ab_col(), neti = guess_ab_col(), nitr = guess_ab_col(), norf = guess_ab_col(), novo = guess_ab_col(), oflo = guess_ab_col(), oxac = guess_ab_col(), peni = guess_ab_col(), pipe = guess_ab_col(), pita = guess_ab_col(), poly = guess_ab_col(), pris = guess_ab_col(), qida = guess_ab_col(), rifa = guess_ab_col(), roxi = guess_ab_col(), siso = guess_ab_col(), teic = guess_ab_col(), tetr = guess_ab_col(), tica = guess_ab_col(), tige = guess_ab_col(), tobr = guess_ab_col(), trim = guess_ab_col(), trsu = guess_ab_col(), vanc = guess_ab_col(), ...) eucast_rules_file()
x | data with antibiotic columns, like e.g. |
---|---|
col_mo | column name of the unique IDs of the microorganisms (see |
info | print progress |
rules | a character vector that specifies which rules should be applied - one or more of |
verbose | a logical to indicate whether extensive info should be returned as a |
amcl, amik, amox, ampi, azit, azlo, aztr, cefa, cfep, cfot, cfox, cfra, cfta, cftr, cfur, chlo, cipr, clar, clin, clox, coli, czol, dapt, doxy, erta, eryt, fosf, fusi, gent, imip, kana, levo, linc, line, mero, mezl, mino, moxi, nali, neom, neti, nitr, norf, novo, oflo, oxac, peni, pipe, pita, poly, pris, qida, rifa, roxi, siso, teic, tetr, tica, tige, tobr, trim, trsu, vanc | column name of an antibiotic, see Antibiotics |
... | parameters that are passed on to |
EUCAST Expert Rules. Version 2.0, 2012.
Leclercq et al. EUCAST expert rules in antimicrobial susceptibility testing. Clin Microbiol Infect. 2013;19(2):141-60.
https://doi.org/10.1111/j.1469-0691.2011.03703.x
EUCAST Expert Rules, Intrinsic Resistance and Exceptional Phenotypes Tables. Version 3.1, 2016.
http://www.eucast.org/fileadmin/src/media/PDFs/EUCAST_files/Expert_Rules/Expert_rules_intrinsic_exceptional_V3.1.pdf
EUCAST Breakpoint tables for interpretation of MICs and zone diameters. Version 9.0, 2019.
http://www.eucast.org/fileadmin/src/media/PDFs/EUCAST_files/Breakpoint_tables/v_9.0_Breakpoint_Tables.xlsx
For editing the reference file (which is available with eucast_rules_file
), these values can all be used for target antibiotics: aminoglycosides, tetracyclines, polymyxins, macrolides, glycopeptides, streptogramins, cephalosporins, cephalosporins_without_cfta, carbapenems, aminopenicillins, ureidopenicillins, fluoroquinolones, all_betalactams, and all separate four letter codes like amcl. They can be separated by comma: "amcl, fluoroquinolones"
. The mo_property can be any column name from the microorganisms
data set, or genus_species
or gramstain
. This file contains references to the 'Burkholderia cepacia complex'. The species in this group can be found in: LiPuma JJ, 2015 (PMID 16217180).
The input of tbl_
, possibly with edited values of antibiotics. Or, if verbose = TRUE
, a data.frame
with all original and new values of the affected bug-drug combinations.
NOTE: This function does not translate MIC values to RSI values. It only applies (1) inferred susceptibility and resistance based on results of other antibiotics and (2) intrinsic resistance based on taxonomic properties of a microorganism.
The file used for applying all EUCAST rules can be retrieved with eucast_rules_file()
. It returns an easily readable data set containing all rules. The original TSV file (tab separated file) that is being read by this function can be found when running this command:
AMR::EUCAST_RULES_FILE_LOCATION
(without brackets).
In the source code it is located under ./inst/eucast/eucast_rules.tsv
.
Note: When ampicillin (J01CA01) is not available but amoxicillin (J01CA04) is, the latter will be used for all rules where there is a dependency on ampicillin. These drugs are interchangeable when it comes to expression of antimicrobial resistance.
To define antibiotics column names, leave as it is to determine it automatically with guess_ab_col
or input a text (case-insensitive) or use NULL
to skip a column (e.g. tica = NULL
). Non-existing columns will anyway be skipped with a warning.
Abbrevations of the column containing antibiotics in the form: abbreviation: generic name (ATC code)
amcl: amoxicillin+clavulanic acid (J01CR02), amik: amikacin (J01GB06), amox: amoxicillin (J01CA04), ampi: ampicillin (J01CA01), azit: azithromycin (J01FA10), azlo: azlocillin (J01CA09), aztr: aztreonam (J01DF01), cefa: cefaloridine (J01DB02), cfep: cefepime (J01DE01), cfot: cefotaxime (J01DD01), cfox: cefoxitin (J01DC01), cfra: cefradine (J01DB09), cfta: ceftazidime (J01DD02), cftr: ceftriaxone (J01DD04), cfur: cefuroxime (J01DC02), chlo: chloramphenicol (J01BA01), cipr: ciprofloxacin (J01MA02), clar: clarithromycin (J01FA09), clin: clindamycin (J01FF01), clox: flucloxacillin (J01CF05), coli: colistin (J01XB01), czol: cefazolin (J01DB04), dapt: daptomycin (J01XX09), doxy: doxycycline (J01AA02), erta: ertapenem (J01DH03), eryt: erythromycin (J01FA01), fosf: fosfomycin (J01XX01), fusi: fusidic acid (J01XC01), gent: gentamicin (J01GB03), imip: imipenem (J01DH51), kana: kanamycin (J01GB04), levo: levofloxacin (J01MA12), linc: lincomycin (J01FF02), line: linezolid (J01XX08), mero: meropenem (J01DH02), mezl: mezlocillin (J01CA10), mino: minocycline (J01AA08), moxi: moxifloxacin (J01MA14), nali: nalidixic acid (J01MB02), neom: neomycin (J01GB05), neti: netilmicin (J01GB07), nitr: nitrofurantoin (J01XE01), norf: norfloxacin (J01MA06), novo: novobiocin (an ATCvet code: QJ01XX95), oflo: ofloxacin (J01MA01), peni: (benzyl)penicillin (J01CE01), pipe: piperacillin (J01CA12), pita: piperacillin+tazobactam (J01CR05), poly: polymyxin B (J01XB02), pris: pristinamycin (J01FG01), qida: quinupristin/dalfopristin (J01FG02), rifa: rifampicin (J04AB02), roxi: roxithromycin (J01FA06), siso: sisomicin (J01GB08), teic: teicoplanin (J01XA02), tetr: tetracycline (J01AA07), tica: ticarcillin (J01CA13), tige: tigecycline (J01AA12), tobr: tobramycin (J01GB01), trim: trimethoprim (J01EA01), trsu: sulfamethoxazole and trimethoprim (J01EE01), vanc: vancomycin (J01XA01).
On our website https://msberends.gitlab.io/AMR you can find a comprehensive tutorial about how to conduct AMR analysis, the complete documentation of all functions (which reads a lot easier than here in R) and an example analysis using WHONET data.
# NOT RUN { a <- eucast_rules(septic_patients) a <- data.frame(mo = c("Staphylococcus aureus", "Enterococcus faecalis", "Escherichia coli", "Klebsiella pneumoniae", "Pseudomonas aeruginosa"), vanc = "-", # Vancomycin amox = "-", # Amoxicillin coli = "-", # Colistin cfta = "-", # Ceftazidime cfur = "-", # Cefuroxime peni = "S", # Benzylpenicillin cfox = "S", # Cefoxitin stringsAsFactors = FALSE) a # mo vanc amox coli cfta cfur peni cfox # 1 Staphylococcus aureus - - - - - S S # 2 Enterococcus faecalis - - - - - S S # 3 Escherichia coli - - - - - S S # 4 Klebsiella pneumoniae - - - - - S S # 5 Pseudomonas aeruginosa - - - - - S S # apply EUCAST rules: 18 results are forced as R or S b <- eucast_rules(a) b # mo vanc amox coli cfta cfur peni cfox # 1 Staphylococcus aureus - S R R S S S # 2 Enterococcus faecalis - - R R R S R # 3 Escherichia coli R - - - - R S # 4 Klebsiella pneumoniae R R - - - R S # 5 Pseudomonas aeruginosa R R - - R R R # do not apply EUCAST rules, but rather get a a data.frame # with 18 rows, containing all details about the transformations: c <- eucast_rules(a, verbose = TRUE) # }