Skip to contents

Use these functions to return a specific property of an antibiotic from the antibiotics data set. All input values will be evaluated internally with as.ab().

Usage

ab_name(x, language = get_AMR_locale(), tolower = FALSE, ...)

ab_cid(x, ...)

ab_synonyms(x, ...)

ab_tradenames(x, ...)

ab_group(x, language = get_AMR_locale(), ...)

ab_atc(x, only_first = FALSE, ...)

ab_atc_group1(x, language = get_AMR_locale(), ...)

ab_atc_group2(x, language = get_AMR_locale(), ...)

ab_loinc(x, ...)

ab_ddd(x, administration = "oral", ...)

ab_ddd_units(x, administration = "oral", ...)

ab_info(x, language = get_AMR_locale(), ...)

ab_url(x, open = FALSE, ...)

ab_property(x, property = "name", language = get_AMR_locale(), ...)

set_ab_names(
  data,
  ...,
  property = "name",
  language = get_AMR_locale(),
  snake_case = NULL
)

Arguments

x

any (vector of) text that can be coerced to a valid antibiotic drug code with as.ab()

language

language of the returned text, defaults to system language (see get_AMR_locale()) and can also be set with the option AMR_locale. Use language = NULL or language = "" to prevent translation.

tolower

a logical to indicate whether the first character of every output should be transformed to a lower case character. This will lead to e.g. "polymyxin B" and not "polymyxin b".

...

in case of set_ab_names() and data is a data.frame: columns to select (supports tidy selection such as column1:column4), otherwise other arguments passed on to as.ab()

only_first

a logical to indicate whether only the first ATC code must be returned, with giving preference to J0-codes (i.e., the antimicrobial drug group)

administration

way of administration, either "oral" or "iv"

open

browse the URL using utils::browseURL()

property

one of the column names of one of the antibiotics data set: vector_or(colnames(antibiotics), sort = FALSE).

data

a data.frame of which the columns need to be renamed, or a character vector of column names

snake_case

a logical to indicate whether the names should be in so-called snake case: in lower case and all spaces/slashes replaced with an underscore (_)

Value

  • An integer in case of ab_cid()

  • A named list in case of ab_info() and multiple ab_atc()/ab_synonyms()/ab_tradenames()

  • A double in case of ab_ddd()

  • A data.frame in case of set_ab_names()

  • A character in all other cases

Details

All output will be translated where possible.

The function ab_url() will return the direct URL to the official WHO website. A warning will be returned if the required ATC code is not available.

The function set_ab_names() is a special column renaming function for data.frames. It renames columns names that resemble antimicrobial drugs. It always makes sure that the new column names are unique. If property = "atc" is set, preference is given to ATC codes from the J-group.

Source

World Health Organization (WHO) Collaborating Centre for Drug Statistics Methodology: https://www.whocc.no/atc_ddd_index/

European Commission Public Health PHARMACEUTICALS - COMMUNITY REGISTER: https://ec.europa.eu/health/documents/community-register/html/reg_hum_atc.htm

Reference Data Publicly Available

All data sets in this AMR package (about microorganisms, antibiotics, SIR interpretation, EUCAST rules, etc.) are publicly and freely available for download in the following formats: R, MS Excel, Apache Feather, Apache Parquet, SPSS, SAS, and Stata. We also provide tab-separated plain text files that are machine-readable and suitable for input in any software program, such as laboratory information systems. Please visit our website for the download links. The actual files are of course available on our GitHub repository.

See also

Examples

# all properties:
ab_name("AMX")
#> [1] "Amoxicillin"
ab_atc("AMX")
#> [1] "J01CA04"
ab_cid("AMX")
#> [1] 33613
ab_synonyms("AMX")
#>  [1] "actimoxi"            "amoclen"             "amolin"             
#>  [4] "amopen"              "amopenixin"          "amoxibiotic"        
#>  [7] "amoxicaps"           "amoxicilina"         "amoxicillin"        
#> [10] "amoxicillin hydrate" "amoxicilline"        "amoxicillinum"      
#> [13] "amoxiden"            "amoxil"              "amoxivet"           
#> [16] "amoxy"               "amoxycillin"         "amoxyke"            
#> [19] "anemolin"            "aspenil"             "atoksilin"          
#> [22] "biomox"              "bristamox"           "cemoxin"            
#> [25] "clamoxyl"            "damoxy"              "delacillin"         
#> [28] "demoksil"            "dispermox"           "efpenix"            
#> [31] "flemoxin"            "hiconcil"            "histocillin"        
#> [34] "hydroxyampicillin"   "ibiamox"             "imacillin"          
#> [37] "lamoxy"              "largopen"            "metafarma capsules" 
#> [40] "metifarma capsules"  "moksilin"            "moxacin"            
#> [43] "moxatag"             "ospamox"             "pamoxicillin"       
#> [46] "piramox"             "promoxil"            "remoxil"            
#> [49] "robamox"             "sawamox pm"          "tolodina"           
#> [52] "topramoxin"          "unicillin"           "utimox"             
#> [55] "vetramox"           
ab_tradenames("AMX")
#>  [1] "actimoxi"            "amoclen"             "amolin"             
#>  [4] "amopen"              "amopenixin"          "amoxibiotic"        
#>  [7] "amoxicaps"           "amoxicilina"         "amoxicillin"        
#> [10] "amoxicillin hydrate" "amoxicilline"        "amoxicillinum"      
#> [13] "amoxiden"            "amoxil"              "amoxivet"           
#> [16] "amoxy"               "amoxycillin"         "amoxyke"            
#> [19] "anemolin"            "aspenil"             "atoksilin"          
#> [22] "biomox"              "bristamox"           "cemoxin"            
#> [25] "clamoxyl"            "damoxy"              "delacillin"         
#> [28] "demoksil"            "dispermox"           "efpenix"            
#> [31] "flemoxin"            "hiconcil"            "histocillin"        
#> [34] "hydroxyampicillin"   "ibiamox"             "imacillin"          
#> [37] "lamoxy"              "largopen"            "metafarma capsules" 
#> [40] "metifarma capsules"  "moksilin"            "moxacin"            
#> [43] "moxatag"             "ospamox"             "pamoxicillin"       
#> [46] "piramox"             "promoxil"            "remoxil"            
#> [49] "robamox"             "sawamox pm"          "tolodina"           
#> [52] "topramoxin"          "unicillin"           "utimox"             
#> [55] "vetramox"           
ab_group("AMX")
#> [1] "Beta-lactams/penicillins"
ab_atc_group1("AMX")
#> [1] "Beta-lactam antibacterials, penicillins"
ab_atc_group2("AMX")
#> [1] "Penicillins with extended spectrum"
ab_url("AMX")
#>                                                           Amoxicillin 
#> "https://www.whocc.no/atc_ddd_index/?code=J01CA04&showdescription=no" 

# smart lowercase tranformation
ab_name(x = c("AMC", "PLB"))
#> [1] "Amoxicillin/clavulanic acid" "Polymyxin B"                
ab_name(x = c("AMC", "PLB"), tolower = TRUE)
#> [1] "amoxicillin/clavulanic acid" "polymyxin B"                

# defined daily doses (DDD)
ab_ddd("AMX", "oral")
#> [1] 1.5
ab_ddd_units("AMX", "oral")
#> [1] "g"
ab_ddd("AMX", "iv")
#> [1] 3
ab_ddd_units("AMX", "iv")
#> [1] "g"

ab_info("AMX") # all properties as a list
#> $ab
#> [1] "AMX"
#> 
#> $cid
#> [1] 33613
#> 
#> $name
#> [1] "Amoxicillin"
#> 
#> $group
#> [1] "Beta-lactams/penicillins"
#> 
#> $atc
#> [1] "J01CA04"
#> 
#> $atc_group1
#> [1] "Beta-lactam antibacterials, penicillins"
#> 
#> $atc_group2
#> [1] "Penicillins with extended spectrum"
#> 
#> $tradenames
#>  [1] "actimoxi"            "amoclen"             "amolin"             
#>  [4] "amopen"              "amopenixin"          "amoxibiotic"        
#>  [7] "amoxicaps"           "amoxicilina"         "amoxicillin"        
#> [10] "amoxicillin hydrate" "amoxicilline"        "amoxicillinum"      
#> [13] "amoxiden"            "amoxil"              "amoxivet"           
#> [16] "amoxy"               "amoxycillin"         "amoxyke"            
#> [19] "anemolin"            "aspenil"             "atoksilin"          
#> [22] "biomox"              "bristamox"           "cemoxin"            
#> [25] "clamoxyl"            "damoxy"              "delacillin"         
#> [28] "demoksil"            "dispermox"           "efpenix"            
#> [31] "flemoxin"            "hiconcil"            "histocillin"        
#> [34] "hydroxyampicillin"   "ibiamox"             "imacillin"          
#> [37] "lamoxy"              "largopen"            "metafarma capsules" 
#> [40] "metifarma capsules"  "moksilin"            "moxacin"            
#> [43] "moxatag"             "ospamox"             "pamoxicillin"       
#> [46] "piramox"             "promoxil"            "remoxil"            
#> [49] "robamox"             "sawamox pm"          "tolodina"           
#> [52] "topramoxin"          "unicillin"           "utimox"             
#> [55] "vetramox"           
#> 
#> $loinc
#> [1] "16365-9" "25274-2" "3344-9"  "80133-2"
#> 
#> $ddd
#> $ddd$oral
#> $ddd$oral$amount
#> [1] 1.5
#> 
#> $ddd$oral$units
#> [1] "g"
#> 
#> 
#> $ddd$iv
#> $ddd$iv$amount
#> [1] 3
#> 
#> $ddd$iv$units
#> [1] "g"
#> 
#> 
#> 

# all ab_* functions use as.ab() internally, so you can go from 'any' to 'any':
ab_atc("AMP")
#> [1] "J01CA01" "S01AA19"
ab_group("J01CA01")
#> [1] "Beta-lactams/penicillins"
ab_loinc("ampicillin")
#> [1] "21066-6" "3355-5"  "33562-0" "33919-2" "43883-8" "43884-6" "87604-5"
ab_name("21066-6")
#> [1] "Ampicillin"
ab_name(6249)
#> [1] "Ampicillin"
ab_name("J01CA01")
#> [1] "Ampicillin"

# spelling from different languages and dyslexia are no problem
ab_atc("ceftriaxon")
#> [1] "J01DD04"
ab_atc("cephtriaxone")
#> [1] "J01DD04"
ab_atc("cephthriaxone")
#> [1] "J01DD04"
ab_atc("seephthriaaksone")
#> [1] "J01DD04"

# use set_ab_names() for renaming columns
colnames(example_isolates)
#>  [1] "date"    "patient" "age"     "gender"  "ward"    "mo"      "PEN"    
#>  [8] "OXA"     "FLC"     "AMX"     "AMC"     "AMP"     "TZP"     "CZO"    
#> [15] "FEP"     "CXM"     "FOX"     "CTX"     "CAZ"     "CRO"     "GEN"    
#> [22] "TOB"     "AMK"     "KAN"     "TMP"     "SXT"     "NIT"     "FOS"    
#> [29] "LNZ"     "CIP"     "MFX"     "VAN"     "TEC"     "TCY"     "TGC"    
#> [36] "DOX"     "ERY"     "CLI"     "AZM"     "IPM"     "MEM"     "MTR"    
#> [43] "CHL"     "COL"     "MUP"     "RIF"    
colnames(set_ab_names(example_isolates))
#>  [1] "date"                          "patient"                      
#>  [3] "age"                           "gender"                       
#>  [5] "ward"                          "mo"                           
#>  [7] "benzylpenicillin"              "oxacillin"                    
#>  [9] "flucloxacillin"                "amoxicillin"                  
#> [11] "amoxicillin_clavulanic_acid"   "ampicillin"                   
#> [13] "piperacillin_tazobactam"       "cefazolin"                    
#> [15] "cefepime"                      "cefuroxime"                   
#> [17] "cefoxitin"                     "cefotaxime"                   
#> [19] "ceftazidime"                   "ceftriaxone"                  
#> [21] "gentamicin"                    "tobramycin"                   
#> [23] "amikacin"                      "kanamycin"                    
#> [25] "trimethoprim"                  "trimethoprim_sulfamethoxazole"
#> [27] "nitrofurantoin"                "fosfomycin"                   
#> [29] "linezolid"                     "ciprofloxacin"                
#> [31] "moxifloxacin"                  "vancomycin"                   
#> [33] "teicoplanin"                   "tetracycline"                 
#> [35] "tigecycline"                   "doxycycline"                  
#> [37] "erythromycin"                  "clindamycin"                  
#> [39] "azithromycin"                  "imipenem"                     
#> [41] "meropenem"                     "metronidazole"                
#> [43] "chloramphenicol"               "colistin"                     
#> [45] "mupirocin"                     "rifampicin"                   
colnames(set_ab_names(example_isolates, NIT:VAN))
#>  [1] "date"           "patient"        "age"            "gender"        
#>  [5] "ward"           "mo"             "PEN"            "OXA"           
#>  [9] "FLC"            "AMX"            "AMC"            "AMP"           
#> [13] "TZP"            "CZO"            "FEP"            "CXM"           
#> [17] "FOX"            "CTX"            "CAZ"            "CRO"           
#> [21] "GEN"            "TOB"            "AMK"            "KAN"           
#> [25] "TMP"            "SXT"            "nitrofurantoin" "fosfomycin"    
#> [29] "linezolid"      "ciprofloxacin"  "moxifloxacin"   "vancomycin"    
#> [33] "TEC"            "TCY"            "TGC"            "DOX"           
#> [37] "ERY"            "CLI"            "AZM"            "IPM"           
#> [41] "MEM"            "MTR"            "CHL"            "COL"           
#> [45] "MUP"            "RIF"           
# \donttest{
if (require("dplyr")) {
  example_isolates %>%
    set_ab_names() %>%
    head()

  # this does the same:
  example_isolates %>%
    rename_with(set_ab_names) %>%
    head()

  # set_ab_names() works with any AB property:
  example_isolates %>%
    set_ab_names(property = "atc") %>%
    head()

  example_isolates %>%
    set_ab_names(where(is.sir)) %>%
    colnames()

  example_isolates %>%
    set_ab_names(NIT:VAN) %>%
    colnames()
}
#>  [1] "date"           "patient"        "age"            "gender"        
#>  [5] "ward"           "mo"             "PEN"            "OXA"           
#>  [9] "FLC"            "AMX"            "AMC"            "AMP"           
#> [13] "TZP"            "CZO"            "FEP"            "CXM"           
#> [17] "FOX"            "CTX"            "CAZ"            "CRO"           
#> [21] "GEN"            "TOB"            "AMK"            "KAN"           
#> [25] "TMP"            "SXT"            "nitrofurantoin" "fosfomycin"    
#> [29] "linezolid"      "ciprofloxacin"  "moxifloxacin"   "vancomycin"    
#> [33] "TEC"            "TCY"            "TGC"            "DOX"           
#> [37] "ERY"            "CLI"            "AZM"            "IPM"           
#> [41] "MEM"            "MTR"            "CHL"            "COL"           
#> [45] "MUP"            "RIF"           
# }