# EUCAST rules — eucast_rules • AMR (for R)
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

`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(tbl, col_mo = NULL, info = TRUE,
      rules = c("breakpoints", "expert", "other", "all"), verbose = FALSE,
      amcl = "amcl", amik = "amik", amox = "amox", ampi = "ampi",
      azit = "azit", azlo = "azlo", aztr = "aztr", cefa = "cefa",
      cfep = "cfep", cfot = "cfot", cfox = "cfox", cfra = "cfra",
      cfta = "cfta", cftr = "cftr", cfur = "cfur", chlo = "chlo",
      cipr = "cipr", clar = "clar", clin = "clin", clox = "clox",
      coli = "coli", czol = "czol", dapt = "dapt", doxy = "doxy",
      erta = "erta", eryt = "eryt", fosf = "fosf", fusi = "fusi",
      gent = "gent", imip = "imip", kana = "kana", levo = "levo",
      linc = "linc", line = "line", mero = "mero", mezl = "mezl",
      mino = "mino", moxi = "moxi", nali = "nali", neom = "neom",
      neti = "neti", nitr = "nitr", norf = "norf", novo = "novo",
      oflo = "oflo", oxac = "oxac", peni = "peni", pipe = "pipe",
      pita = "pita", poly = "poly", pris = "pris", qida = "qida",
      rifa = "rifa", roxi = "roxi", siso = "siso", teic = "teic",
      tetr = "tetr", tica = "tica", tige = "tige", tobr = "tobr",
      trim = "trim", trsu = "trsu", vanc = "vanc")

    EUCAST_rules(...)

    interpretive_reading(...)

## Arguments

tbl | table with antibiotic columns, like e.g. `amox` and `amcl`
col_mo | column name of the unique IDs of the microorganisms (see `mo`), defaults to the first column of class `mo`. Values will be coerced using `as.mo`.
info | print progress
rules | a character vector that specifies which rules should be applied - one or more of `c("breakpoints", "expert", "other", "all")`
verbose | a logical to indicate whether extensive info should be returned as a `data.frame` with info about which rows and columns are effected

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_rules`

## Source

- 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 8.1, 2018.
  http://www.eucast.org/fileadmin/src/media/PDFs/EUCAST_files/Breakpoint_tables/v_8.1_Breakpoint_Tables.xlsx

## Value

The input of `tbl`, possibly with edited values of antibiotics. Or, if `verbose = TRUE`, a `data.frame` with verbose info.

## Antibiotics

To define antibiotics column names, 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: penicillin (J01RA01), 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).

## Examples

    # 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

    b <- eucast_rules(a, "mo") # 18 results are forced as R or S

    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
    # }