diff --git a/DESCRIPTION b/DESCRIPTION index 351d9aef..cc566527 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: AMR -Version: 1.4.0.9042 -Date: 2020-12-21 +Version: 1.4.0.9043 +Date: 2020-12-22 Title: Antimicrobial Resistance Analysis Authors@R: c( person(role = c("aut", "cre"), diff --git a/NEWS.md b/NEWS.md index 05e9abd6..97237e8c 100755 --- a/NEWS.md +++ b/NEWS.md @@ -1,5 +1,5 @@ -# AMR 1.4.0.9042 -## Last updated: 21 December 2020 +# AMR 1.4.0.9043 +## Last updated: 22 December 2020 ### New * Function `is_new_episode()` to determine patient episodes which are not necessarily based on microorganisms. It also supports grouped variables with e.g. `mutate()`, `filter()` and `summarise()` of the `dplyr` package: @@ -15,8 +15,14 @@ * Functions `random_mic()`, `random_disk()` and `random_rsi()` for random number generation. They take microorganism names and antibiotic names as input to make generation more realistic. ### Changed -* Reference data used for `as.rsi()` can now be set by the user, using the `reference_data` parameter. This allows for using own interpretation guidelines. The user-set data must have the same structure as `rsi_translation`. -* Some functions are now context-aware when used inside `dplyr` verbs, such as `filter()`, `mutate()` and `summarise()`. This means that then the data parameter does not need to be set anymore. This is the case for the new functions `mo_is_gram_negative()`, `mo_is_gram_positive()`, `mo_is_intrinsic_resistant()` and for the existing functions `first_isolate()`, `key_antibiotics()`, `mdro()`, `brmo()`, `mrgn()`, `mdr_tb()`, `mdr_cmi2012()`, `eucast_exceptional_phenotypes()`. This was already the case for antibiotic selection functions (such as using `penicillins()` in `dplyr::select()`). +* Interpretation of antimicrobial resistance - `as.rsi()`: + * Reference data used for `as.rsi()` can now be set by the user, using the `reference_data` argument. This allows for using own interpretation guidelines. The user-set data must have the same structure as `rsi_translation`. + * Better determination of disk zones and MIC values when running `as.rsi()` on a data.frame + * Fix for using `as.rsi()` on a data.frame in older R versions + * `as.rsi()` on a data.frame will not print a message anymore if the values are already clean R/SI values + * If using `as.rsi()` on MICs or disk diffusion while there is intrinsic antimicrobial resistance, a warning will be thrown to remind about this + * Fix for using `as.rsi()` on a `data.frame` that only contains one column for antibiotic interpretations +* Some functions are now context-aware when used inside `dplyr` verbs, such as `filter()`, `mutate()` and `summarise()`. This means that then the data argument does not need to be set anymore. This is the case for the new functions `mo_is_gram_negative()`, `mo_is_gram_positive()`, `mo_is_intrinsic_resistant()` and for the existing functions `first_isolate()`, `key_antibiotics()`, `mdro()`, `brmo()`, `mrgn()`, `mdr_tb()`, `mdr_cmi2012()`, `eucast_exceptional_phenotypes()`. This was already the case for antibiotic selection functions (such as using `penicillins()` in `dplyr::select()`). ```r # to select first isolates that are Gram-negative @@ -27,23 +33,18 @@ select(mo, cephalosporins(), aminoglycosides()) %>% as_tibble() ``` -* For all function parameters in the code, it is now defined what the exact type of user input should be (inspired by the [`typed`](https://github.com/moodymudskipper/typed) package). If the user input for a certain function does not meet the requirements for a specific parameter (such as the class or length), an informative error will be thrown. This makes the package more robust and the use of it more reproducible and reliable. In total, more than 400 arguments were defined. +* For all function arguments in the code, it is now defined what the exact type of user input should be (inspired by the [`typed`](https://github.com/moodymudskipper/typed) package). If the user input for a certain function does not meet the requirements for a specific argument (such as the class or length), an informative error will be thrown. This makes the package more robust and the use of it more reproducible and reliable. In total, more than 420 arguments were defined. * Fix for `set_mo_source()`, that previously would not remember the file location of the original file * Deprecated function `p_symbol()` that not really fits the scope of this package. It will be removed in a future version. See [here](https://github.com/msberends/AMR/blob/v1.4.0/R/p_symbol.R) for the source code to preserve it. -* Better determination of disk zones and MIC values when running `as.rsi()` on a data.frame * Updated coagulase-negative staphylococci determination with Becker *et al.* 2020 (PMID 32056452), meaning that the species *S. argensis*, *S. caeli*, *S. debuckii*, *S. edaphicus* and *S. pseudoxylosus* are now all considered CoNS -* Fix for using parameter `reference_df` in `as.mo()` and `mo_*()` functions that contain old microbial codes (from previous package versions) -* Fix for using `as.rsi()` on a data.frame in older R versions -* `as.rsi()` on a data.frame will not print a message anymore if the values are already clean R/SI values +* Fix for using argument `reference_df` in `as.mo()` and `mo_*()` functions that contain old microbial codes (from previous package versions) * Fixed a bug where `mo_uncertainties()` would not return the results based on the MO matching score * Fixed a bug where `as.mo()` would not return results for known laboratory codes for microorganisms * Fixed a bug where `as.ab()` would sometimes fail -* If using `as.rsi()` on MICs or disk diffusion while there is intrinsic antimicrobial resistance, a warning will be thrown to remind about this * Better tibble printing for MIC values * Fix for plotting MIC values with `plot()` * Added `plot()` generic to class `` * LA-MRSA and CA-MRSA are now recognised as an abbreviation for *Staphylococcus aureus*, meaning that e.g. `mo_genus("LA-MRSA")` will return `"Staphylococcus"` and `mo_is_gram_positive("LA-MRSA")` will return `TRUE`. -* Fix for using `as.rsi()` on a `data.frame` that only contains one column for antibiotic interpretations ### Other * All messages and warnings thrown by this package now break sentences on whole words @@ -54,7 +55,7 @@ # AMR 1.4.0 ### New -* Support for 'EUCAST Expert Rules' / 'EUCAST Intrinsic Resistance and Unusual Phenotypes' version 3.2 of May 2020. With this addition to the previously implemented version 3.1 of 2016, the `eucast_rules()` function can now correct for more than 180 different antibiotics and the `mdro()` function can determine multidrug resistance based on more than 150 different antibiotics. All previously implemented versions of the EUCAST rules are now maintained and kept available in this package. The `eucast_rules()` function consequently gained the parameters `version_breakpoints` (at the moment defaults to v10.0, 2020) and `version_expertrules` (at the moment defaults to v3.2, 2020). The `example_isolates` data set now also reflects the change from v3.1 to v3.2. The `mdro()` function now accepts `guideline == "EUCAST3.1"` and `guideline == "EUCAST3.2"`. +* Support for 'EUCAST Expert Rules' / 'EUCAST Intrinsic Resistance and Unusual Phenotypes' version 3.2 of May 2020. With this addition to the previously implemented version 3.1 of 2016, the `eucast_rules()` function can now correct for more than 180 different antibiotics and the `mdro()` function can determine multidrug resistance based on more than 150 different antibiotics. All previously implemented versions of the EUCAST rules are now maintained and kept available in this package. The `eucast_rules()` function consequently gained the arguments `version_breakpoints` (at the moment defaults to v10.0, 2020) and `version_expertrules` (at the moment defaults to v3.2, 2020). The `example_isolates` data set now also reflects the change from v3.1 to v3.2. The `mdro()` function now accepts `guideline == "EUCAST3.1"` and `guideline == "EUCAST3.2"`. * A new vignette and website page with info about all our public and freely available data sets, that can be downloaded as flat files or in formats for use in R, SPSS, SAS, Stata and Excel: https://msberends.github.io/AMR/articles/datasets.html * Data set `intrinsic_resistant`. This data set contains all bug-drug combinations where the 'bug' is intrinsic resistant to the 'drug' according to the latest EUCAST insights. It contains just two columns: `microorganism` and `antibiotic`. @@ -86,7 +87,7 @@ ``` * Cleaning columns in a data.frame now allows you to specify those columns with tidy selection, e.g. `as.rsi(df, col1:col9)` * Big speed improvement for interpreting MIC values and disk zone diameters. When interpreting 5,000 MIC values of two antibiotics (10,000 values in total), our benchmarks showed a total run time going from 80.7-85.1 seconds to 1.8-2.0 seconds. - * Added parameter 'add_intrinsic_resistance' (defaults to `FALSE`), that considers intrinsic resistance according to EUCAST + * Added argument 'add_intrinsic_resistance' (defaults to `FALSE`), that considers intrinsic resistance according to EUCAST * Fixed a bug where in EUCAST rules the breakpoint for R would be interpreted as ">=" while this should have been "<" * Added intelligent data cleaning to `as.disk()`, so numbers can also be extracted from text and decimal numbers will always be rounded up: ```r @@ -97,7 +98,7 @@ * Improvements for `as.mo()`: * A completely new matching score for ambiguous user input, using `mo_matching_score()`. Any user input value that could mean more than one taxonomic entry is now considered 'uncertain'. Instead of a warning, a message will be thrown and the accompanying `mo_uncertainties()` has been changed completely; it now prints all possible candidates with their matching score. * Big speed improvement for already valid microorganism ID. This also means an significant speed improvement for using `mo_*` functions like `mo_name()` on microoganism IDs. - * Added parameter `ignore_pattern` to `as.mo()` which can also be given to `mo_*` functions like `mo_name()`, to exclude known non-relevant input from analysing. This can also be set with the option `AMR_ignore_pattern`. + * Added argument `ignore_pattern` to `as.mo()` which can also be given to `mo_*` functions like `mo_name()`, to exclude known non-relevant input from analysing. This can also be set with the option `AMR_ignore_pattern`. * `get_locale()` now uses at default `Sys.getenv("LANG")` or, if `LANG` is not set, `Sys.getlocale()`. This can be overwritten by setting the option `AMR_locale`. * Big speed improvement for `eucast_rules()` * Overall speed improvement by tweaking joining functions @@ -108,7 +109,7 @@ * Updated the documentation of the `WHONET` data set to clarify that all patient names are fictitious * Small `as.ab()` algorithm improvements * Fix for combining MIC values with raw numbers, i.e. `c(as.mic(2), 2)` previously failed but now returns a valid MIC class -* `ggplot_rsi()` and `geom_rsi()` gained parameters `minimum` and `language`, to influence the internal use of `rsi_df()` +* `ggplot_rsi()` and `geom_rsi()` gained arguments `minimum` and `language`, to influence the internal use of `rsi_df()` * Changes in the `antibiotics` data set: * Updated oral and parental DDDs from the WHOCC * Added abbreviation "piptazo" to 'Piperacillin/tazobactam' (TZP) @@ -116,7 +117,7 @@ * 'Penicillin V' (for oral use, code `PNV`) was removed, since its actual entry 'Phenoxymethylpenicillin' (code `PHN`) already existed * The group name (`antibiotics$group`) of 'Linezolid' (`LNZ`), 'Cycloserine' (`CYC`), 'Tedizolid' (`TZD`) and 'Thiacetazone' (`THA`) is now "Oxazolidinones" instead of "Other antibacterials" * Added support for using `unique()` on classes ``, ``, ``, `` and `` -* Added parameter `excess` to the `kurtosis()` function (defaults to `FALSE`), to return the *excess kurtosis*, defined as the kurtosis minus three. +* Added argument `excess` to the `kurtosis()` function (defaults to `FALSE`), to return the *excess kurtosis*, defined as the kurtosis minus three. ### Other * Removed functions `portion_R()`, `portion_S()` and `portion_I()` that were deprecated since version 0.9.0 (November 2019) and were replaced with `proportion_R()`, `proportion_S()` and `proportion_I()` @@ -141,7 +142,7 @@ * Added official antimicrobial names to all `filter_ab_class()` functions, such as `filter_aminoglycosides()` * Added antibiotics code "FOX1" for cefoxitin screening (abbreviation "cfsc") to the `antibiotics` data set * Added Monuril as trade name for fosfomycin -* Added parameter `conserve_capped_values` to `as.rsi()` for interpreting MIC values - it makes sure that values starting with "<" (but not "<=") will always return "S" and values starting with ">" (but not ">=") will always return "R". The default behaviour of `as.rsi()` has not changed, so you need to specifically do `as.rsi(..., conserve_capped_values = TRUE)`. +* Added argument `conserve_capped_values` to `as.rsi()` for interpreting MIC values - it makes sure that values starting with "<" (but not "<=") will always return "S" and values starting with ">" (but not ">=") will always return "R". The default behaviour of `as.rsi()` has not changed, so you need to specifically do `as.rsi(..., conserve_capped_values = TRUE)`. ### Changed * Big speed improvement for using any function on microorganism codes from earlier package versions (prior to `AMR` v1.2.0), such as `as.mo()`, `mo_name()`, `first_isolate()`, `eucast_rules()`, `mdro()`, etc. @@ -249,7 +250,7 @@ mutate_at(vars(antibiotic1:antibiotic25), as.rsi, mo = .$mybacteria) ``` * Added antibiotic abbreviations for a laboratory manufacturer (GLIMS) for cefuroxime, cefotaxime, ceftazidime, cefepime, cefoxitin and trimethoprim/sulfamethoxazole -* Added `uti` (as abbreviation of urinary tract infections) as parameter to `as.rsi()`, so interpretation of MIC values and disk zones can be made dependent on isolates specifically from UTIs +* Added `uti` (as abbreviation of urinary tract infections) as argument to `as.rsi()`, so interpretation of MIC values and disk zones can be made dependent on isolates specifically from UTIs * Info printing in functions `eucast_rules()`, `first_isolate()`, `mdro()` and `resistance_predict()` will now at default only print when R is in an interactive mode (i.e. not in RMarkdown) # AMR 1.0.0 @@ -369,7 +370,7 @@ This software is now out of beta and considered stable. Nonetheless, this packag # AMR 0.8.0 ### Breaking -* Determination of first isolates now **excludes** all 'unknown' microorganisms at default, i.e. microbial code `"UNKNOWN"`. They can be included with the new parameter `include_unknown`: +* Determination of first isolates now **excludes** all 'unknown' microorganisms at default, i.e. microbial code `"UNKNOWN"`. They can be included with the new argument `include_unknown`: ```r first_isolate(..., include_unknown = TRUE) ``` @@ -420,7 +421,7 @@ This software is now out of beta and considered stable. Nonetheless, this packag ```r format(x, combine_IR = FALSE) ``` -* Additional way to calculate co-resistance, i.e. when using multiple antimicrobials as input for `portion_*` functions or `count_*` functions. This can be used to determine the empiric susceptibility of a combination therapy. A new parameter `only_all_tested` (**which defaults to `FALSE`**) replaces the old `also_single_tested` and can be used to select one of the two methods to count isolates and calculate portions. The difference can be seen in this example table (which is also on the `portion` and `count` help pages), where the %SI is being determined: +* Additional way to calculate co-resistance, i.e. when using multiple antimicrobials as input for `portion_*` functions or `count_*` functions. This can be used to determine the empiric susceptibility of a combination therapy. A new argument `only_all_tested` (**which defaults to `FALSE`**) replaces the old `also_single_tested` and can be used to select one of the two methods to count isolates and calculate portions. The difference can be seen in this example table (which is also on the `portion` and `count` help pages), where the %SI is being determined: ```r # -------------------------------------------------------------------- @@ -476,13 +477,13 @@ This software is now out of beta and considered stable. Nonetheless, this packag * Removed deprecated functions `abname()`, `ab_official()`, `atc_name()`, `atc_official()`, `atc_property()`, `atc_tradenames()`, `atc_trivial_nl()` * Fix and speed improvement for `mo_shortname()` * Fix for using `mo_*` functions where the coercion uncertainties and failures would not be available through `mo_uncertainties()` and `mo_failures()` anymore -* Deprecated the `country` parameter of `mdro()` in favour of the already existing `guideline` parameter to support multiple guidelines within one country +* Deprecated the `country` argument of `mdro()` in favour of the already existing `guideline` argument to support multiple guidelines within one country * The `name` of `RIF` is now Rifampicin instead of Rifampin * The `antibiotics` data set is now sorted by name and all cephalosporins now have their generation between brackets * Speed improvement for `guess_ab_col()` which is now 30 times faster for antibiotic abbreviations * Improved `filter_ab_class()` to be more reliable and to support 5th generation cephalosporins * Function `availability()` now uses `portion_R()` instead of `portion_IR()`, to comply with EUCAST insights -* Functions `age()` and `age_groups()` now have a `na.rm` parameter to remove empty values +* Functions `age()` and `age_groups()` now have a `na.rm` argument to remove empty values * Renamed function `p.symbol()` to `p_symbol()` (the former is now deprecated and will be removed in a future version) * Using negative values for `x` in `age_groups()` will now introduce `NA`s and not return an error anymore * Fix for determining the system's language @@ -577,12 +578,12 @@ This software is now out of beta and considered stable. Nonetheless, this packag * All `atc_*` functions are superceded by `ab_*` functions * All output will be translated by using an included translation file which [can be viewed here](https://github.com/msberends/AMR/blob/master/data-raw/translations.tsv) * Improvements to plotting AMR results with `ggplot_rsi()`: - * New parameter `colours` to set the bar colours - * New parameters `title`, `subtitle`, `caption`, `x.title` and `y.title` to set titles and axis descriptions + * New argument `colours` to set the bar colours + * New arguments `title`, `subtitle`, `caption`, `x.title` and `y.title` to set titles and axis descriptions * Improved intelligence of looking up antibiotic columns in a data set using `guess_ab_col()` * Added ~5,000 more old taxonomic names to the `microorganisms.old` data set, which leads to better results finding when using the `as.mo()` function -* This package now honours the new EUCAST insight (2019) that S and I are but classified as susceptible, where I is defined as 'increased exposure' and not 'intermediate' anymore. For functions like `portion_df()` and `count_df()` this means that their new parameter `combine_SI` is TRUE at default. Our plotting function `ggplot_rsi()` also reflects this change since it uses `count_df()` internally. -* The `age()` function gained a new parameter `exact` to determine ages with decimals +* This package now honours the new EUCAST insight (2019) that S and I are but classified as susceptible, where I is defined as 'increased exposure' and not 'intermediate' anymore. For functions like `portion_df()` and `count_df()` this means that their new argument `combine_SI` is TRUE at default. Our plotting function `ggplot_rsi()` also reflects this change since it uses `count_df()` internally. +* The `age()` function gained a new argument `exact` to determine ages with decimals * Removed deprecated functions `guess_mo()`, `guess_atc()`, `EUCAST_rules()`, `interpretive_reading()`, `rsi()` * Frequency tables (`freq()`): * speed improvement for microbial IDs @@ -626,11 +627,11 @@ This software is now out of beta and considered stable. Nonetheless, this packag We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.gitlab.io/AMR/) (built with the great [`pkgdown`](https://pkgdown.r-lib.org/)) -* Contains the complete manual of this package and all of its functions with an explanation of their parameters +* Contains the complete manual of this package and all of its functions with an explanation of their arguments * Contains a comprehensive tutorial about how to conduct antimicrobial resistance analysis, import data from WHONET or SPSS and many more. #### New -* **BREAKING**: removed deprecated functions, parameters and references to 'bactid'. Use `as.mo()` to identify an MO code. +* **BREAKING**: removed deprecated functions, arguments and references to 'bactid'. Use `as.mo()` to identify an MO code. * Catalogue of Life as a new taxonomic source for data about microorganisms, which also contains all ITIS data we used previously. The `microorganisms` data set now contains: * All ~55,000 (sub)species from the kingdoms of Archaea, Bacteria and Protozoa * All ~3,000 (sub)species from these orders of the kingdom of Fungi: Eurotiales, Onygenales, Pneumocystales, Saccharomycetales and Schizosaccharomycetales (covering at least like all species of *Aspergillus*, *Candida*, *Pneumocystis*, *Saccharomyces* and *Trichophyton*) @@ -643,7 +644,7 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git * New function `mo_rank()` for the taxonomic rank (genus, species, infraspecies, etc.) * New function `mo_url()` to get the direct URL of a species from the Catalogue of Life * Support for data from [WHONET](https://whonet.org/) and [EARS-Net](https://www.ecdc.europa.eu/en/about-us/partnerships-and-networks/disease-and-laboratory-networks/ears-net) (European Antimicrobial Resistance Surveillance Network): - * Exported files from WHONET can be read and used in this package. For functions like `first_isolate()` and `eucast_rules()`, all parameters will be filled in automatically. + * Exported files from WHONET can be read and used in this package. For functions like `first_isolate()` and `eucast_rules()`, all arguments will be filled in automatically. * This package now knows all antibiotic abbrevations by EARS-Net (which are also being used by WHONET) - the `antibiotics` data set now contains a column `ears_net`. * The function `as.mo()` now knows all WHONET species abbreviations too, because almost 2,000 microbial abbreviations were added to the `microorganisms.codes` data set. * New filters for antimicrobial classes. Use these functions to filter isolates on results in one of more antibiotics from a specific class: @@ -764,14 +765,14 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git * Console will return the percentage of uncoercable input * Function `first_isolate()`: * Fixed a bug where distances between dates would not be calculated right - in the `septic_patients` data set this yielded a difference of 0.15% more isolates - * Will now use a column named like "patid" for the patient ID (parameter `col_patientid`), when this parameter was left blank - * Will now use a column named like "key(...)ab" or "key(...)antibiotics" for the key antibiotics (parameter `col_keyantibiotics()`), when this parameter was left blank - * Removed parameter `output_logical`, the function will now always return a logical value - * Renamed parameter `filter_specimen` to `specimen_group`, although using `filter_specimen` will still work -* A note to the manual pages of the `portion` functions, that low counts can influence the outcome and that the `portion` functions may camouflage this, since they only return the portion (albeit being dependent on the `minimum` parameter) + * Will now use a column named like "patid" for the patient ID (argument `col_patientid`), when this argument was left blank + * Will now use a column named like "key(...)ab" or "key(...)antibiotics" for the key antibiotics (argument `col_keyantibiotics()`), when this argument was left blank + * Removed argument `output_logical`, the function will now always return a logical value + * Renamed argument `filter_specimen` to `specimen_group`, although using `filter_specimen` will still work +* A note to the manual pages of the `portion` functions, that low counts can influence the outcome and that the `portion` functions may camouflage this, since they only return the portion (albeit being dependent on the `minimum` argument) * Merged data sets `microorganisms.certe` and `microorganisms.umcg` into `microorganisms.codes` * Function `mo_taxonomy()` now contains the kingdom too -* Reduce false positives for `is.rsi.eligible()` using the new `threshold` parameter +* Reduce false positives for `is.rsi.eligible()` using the new `threshold` argument * New colours for `scale_rsi_colours()` * Summaries of class `mo` will now return the top 3 and the unique count, e.g. using `summary(mo)` * Small text updates to summaries of class `rsi` and `mic` @@ -796,16 +797,16 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git freq(mo_genus(mo)) ``` * Header info is now available as a list, with the `header` function - * The parameter `header` is now set to `TRUE` at default, even for markdown + * The argument `header` is now set to `TRUE` at default, even for markdown * Added header info for class `mo` to show unique count of families, genera and species * Now honours the `decimal.mark` setting, which just like `format` defaults to `getOption("OutDec")` - * The new `big.mark` parameter will at default be `","` when `decimal.mark = "."` and `"."` otherwise + * The new `big.mark` argument will at default be `","` when `decimal.mark = "."` and `"."` otherwise * Fix for header text where all observations are `NA` - * New parameter `droplevels` to exclude empty factor levels when input is a factor + * New argument `droplevels` to exclude empty factor levels when input is a factor * Factor levels will be in header when present in input data (maximum of 5) * Fix for using `select()` on frequency tables -* Function `scale_y_percent()` now contains the `limits` parameter -* Automatic parameter filling for `mdro()`, `key_antibiotics()` and `eucast_rules()` +* Function `scale_y_percent()` now contains the `limits` argument +* Automatic argument filling for `mdro()`, `key_antibiotics()` and `eucast_rules()` * Updated examples for resistance prediction (`resistance_predict()` function) * Fix for `as.mic()` to support more values ending in (several) zeroes * if using different lengths of pattern and x in `%like%`, it will now return the call @@ -818,7 +819,7 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git #### New * Repository moved to GitLab * Function `count_all` to get all available isolates (that like all `portion_*` and `count_*` functions also supports `summarise` and `group_by`), the old `n_rsi` is now an alias of `count_all` -* Function `get_locale` to determine language for language-dependent output for some `mo_*` functions. This is now the default value for their `language` parameter, by which the system language will be used at default. +* Function `get_locale` to determine language for language-dependent output for some `mo_*` functions. This is now the default value for their `language` argument, by which the system language will be used at default. * Data sets `microorganismsDT`, `microorganisms.prevDT`, `microorganisms.unprevDT` and `microorganisms.oldDT` to improve the speed of `as.mo`. They are for reference only, since they are primarily for internal use of `as.mo`. * Function `read.4D` to read from the 4D database of the MMB department of the UMCG * Functions `mo_authors` and `mo_year` to get specific values about the scientific reference of a taxonomic entry @@ -828,12 +829,12 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git * `EUCAST_rules` was renamed to `eucast_rules`, the old function still exists as a deprecated function * Big changes to the `eucast_rules` function: * Now also applies rules from the EUCAST 'Breakpoint tables for bacteria', version 8.1, 2018, https://www.eucast.org/clinical_breakpoints/ (see Source of the function) - * New parameter `rules` to specify which rules should be applied (expert rules, breakpoints, others or all) - * New parameter `verbose` which can be set to `TRUE` to get very specific messages about which columns and rows were affected + * New argument `rules` to specify which rules should be applied (expert rules, breakpoints, others or all) + * New argument `verbose` which can be set to `TRUE` to get very specific messages about which columns and rows were affected * Better error handling when rules cannot be applied (i.e. new values could not be inserted) * The number of affected values will now only be measured once per row/column combination * Data set `septic_patients` now reflects these changes - * Added parameter `pipe` for piperacillin (J01CA12), also to the `mdro` function + * Added argument `pipe` for piperacillin (J01CA12), also to the `mdro` function * Small fixes to EUCAST clinical breakpoint rules * Added column `kingdom` to the microorganisms data set, and function `mo_kingdom` to look up values * Tremendous speed improvement for `as.mo` (and subsequently all `mo_*` functions), as empty values wil be ignored *a priori* @@ -845,10 +846,10 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git as.mo("S. spp") # B_STPHY mo_fullname("S. species") # "Staphylococcus species" ``` -* Added parameter `combine_IR` (TRUE/FALSE) to functions `portion_df` and `count_df`, to indicate that all values of I and R must be merged into one, so the output only consists of S vs. IR (susceptible vs. non-susceptible) +* Added argument `combine_IR` (TRUE/FALSE) to functions `portion_df` and `count_df`, to indicate that all values of I and R must be merged into one, so the output only consists of S vs. IR (susceptible vs. non-susceptible) * Fix for `portion_*(..., as_percent = TRUE)` when minimal number of isolates would not be met -* Added parameter `also_single_tested` for `portion_*` and `count_*` functions to also include cases where not all antibiotics were tested but at least one of the tested antibiotics includes the target antimicribial interpretation, see `?portion` -* Using `portion_*` functions now throws a warning when total available isolate is below parameter `minimum` +* Added argument `also_single_tested` for `portion_*` and `count_*` functions to also include cases where not all antibiotics were tested but at least one of the tested antibiotics includes the target antimicribial interpretation, see `?portion` +* Using `portion_*` functions now throws a warning when total available isolate is below argument `minimum` * Functions `as.mo`, `as.rsi`, `as.mic`, `as.atc` and `freq` will not set package name as attribute anymore * Frequency tables - `freq()`: * Support for grouping variables, test with: @@ -867,17 +868,17 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git * Now prints in markdown at default in non-interactive sessions * No longer adds the factor level column and sorts factors on count again * Support for class `difftime` - * New parameter `na`, to choose which character to print for empty values - * New parameter `header` to turn the header info off (default when `markdown = TRUE`) - * New parameter `title` to manually setbthe title of the frequency table -* `first_isolate` now tries to find columns to use as input when parameters are left blank + * New argument `na`, to choose which character to print for empty values + * New argument `header` to turn the header info off (default when `markdown = TRUE`) + * New argument `title` to manually setbthe title of the frequency table +* `first_isolate` now tries to find columns to use as input when arguments are left blank * Improvements for MDRO algorithm (function `mdro`) * Data set `septic_patients` is now a `data.frame`, not a tibble anymore * Removed diacritics from all authors (columns `microorganisms$ref` and `microorganisms.old$ref`) to comply with CRAN policy to only allow ASCII characters * Fix for `mo_property` not working properly * Fix for `eucast_rules` where some Streptococci would become ceftazidime R in EUCAST rule 4.5 * Support for named vectors of class `mo`, useful for `top_freq()` -* `ggplot_rsi` and `scale_y_percent` have `breaks` parameter +* `ggplot_rsi` and `scale_y_percent` have `breaks` argument * AI improvements for `as.mo`: * `"CRS"` -> *Stenotrophomonas maltophilia* * `"CRSM"` -> *Stenotrophomonas maltophilia* @@ -944,7 +945,7 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git # min median max neval # 0.01817717 0.01843957 0.03878077 100 ``` -* Added parameter `reference_df` for `as.mo`, so users can supply their own microbial IDs, name or codes as a reference table +* Added argument `reference_df` for `as.mo`, so users can supply their own microbial IDs, name or codes as a reference table * Renamed all previous references to `bactid` to `mo`, like: * Column names inputs of `EUCAST_rules`, `first_isolate` and `key_antibiotics` * Column names of datasets `microorganisms` and `septic_patients` @@ -973,7 +974,7 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git * Fix for `as.mic` for values ending in zeroes after a real number * Small fix where *B. fragilis* would not be found in the `microorganisms.umcg` data set * Added `prevalence` column to the `microorganisms` data set -* Added parameters `minimum` and `as_percent` to `portion_df` +* Added arguments `minimum` and `as_percent` to `portion_df` * Support for quasiquotation in the functions series `count_*` and `portions_*`, and `n_rsi`. This allows to check for more than 2 vectors or columns. ```r septic_patients %>% select(amox, cipr) %>% count_IR() @@ -984,12 +985,12 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git septic_patients %>% portion_S(amcl, gent) septic_patients %>% portion_S(amcl, gent, pita) ``` -* Edited `ggplot_rsi` and `geom_rsi` so they can cope with `count_df`. The new `fun` parameter has value `portion_df` at default, but can be set to `count_df`. +* Edited `ggplot_rsi` and `geom_rsi` so they can cope with `count_df`. The new `fun` argument has value `portion_df` at default, but can be set to `count_df`. * Fix for `ggplot_rsi` when the `ggplot2` package was not loaded * Added datalabels function `labels_rsi_count` to `ggplot_rsi` -* Added possibility to set any parameter to `geom_rsi` (and `ggplot_rsi`) so you can set your own preferences +* Added possibility to set any argument to `geom_rsi` (and `ggplot_rsi`) so you can set your own preferences * Fix for joins, where predefined suffices would not be honoured -* Added parameter `quote` to the `freq` function +* Added argument `quote` to the `freq` function * Added generic function `diff` for frequency tables * Added longest en shortest character length in the frequency table (`freq`) header of class `character` * Support for types (classes) list and matrix for `freq` @@ -1046,7 +1047,7 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git #### Changed * Improvements for forecasting with `resistance_predict` and added more examples -* More antibiotics added as parameters for EUCAST rules +* More antibiotics added as arguments for EUCAST rules * Updated version of the `septic_patients` data set to better reflect the reality * Pretty printing for tibbles removed as it is not really the scope of this package * Printing of `mic` and `rsi` classes now returns all values - use `freq` to check distributions @@ -1054,7 +1055,7 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git * Column names for the `key_antibiotics` function are now generic: 6 for broadspectrum ABs, 6 for Gram-positive specific and 6 for Gram-negative specific ABs * Speed improvement for the `abname` function * `%like%` now supports multiple patterns -* Frequency tables are now actual `data.frame`s with altered console printing to make it look like a frequency table. Because of this, the parameter `toConsole` is not longer needed. +* Frequency tables are now actual `data.frame`s with altered console printing to make it look like a frequency table. Because of this, the argument `toConsole` is not longer needed. * Fix for `freq` where the class of an item would be lost * Small translational improvements to the `septic_patients` dataset and the column `bactid` now has the new class `"bactid"` * Small improvements to the `microorganisms` dataset (especially for *Salmonella*) and the column `bactid` now has the new class `"bactid"` @@ -1102,7 +1103,7 @@ We've got a new website: [https://msberends.gitlab.io/AMR](https://msberends.git * Added support for character vector in `join` functions * Added warnings when a join results in more rows after than before the join * Altered `%like%` to make it case insensitive -* For parameters of functions `first_isolate` and `EUCAST_rules` column names are now case-insensitive +* For arguments of functions `first_isolate` and `EUCAST_rules` column names are now case-insensitive * Functions `as.rsi` and `as.mic` now add the package name and version as attributes #### Other diff --git a/R/aa_helper_functions.R b/R/aa_helper_functions.R index 470264b0..e1365927 100755 --- a/R/aa_helper_functions.R +++ b/R/aa_helper_functions.R @@ -250,13 +250,22 @@ word_wrap <- function(..., width = 0.95 * getOption("width"), extra_indent = 0) { msg <- paste0(c(...), collapse = "") - # replace new lines to add them again later - msg <- gsub("\n", "*|*", msg, fixed = TRUE) if (isTRUE(as_note)) { msg <- paste0("NOTE: ", gsub("^note:? ?", "", msg, ignore.case = TRUE)) } + if (msg %like% "\n") { + # run word_wraps() over every line here, bind them and return again + return(paste0(sapply(trimws(unlist(strsplit(msg, "\n")), which = "right"), + word_wrap, + add_fn = add_fn, + as_note = FALSE, + width = width, + extra_indent = extra_indent), + collapse = "\n")) + } + # we need to correct for already applied style, that adds text like "\033[31m\" msg_stripped <- font_stripstyle(msg) # where are the spaces now? @@ -284,7 +293,7 @@ word_wrap <- function(..., indentation <- 0 + extra_indent } msg <- gsub("\n", paste0("\n", strrep(" ", indentation)), msg, fixed = TRUE) - msg <- gsub("*|*", paste0("*|*", strrep(" ", indentation)), msg, fixed = TRUE) + # msg <- gsub("*|*", paste0("*|*", strrep(" ", indentation)), msg, fixed = TRUE) # remove trailing empty characters msg <- gsub("(\n| )+$", "", msg) @@ -297,9 +306,6 @@ word_wrap <- function(..., } } - # place back spaces - msg <- gsub("*|*", "\n", msg, fixed = TRUE) - # format backticks msg <- gsub("(`.+?`)", font_grey_bg("\\1"), msg) @@ -629,7 +635,7 @@ font_grey <- function(..., collapse = " ") { try_colour(..., before = "\033[38;5;249m", after = "\033[39m", collapse = collapse) } font_grey_bg <- function(..., collapse = " ") { - try_colour(..., before = "\033[48;5;255m", after = "\033[49m", collapse = collapse) + try_colour(..., before = "\033[48;5;254m", after = "\033[49m", collapse = collapse) } font_green_bg <- function(..., collapse = " ") { try_colour(..., before = "\033[42m", after = "\033[49m", collapse = collapse) @@ -875,6 +881,6 @@ str2lang <- function(s) { isNamespaceLoaded <- function(pkg) { pkg %in% loadedNamespaces() } -lengths = function(x, use.names = TRUE) { +lengths <- function(x, use.names = TRUE) { vapply(x, length, FUN.VALUE = NA_integer_, USE.NAMES = use.names) } diff --git a/R/ab_from_text.R b/R/ab_from_text.R index cf78d35c..75e9888f 100644 --- a/R/ab_from_text.R +++ b/R/ab_from_text.R @@ -32,21 +32,21 @@ #' @param collapse character to pass on to `paste(..., collapse = ...)` to only return one character per element of `text`, see *Examples* #' @param translate_ab if `type = "drug"`: a column name of the [antibiotics] data set to translate the antibiotic abbreviations to, using [ab_property()]. Defaults to `FALSE`. Using `TRUE` is equal to using "name". #' @param thorough_search logical to indicate whether the input must be extensively searched for misspelling and other faulty input values. Setting this to `TRUE` will take considerably more time than when using `FALSE`. At default, it will turn `TRUE` when all input elements contain a maximum of three words. -#' @param ... parameters passed on to [as.ab()] +#' @param ... arguments passed on to [as.ab()] #' @details This function is also internally used by [as.ab()], although it then only searches for the first drug name and will throw a note if more drug names could have been returned. #' -#' ## Parameter `type` +#' ## Argument `type` #' At default, the function will search for antimicrobial drug names. All text elements will be searched for official names, ATC codes and brand names. As it uses [as.ab()] internally, it will correct for misspelling. #' #' With `type = "dose"` (or similar, like "dosing", "doses"), all text elements will be searched for numeric values that are higher than 100 and do not resemble years. The output will be numeric. It supports any unit (g, mg, IE, etc.) and multiple values in one clinical text, see *Examples*. #' #' With `type = "administration"` (or abbreviations, like "admin", "adm"), all text elements will be searched for a form of drug administration. It supports the following forms (including common abbreviations): buccal, implant, inhalation, instillation, intravenous, nasal, oral, parenteral, rectal, sublingual, transdermal and vaginal. Abbreviations for oral (such as 'po', 'per os') will become "oral", all values for intravenous (such as 'iv', 'intraven') will become "iv". It supports multiple values in one clinical text, see *Examples*. #' -#' ## Parameter `collapse` +#' ## Argument `collapse` #' Without using `collapse`, this function will return a [list]. This can be convenient to use e.g. inside a `mutate()`):\cr #' `df %>% mutate(abx = ab_from_text(clinical_text))` #' -#' The returned AB codes can be transformed to official names, groups, etc. with all [`ab_*`][ab_property()] functions such as [ab_name()] and [ab_group()], or by using the `translate_ab` parameter. +#' The returned AB codes can be transformed to official names, groups, etc. with all [`ab_*`][ab_property()] functions such as [ab_name()] and [ab_group()], or by using the `translate_ab` argument. #' #' With using `collapse`, this function will return a [character]:\cr #' `df %>% mutate(abx = ab_from_text(clinical_text, collapse = "|"))` diff --git a/R/ab_property.R b/R/ab_property.R index 476d6e3e..fa5a7e96 100644 --- a/R/ab_property.R +++ b/R/ab_property.R @@ -34,7 +34,7 @@ #' @param administration way of administration, either `"oral"` or `"iv"` #' @param units a logical to indicate whether the units instead of the DDDs itself must be returned, see Examples #' @param open browse the URL using [utils::browseURL()] -#' @param ... other parameters passed on to [as.ab()] +#' @param ... other arguments passed on to [as.ab()] #' @details All output will be [translate]d 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. @@ -252,7 +252,7 @@ ab_validate <- function(x, property, ...) { check_dataset_integrity() - # try to catch an error when inputting an invalid parameter + # try to catch an error when inputting an invalid argument # so the 'call.' can be set to FALSE tryCatch(x[1L] %in% antibiotics[1, property], error = function(e) stop(e$message, call. = FALSE)) diff --git a/R/age.R b/R/age.R index 995eed80..7a59b7de 100755 --- a/R/age.R +++ b/R/age.R @@ -31,7 +31,7 @@ #' @param reference reference date(s) (defaults to today), will be coerced with [as.POSIXlt()] #' @param exact a logical to indicate whether age calculation should be exact, i.e. with decimals. It divides the number of days of [year-to-date](https://en.wikipedia.org/wiki/Year-to-date) (YTD) of `x` by the number of days in the year of `reference` (either 365 or 366). #' @param na.rm a logical to indicate whether missing values should be removed -#' @param ... parameters passed on to [as.POSIXlt()], such as `origin` +#' @param ... arguments passed on to [as.POSIXlt()], such as `origin` #' @details Ages below 0 will be returned as `NA` with a warning. Ages above 120 will only give a warning. #' @return An [integer] (no decimals) if `exact = FALSE`, a [double] (with decimals) otherwise #' @seealso To split ages into groups, use the [age_groups()] function. @@ -98,12 +98,12 @@ age <- function(x, reference = Sys.Date(), exact = FALSE, na.rm = FALSE, ...) { #' Split ages into age groups #' -#' Split ages into age groups defined by the `split` parameter. This allows for easier demographic (antimicrobial resistance) analysis. +#' Split ages into age groups defined by the `split` argument. This allows for easier demographic (antimicrobial resistance) analysis. #' @inheritSection lifecycle Stable lifecycle #' @param x age, e.g. calculated with [age()] #' @param split_at values to split `x` at, defaults to age groups 0-11, 12-24, 25-54, 55-74 and 75+. See Details. #' @param na.rm a [logical] to indicate whether missing values should be removed -#' @details To split ages, the input for the `split_at` parameter can be: +#' @details To split ages, the input for the `split_at` argument can be: #' #' * A numeric vector. A value of e.g. `c(10, 20)` will split `x` on 0-9, 10-19 and 20+. A value of only `50` will split `x` on 0-49 and 50+. #' The default is to split on young children (0-11), youth (12-24), young adults (25-54), middle-aged adults (55-74) and elderly (75+). diff --git a/R/amr.R b/R/amr.R index eb6f405a..877dc4e8 100644 --- a/R/amr.R +++ b/R/amr.R @@ -79,7 +79,7 @@ NULL #' Functions to print classes of the `AMR` package. #' @inheritSection lifecycle Stable lifecycle #' @inheritSection AMR Read more on our website! -#' @param ... Parameters passed on to functions +#' @param ... Arguments passed on to functions #' @inheritParams base::plot #' @inheritParams graphics::barplot #' @name plot diff --git a/R/atc_online.R b/R/atc_online.R index de2a7be2..444b0e65 100644 --- a/R/atc_online.R +++ b/R/atc_online.R @@ -32,9 +32,9 @@ #' @param administration type of administration when using `property = "Adm.R"`, see Details #' @param url url of website of the WHOCC. The sign `%s` can be used as a placeholder for ATC codes. #' @param url_vet url of website of the WHOCC for veterinary medicine. The sign `%s` can be used as a placeholder for ATC_vet codes (that all start with "Q"). -#' @param ... parameters to pass on to `atc_property` +#' @param ... arguments to pass on to `atc_property` #' @details -#' Options for parameter `administration`: +#' Options for argument `administration`: #' #' - `"Implant"` = Implant #' - `"Inhal"` = Inhalation diff --git a/R/eucast_rules.R b/R/eucast_rules.R index 7783f2b0..fc9cd526 100755 --- a/R/eucast_rules.R +++ b/R/eucast_rules.R @@ -81,7 +81,7 @@ format_eucast_version_nr <- function(version, markdown = TRUE) { #' #' Important examples include amoxicillin and amoxicillin/clavulanic acid, and trimethoprim and trimethoprim/sulfamethoxazole. Needless to say, for these rules to work, both drugs must be available in the data set. #' -#' Since these rules are not officially approved by EUCAST, they are not applied at default. To use these rules, include `"other"` to the `rules` parameter, or use `eucast_rules(..., rules = "all")`. +#' Since these rules are not officially approved by EUCAST, they are not applied at default. To use these rules, include `"other"` to the `rules` argument, or use `eucast_rules(..., rules = "all")`. #' @section Antibiotics: #' 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. `TIC = NULL` to skip ticarcillin). Manually defined but non-existing columns will be skipped with a warning. #' diff --git a/R/first_isolate.R b/R/first_isolate.R index 6fd2e193..b7c2ef7d 100755 --- a/R/first_isolate.R +++ b/R/first_isolate.R @@ -37,16 +37,16 @@ #' @param col_keyantibiotics column name of the key antibiotics to determine first *weighted* isolates, see [key_antibiotics()]. Defaults to the first column that starts with 'key' followed by 'ab' or 'antibiotics' (case insensitive). Use `col_keyantibiotics = FALSE` to prevent this. #' @param episode_days episode in days after which a genus/species combination will be determined as 'first isolate' again. The default of 365 days is based on the guideline by CLSI, see Source. #' @param testcodes_exclude character vector with test codes that should be excluded (case-insensitive) -#' @param icu_exclude logical whether ICU isolates should be excluded (rows with value `TRUE` in column `col_icu`) -#' @param specimen_group value in column `col_specimen` to filter on +#' @param icu_exclude logical whether ICU isolates should be excluded (rows with value `TRUE` in the column set with `col_icu`) +#' @param specimen_group value in the column set with `col_specimen` to filter on #' @param type type to determine weighed isolates; can be `"keyantibiotics"` or `"points"`, see Details #' @param ignore_I logical to determine whether antibiotic interpretations with `"I"` will be ignored when `type = "keyantibiotics"`, see Details #' @param points_threshold points until the comparison of key antibiotics will lead to inclusion of an isolate when `type = "points"`, see Details #' @param info print progress #' @param include_unknown logical to determine whether 'unknown' microorganisms should be included too, i.e. microbial code `"UNKNOWN"`, which defaults to `FALSE`. For WHONET users, this means that all records with organism code `"con"` (*contamination*) will be excluded at default. Isolates with a microbial ID of `NA` will always be excluded as first isolate. -#' @param ... parameters passed on to [first_isolate()] when using [filter_first_isolate()], or parameters passed on to [key_antibiotics()] when using [filter_first_weighted_isolate()] +#' @param ... arguments passed on to [first_isolate()] when using [filter_first_isolate()], or arguments passed on to [key_antibiotics()] when using [filter_first_weighted_isolate()] #' @details -#' These functions are context-aware when used inside `dplyr` verbs, such as `filter()`, `mutate()` and `summarise()`. This means that then the `x` parameter can be omitted, please see *Examples*. +#' These functions are context-aware when used inside `dplyr` verbs, such as `filter()`, `mutate()` and `summarise()`. This means that then the `x` argument can be omitted, please see *Examples*. #' #' The [first_isolate()] function is a wrapper around the [is_new_episode()] function, but more efficient for data sets containing microorganism codes or names. #' @@ -80,11 +80,11 @@ #' @section Key antibiotics: #' There are two ways to determine whether isolates can be included as first *weighted* isolates which will give generally the same results: #' -#' 1. Using `type = "keyantibiotics"` and parameter `ignore_I` +#' 1. Using `type = "keyantibiotics"` and argument `ignore_I` #' #' Any difference from S to R (or vice versa) will (re)select an isolate as a first weighted isolate. With `ignore_I = FALSE`, also differences from I to S|R (or vice versa) will lead to this. This is a reliable method and 30-35 times faster than method 2. Read more about this in the [key_antibiotics()] function. #' -#' 2. Using `type = "points"` and parameter `points_threshold` +#' 2. Using `type = "points"` and argument `points_threshold` #' #' A difference from I to S|R (or vice versa) means 0.5 points, a difference from S to R (or vice versa) means 1 point. When the sum of points exceeds `points_threshold`, which default to `2`, an isolate will be (re)selected as a first weighted isolate. #' @rdname first_isolate @@ -184,7 +184,7 @@ first_isolate <- function(x, dots <- unlist(list(...)) if (length(dots) != 0) { - # backwards compatibility with old parameters + # backwards compatibility with old arguments dots.names <- dots %pm>% names() if ("filter_specimen" %in% dots.names) { specimen_group <- dots[which(dots.names == "filter_specimen")] @@ -238,7 +238,7 @@ first_isolate <- function(x, check_columns_existance <- function(column, tblname = x) { if (!is.null(column)) { stop_ifnot(column %in% colnames(tblname), - "Column `", column, "` not found.", call = FALSE) + "Column '", column, "' not found.", call = FALSE) } } diff --git a/R/g.test.R b/R/g.test.R index 06263763..5d301bd2 100755 --- a/R/g.test.R +++ b/R/g.test.R @@ -200,7 +200,7 @@ g.test <- function(x, if (any(E < 5) && is.finite(PARAMETER)) warning("G-statistic approximation may be incorrect due to E < 5") - structure(list(statistic = STATISTIC, parameter = PARAMETER, + structure(list(statistic = STATISTIC, argument = PARAMETER, p.value = PVAL, method = METHOD, data.name = DNAME, observed = x, expected = E, residuals = (x - E) / sqrt(E), stdres = (x - E) / sqrt(V)), class = "htest") diff --git a/R/ggplot_pca.R b/R/ggplot_pca.R index 1854cbd4..79281327 100755 --- a/R/ggplot_pca.R +++ b/R/ggplot_pca.R @@ -47,13 +47,13 @@ #' @param arrows_textangled a logical whether the text at the end of the arrows should be angled #' @param arrows_alpha the alpha (transparency) of the arrows and their text #' @param base_textsize the text size for all plot elements except the labels and arrows -#' @param ... Parameters passed on to functions +#' @param ... Arguments passed on to functions #' @source The [ggplot_pca()] function is based on the `ggbiplot()` function from the `ggbiplot` package by Vince Vu, as found on GitHub: (retrieved: 2 March 2020, their latest commit: [`7325e88`](https://github.com/vqv/ggbiplot/commit/7325e880485bea4c07465a0304c470608fffb5d9); 12 February 2015). #' #' As per their GPL-2 licence that demands documentation of code changes, the changes made based on the source code were: #' 1. Rewritten code to remove the dependency on packages `plyr`, `scales` and `grid` #' 2. Parametrised more options, like arrow and ellipse settings -#' 3. Hardened all input possibilities by defining the exact type of user input for every parameter +#' 3. Hardened all input possibilities by defining the exact type of user input for every argument #' 4. Added total amount of explained variance as a caption in the plot #' 5. Cleaned all syntax based on the `lintr` package, fixed grammatical errors and added integrity checks #' 6. Updated documentation diff --git a/R/ggplot_rsi.R b/R/ggplot_rsi.R index a378280f..fc1f750f 100755 --- a/R/ggplot_rsi.R +++ b/R/ggplot_rsi.R @@ -45,8 +45,8 @@ #' @param caption text to show as caption of the plot #' @param x.title text to show as x axis description #' @param y.title text to show as y axis description -#' @param ... other parameters passed on to [geom_rsi()] -#' @details At default, the names of antibiotics will be shown on the plots using [ab_name()]. This can be set with the `translate_ab` parameter. See [count_df()]. +#' @param ... other arguments passed on to [geom_rsi()] +#' @details At default, the names of antibiotics will be shown on the plots using [ab_name()]. This can be set with the `translate_ab` argument. See [count_df()]. #' #' ## The functions #' [geom_rsi()] will take any variable from the data that has an [`rsi`] class (created with [as.rsi()]) using [rsi_df()] and will plot bars with the percentage R, I and S. The default behaviour is to have the bars stacked and to have the different antibiotics on the x axis. @@ -91,7 +91,7 @@ #' select(AMX, NIT, FOS, TMP, CIP) %>% #' ggplot_rsi(datalabels = FALSE) #' -#' # add other ggplot2 parameters as you like: +#' # add other ggplot2 arguments as you like: #' example_isolates %>% #' select(AMX, NIT, FOS, TMP, CIP) %>% #' ggplot_rsi(width = 0.5, diff --git a/R/is_new_episode.R b/R/is_new_episode.R index d07d8141..48677216 100644 --- a/R/is_new_episode.R +++ b/R/is_new_episode.R @@ -25,7 +25,7 @@ #' Determine (new) episodes for patients #' -#' This function determines which items in a vector can be considered (the start of) a new episode, based on the parameter `episode_days`. This can be used to determine clinical episodes for any epidemiological analysis. +#' This function determines which items in a vector can be considered (the start of) a new episode, based on the argument `episode_days`. This can be used to determine clinical episodes for any epidemiological analysis. #' @inheritSection lifecycle Stable lifecycle #' @param x vector of dates (class `Date` or `POSIXt`) #' @param episode_days length of the required episode in days, defaults to 365. Every element in the input will return `TRUE` after this number of days has passed since the last included date, independent of calendar years. Please see *Details*. diff --git a/R/key_antibiotics.R b/R/key_antibiotics.R index d5bac505..4a6dcaba 100755 --- a/R/key_antibiotics.R +++ b/R/key_antibiotics.R @@ -34,9 +34,9 @@ #' @param GramPos_1,GramPos_2,GramPos_3,GramPos_4,GramPos_5,GramPos_6 column names of antibiotics for **Gram-positives**, case-insensitive. See details for which antibiotics will be used at default (which are guessed with [guess_ab_col()]). #' @param GramNeg_1,GramNeg_2,GramNeg_3,GramNeg_4,GramNeg_5,GramNeg_6 column names of antibiotics for **Gram-negatives**, case-insensitive. See details for which antibiotics will be used at default (which are guessed with [guess_ab_col()]). #' @param warnings give a warning about missing antibiotic columns (they will be ignored) -#' @param ... other parameters passed on to functions +#' @param ... other arguments passed on to functions #' @details -#' The [key_antibiotics()] function is context-aware when used inside `dplyr` verbs, such as `filter()`, `mutate()` and `summarise()`. This means that then the `x` parameter can be omitted, please see *Examples*. +#' The [key_antibiotics()] function is context-aware when used inside `dplyr` verbs, such as `filter()`, `mutate()` and `summarise()`. This means that then the `x` argument can be omitted, please see *Examples*. #' #' The function [key_antibiotics()] returns a character vector with 12 antibiotic results for every isolate. These isolates can then be compared using [key_antibiotics_equal()], to check if two isolates have generally the same antibiogram. Missing and invalid values are replaced with a dot (`"."`) by [key_antibiotics()] and ignored by [key_antibiotics_equal()]. #' @@ -157,7 +157,7 @@ key_antibiotics <- function(x, dots <- unlist(list(...)) if (length(dots) != 0) { - # backwards compatibility with old parameters + # backwards compatibility with old arguments dots.names <- dots %pm>% names() if ("info" %in% dots.names) { warnings <- dots[which(dots.names == "info")] diff --git a/R/lifecycle.R b/R/lifecycle.R index d029dfd4..ba6d82c1 100644 --- a/R/lifecycle.R +++ b/R/lifecycle.R @@ -44,7 +44,7 @@ #' \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr} #' The [lifecycle][AMR::lifecycle] of this function is **stable**. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided. #' -#' If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error. +#' If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error. #' @section Retired lifecycle: #' \if{html}{\figure{lifecycle_retired.svg}{options: style=margin-bottom:5px} \cr} #' The [lifecycle][AMR::lifecycle] of this function is **retired**. A retired function is no longer under active development, and (if appropiate) a better alternative is available. No new arguments will be added, and only the most critical bugs will be fixed. In a future version, this function will be removed. diff --git a/R/mdro.R b/R/mdro.R index 0a5c0577..3cb7eee3 100755 --- a/R/mdro.R +++ b/R/mdro.R @@ -35,7 +35,7 @@ #' @param verbose a logical to turn Verbose mode on and off (default is off). In Verbose mode, the function does not return the MDRO results, but instead returns a data set in logbook form with extensive info about which isolates would be MDRO-positive, or why they are not. #' @inheritSection eucast_rules Antibiotics #' @details -#' These functions are context-aware when used inside `dplyr` verbs, such as `filter()`, `mutate()` and `summarise()`. This means that then the `x` parameter can be omitted, please see *Examples*. +#' These functions are context-aware when used inside `dplyr` verbs, such as `filter()`, `mutate()` and `summarise()`. This means that then the `x` argument can be omitted, please see *Examples*. #' #' For the `pct_required_classes` argument, values above 1 will be divided by 100. This is to support both fractions (`0.75` or `3/4`) and percentages (`75`). #' diff --git a/R/mo.R b/R/mo.R index 0df4163d..95053299 100755 --- a/R/mo.R +++ b/R/mo.R @@ -38,7 +38,7 @@ #' @param reference_df a [data.frame] to be used for extra reference when translating `x` to a valid [`mo`]. See [set_mo_source()] and [get_mo_source()] to automate the usage of your own codes (e.g. used in your analysis or organisation). #' @param ignore_pattern a regular expression (case-insensitive) of which all matches in `x` must return `NA`. This can be convenient to exclude known non-relevant input and can also be set with the option `AMR_ignore_pattern`, e.g. `options(AMR_ignore_pattern = "(not reported|contaminated flora)")`. #' @param language language to translate text like "no growth", which defaults to the system language (see [get_locale()]) -#' @param ... other parameters passed on to functions +#' @param ... other arguments passed on to functions #' @rdname as.mo #' @aliases mo #' @keywords mo Becker becker Lancefield lancefield guess @@ -200,7 +200,7 @@ as.mo <- function(x, uncertainty_level <- translate_allow_uncertain(allow_uncertain) if (!is.null(reference_df) - && mo_source_isvalid(reference_df) + && check_validity_mo_source(reference_df) && isFALSE(Becker) && isFALSE(Lancefield) && all(x %in% unlist(reference_df), na.rm = TRUE)) { @@ -388,7 +388,7 @@ exec_as.mo <- function(x, # defined df to check for if (!is.null(reference_df)) { - mo_source_isvalid(reference_df) + check_validity_mo_source(reference_df) reference_df <- repair_reference_df(reference_df) } @@ -1408,10 +1408,10 @@ exec_as.mo <- function(x, msg <- paste0(msg, ": ", paste('"', unique(failures), '"', sep = "", collapse = ", ")) } msg <- paste0(msg, - ".\nUse mo_failures() to review ", plural[2], ". Edit the `allow_uncertain` parameter if needed (see ?as.mo).\n", + ".\nUse mo_failures() to review ", plural[2], ". Edit the `allow_uncertain` argument if needed (see ?as.mo).\n", "You can also use your own reference data, e.g.:\n", - ' as.mo("mycode", reference_df = data.frame(own = "mycode", mo = "B_ESCHR_COLI"))\n', - ' mo_name("mycode", reference_df = data.frame(own = "mycode", mo = "B_ESCHR_COLI"))\n') + ' as.mo("mycode", reference_df = data.frame(own = "mycode", mo = "', MO_lookup$mo[match("Escherichia coli", MO_lookup$fullname)], '"))\n', + ' mo_name("mycode", reference_df = data.frame(own = "mycode", mo = "', MO_lookup$mo[match("Escherichia coli", MO_lookup$fullname)], '"))\n') warning_(paste0("\n", msg), add_fn = font_red, call = FALSE, diff --git a/R/mo_property.R b/R/mo_property.R index 239a5c85..8ac4c103 100755 --- a/R/mo_property.R +++ b/R/mo_property.R @@ -30,7 +30,7 @@ #' @param x any character (vector) that can be coerced to a valid microorganism code with [as.mo()]. Can be omitted for auto-guessing in `mo_is_*()` functions when used inside `dplyr` verbs, such as [`filter()`][dplyr::filter()], [`mutate()`][dplyr::mutate()] and [`summarise()`][dplyr::summarise()], please see *Examples*. #' @param property one of the column names of the [microorganisms] data set: `r paste0('"``', colnames(microorganisms), '\``"', collapse = ", ")`, or must be `"shortname"` #' @param language language of the returned text, defaults to system language (see [get_locale()]) and can be overwritten by setting the option `AMR_locale`, e.g. `options(AMR_locale = "de")`, see [translate]. Also used to translate text like "no growth". Use `language = NULL` or `language = ""` to prevent translation. -#' @param ... other parameters passed on to [as.mo()], such as 'allow_uncertain' and 'ignore_pattern' +#' @param ... other arguments passed on to [as.mo()], such as 'allow_uncertain' and 'ignore_pattern' #' @param ab any (vector of) text that can be coerced to a valid antibiotic code with [as.ab()] #' @param open browse the URL using [utils::browseURL()] #' @details All functions will return the most recently known taxonomic property according to the Catalogue of Life, except for [mo_ref()], [mo_authors()] and [mo_year()]. Please refer to this example, knowing that *Escherichia blattae* was renamed to *Shimwellia blattae* in 2010: @@ -44,7 +44,7 @@ #' #' The Gram stain - [mo_gramstain()] - will be determined based on the taxonomic kingdom and phylum. According to Cavalier-Smith (2002, [PMID 11837318](https://pubmed.ncbi.nlm.nih.gov/11837318)), who defined subkingdoms Negibacteria and Posibacteria, only these phyla are Posibacteria: Actinobacteria, Chloroflexi, Firmicutes and Tenericutes. These bacteria are considered Gram-positive - all other bacteria are considered Gram-negative. Species outside the kingdom of Bacteria will return a value `NA`. Functions [mo_is_gram_negative()] and [mo_is_gram_positive()] always return `TRUE` or `FALSE` (except when the input is `NA` or the MO code is `UNKNOWN`), thus always return `FALSE` for species outside the taxonomic kingdom of Bacteria. #' -#' Intrinsic resistance - [mo_is_intrinsic_resistant()] - will be determined based on the [intrinsic_resistant] data set, which is based on `r format_eucast_version_nr(3.2)`. The [mo_is_intrinsic_resistant()] can be vectorised over parameters `x` (input for microorganisms) and over `ab` (input for antibiotics). +#' Intrinsic resistance - [mo_is_intrinsic_resistant()] - will be determined based on the [intrinsic_resistant] data set, which is based on `r format_eucast_version_nr(3.2)`. The [mo_is_intrinsic_resistant()] can be vectorised over arguments `x` (input for microorganisms) and over `ab` (input for antibiotics). #' #' All output will be [translate]d where possible. #' @@ -585,7 +585,7 @@ mo_validate <- function(x, property, language, ...) { Lancefield <- FALSE } - # try to catch an error when inputting an invalid parameter + # try to catch an error when inputting an invalid argument # so the 'call.' can be set to FALSE tryCatch(x[1L] %in% MO_lookup[1, property, drop = TRUE], error = function(e) stop(e$message, call. = FALSE)) diff --git a/R/mo_source.R b/R/mo_source.R index 186ef2fb..13f5c966 100644 --- a/R/mo_source.R +++ b/R/mo_source.R @@ -36,7 +36,7 @@ #' @aliases set_mo_source get_mo_source #' @details The reference file can be a text file separated with commas (CSV) or tabs or pipes, an Excel file (either 'xls' or 'xlsx' format) or an \R object file (extension '.rds'). To use an Excel file, you will need to have the `readxl` package installed. #' -#' [set_mo_source()] will check the file for validity: it must be a [data.frame], must have a column named `"mo"` which contains values from [`microorganisms$mo`][microorganisms] and must have a reference column with your own defined values. If all tests pass, [set_mo_source()] will read the file into \R and will ask to export it to `"~/mo_source.rds"`. The CRAN policy disallows packages to write to the file system, although '*exceptions may be allowed in interactive sessions if the package obtains confirmation from the user*'. For this reason, this function only works in interactive sessions so that the user can **specifically confirm and allow** that this file will be created. The destination of this file can be set with the `destination` parameter and defaults to the user's home directory. It can also be set as an \R option, using `options(AMR_mo_source = "my/location/file.rds")`. +#' [set_mo_source()] will check the file for validity: it must be a [data.frame], must have a column named `"mo"` which contains values from [`microorganisms$mo`][microorganisms] and must have a reference column with your own defined values. If all tests pass, [set_mo_source()] will read the file into \R and will ask to export it to `"~/mo_source.rds"`. The CRAN policy disallows packages to write to the file system, although '*exceptions may be allowed in interactive sessions if the package obtains confirmation from the user*'. For this reason, this function only works in interactive sessions so that the user can **specifically confirm and allow** that this file will be created. The destination of this file can be set with the `destination` argument and defaults to the user's home directory. It can also be set as an \R option, using `options(AMR_mo_source = "my/location/file.rds")`. #' #' The created compressed data file `"mo_source.rds"` will be used at default for MO determination (function [as.mo()] and consequently all `mo_*` functions like [mo_genus()] and [mo_gramstain()]). The location and timestamp of the original file will be saved as an attribute to the compressed data file. #' @@ -125,11 +125,11 @@ set_mo_source <- function(path, destination = getOption("AMR_mo_source", "~/mo_source.rds")) { meet_criteria(path, allow_class = "character", has_length = 1, allow_NULL = TRUE) meet_criteria(destination, allow_class = "character", has_length = 1) - stop_ifnot(destination %like% "[.]rds$", "the `destination` must be a file location with file extension .rds") + stop_ifnot(destination %like% "[.]rds$", "the `destination` must be a file location with file extension .rds.") mo_source_destination <- path.expand(destination) - stop_ifnot(interactive(), "This function can only be used in interactive mode, since it must ask for the user's permission to write a file to their home folder.") + stop_ifnot(interactive(), "this function can only be used in interactive mode, since it must ask for the user's permission to write a file to their home folder.") if (is.null(path) || path %in% c(FALSE, "")) { mo_env$mo_source <- NULL @@ -160,13 +160,13 @@ set_mo_source <- function(path, destination = getOption("AMR_mo_source", "~/mo_s try( df <- utils::read.table(header = TRUE, sep = ",", stringsAsFactors = FALSE), silent = TRUE) - if (!mo_source_isvalid(df, stop_on_error = FALSE)) { + if (!check_validity_mo_source(df, stop_on_error = FALSE)) { # try tab try( df <- utils::read.table(header = TRUE, sep = "\t", stringsAsFactors = FALSE), silent = TRUE) } - if (!mo_source_isvalid(df, stop_on_error = FALSE)) { + if (!check_validity_mo_source(df, stop_on_error = FALSE)) { # try pipe try( df <- utils::read.table(header = TRUE, sep = "|", stringsAsFactors = FALSE), @@ -175,7 +175,7 @@ set_mo_source <- function(path, destination = getOption("AMR_mo_source", "~/mo_s } # check integrity - mo_source_isvalid(df) + check_validity_mo_source(df) df <- subset(df, !is.na(mo)) @@ -211,6 +211,7 @@ set_mo_source <- function(path, destination = getOption("AMR_mo_source", "~/mo_s } } attr(df, "mo_source_location") <- path + attr(df, "mo_source_destination") <- mo_source_destination attr(df, "mo_source_timestamp") <- file.mtime(path) saveRDS(df, mo_source_destination) mo_env$mo_source <- df @@ -226,7 +227,7 @@ set_mo_source <- function(path, destination = getOption("AMR_mo_source", "~/mo_s get_mo_source <- function(destination = getOption("AMR_mo_source", "~/mo_source.rds")) { if (!file.exists(path.expand(destination))) { if (interactive()) { - # source file might have been deleted, update reference + # source file might have been deleted, so update reference set_mo_source("") } return(NULL) @@ -244,7 +245,7 @@ get_mo_source <- function(destination = getOption("AMR_mo_source", "~/mo_source. mo_env$mo_source } -mo_source_isvalid <- function(x, refer_to_name = "`reference_df`", stop_on_error = TRUE) { +check_validity_mo_source <- function(x, refer_to_name = "`reference_df`", stop_on_error = TRUE) { check_dataset_integrity() if (paste(deparse(substitute(x)), collapse = "") == "get_mo_source()") { diff --git a/R/pca.R b/R/pca.R index 1e2c2bc8..bb0df021 100755 --- a/R/pca.R +++ b/R/pca.R @@ -90,7 +90,7 @@ pca <- function(x, # this is to support quoted variables: df %pm>% pca("mycol1", "mycol2") new_list[[i]] <- x[, new_list[[i]]] } else { - # remove item - it's a parameter like `center` + # remove item - it's a argument like `center` new_list[[i]] <- NULL } } diff --git a/R/proportion.R b/R/proportion.R index d982f0f6..6517151a 100755 --- a/R/proportion.R +++ b/R/proportion.R @@ -36,15 +36,15 @@ #' @param data a [data.frame] containing columns with class [`rsi`] (see [as.rsi()]) #' @param translate_ab a column name of the [antibiotics] data set to translate the antibiotic abbreviations to, using [ab_property()] #' @inheritParams ab_property -#' @param combine_SI a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the parameter `combine_IR`, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is `TRUE`. -#' @param combine_IR a logical to indicate whether all values of I and R must be merged into one, so the output only consists of S vs. I+R (susceptible vs. non-susceptible). This is outdated, see parameter `combine_SI`. +#' @param combine_SI a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the argument `combine_IR`, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is `TRUE`. +#' @param combine_IR a logical to indicate whether all values of I and R must be merged into one, so the output only consists of S vs. I+R (susceptible vs. non-susceptible). This is outdated, see argument `combine_SI`. #' @inheritSection as.rsi Interpretation of R and S/I #' @details #' The function [resistance()] is equal to the function [proportion_R()]. The function [susceptibility()] is equal to the function [proportion_SI()]. #' #' **Remember that you should filter your table to let it contain only first isolates!** This is needed to exclude duplicates and to reduce selection bias. Use [first_isolate()] to determine them in your data set. #' -#' These functions are not meant to count isolates, but to calculate the proportion of resistance/susceptibility. Use the [`count()`][AMR::count()] functions to count isolates. The function [susceptibility()] is essentially equal to `count_susceptible() / count_all()`. *Low counts can influence the outcome - the `proportion` functions may camouflage this, since they only return the proportion (albeit being dependent on the `minimum` parameter).* +#' These functions are not meant to count isolates, but to calculate the proportion of resistance/susceptibility. Use the [`count()`][AMR::count()] functions to count isolates. The function [susceptibility()] is essentially equal to `count_susceptible() / count_all()`. *Low counts can influence the outcome - the `proportion` functions may camouflage this, since they only return the proportion (albeit being dependent on the `minimum` argument).* #' #' The function [proportion_df()] takes any variable from `data` that has an [`rsi`] class (created with [as.rsi()]) and calculates the proportions R, I and S. It also supports grouped variables. The function [rsi_df()] works exactly like [proportion_df()], but adds the number of isolates. #' @section Combination therapy: diff --git a/R/random.R b/R/random.R index 0e1ee272..41a863d7 100644 --- a/R/random.R +++ b/R/random.R @@ -34,7 +34,7 @@ #' @param ... extension for future versions, not used at the moment #' @details The base R function [sample()] is used for generating values. #' -#' Generated values are based on the latest EUCAST guideline implemented in the [rsi_translation] data set. To create specific generated values per bug or drug, set the `mo` and/or `ab` parameter. +#' Generated values are based on the latest EUCAST guideline implemented in the [rsi_translation] data set. To create specific generated values per bug or drug, set the `mo` and/or `ab` argument. #' @return class `` for [random_mic()] (see [as.mic()]) and class `` for [random_disk()] (see [as.disk()]) #' @name random #' @rdname random @@ -89,7 +89,7 @@ random_exec <- function(type, size, mo = NULL, ab = NULL) { if (nrow(df_new) > 0) { df <- df_new } else { - warning_("No rows found that match mo '", mo, "', ignoring parameter `mo`", call = FALSE) + warning_("No rows found that match mo '", mo, "', ignoring argument `mo`", call = FALSE) } } @@ -100,7 +100,7 @@ random_exec <- function(type, size, mo = NULL, ab = NULL) { if (nrow(df_new) > 0) { df <- df_new } else { - warning_("No rows found that match ab '", ab, "', ignoring parameter `ab`", call = FALSE) + warning_("No rows found that match ab '", ab, "', ignoring argument `ab`", call = FALSE) } } diff --git a/R/resistance_predict.R b/R/resistance_predict.R index 4620fb5d..61044341 100755 --- a/R/resistance_predict.R +++ b/R/resistance_predict.R @@ -39,11 +39,11 @@ #' @param info a logical to indicate whether textual analysis should be printed with the name and [summary()] of the statistical model. #' @param main title of the plot #' @param ribbon a logical to indicate whether a ribbon should be shown (default) or error bars -#' @param ... parameters passed on to functions +#' @param ... arguments passed on to functions #' @inheritSection as.rsi Interpretation of R and S/I #' @inheritParams first_isolate #' @inheritParams graphics::plot -#' @details Valid options for the statistical model (parameter `model`) are: +#' @details Valid options for the statistical model (argument `model`) are: #' - `"binomial"` or `"binom"` or `"logit"`: a generalised linear regression model with binomial distribution #' - `"loglin"` or `"poisson"`: a generalised log-linear regression model with poisson distribution #' - `"lin"` or `"linear"`: a linear regression model @@ -138,11 +138,11 @@ resistance_predict <- function(x, meet_criteria(preserve_measurements, allow_class = "logical", has_length = 1) meet_criteria(info, allow_class = "logical", has_length = 1) - stop_if(is.null(model), 'choose a regression model with the `model` parameter, e.g. resistance_predict(..., model = "binomial")') + stop_if(is.null(model), 'choose a regression model with the `model` argument, e.g. resistance_predict(..., model = "binomial")') dots <- unlist(list(...)) if (length(dots) != 0) { - # backwards compatibility with old parameters + # backwards compatibility with old arguments dots.names <- dots %pm>% names() if ("tbl" %in% dots.names) { x <- dots[which(dots.names == "tbl")] @@ -158,7 +158,7 @@ resistance_predict <- function(x, stop_if(is.null(col_date), "`col_date` must be set") } stop_ifnot(col_date %in% colnames(x), - "column `", col_date, "` not found") + "column '", col_date, "' not found") # no grouped tibbles x <- as.data.frame(x, stringsAsFactors = FALSE) diff --git a/R/rsi.R b/R/rsi.R index 4ccc35c4..52828088 100755 --- a/R/rsi.R +++ b/R/rsi.R @@ -36,9 +36,9 @@ #' @param guideline defaults to the latest included EUCAST guideline, see Details for all options #' @param conserve_capped_values a logical to indicate that MIC values starting with `">"` (but not `">="`) must always return "R" , and that MIC values starting with `"<"` (but not `"<="`) must always return "S" #' @param add_intrinsic_resistance *(only useful when using a EUCAST guideline)* a logical to indicate whether intrinsic antibiotic resistance must also be considered for applicable bug-drug combinations, meaning that e.g. ampicillin will always return "R" in *Klebsiella* species. Determination is based on the [intrinsic_resistant] data set, that itself is based on `r format_eucast_version_nr(3.2)`. -#' @param reference_data a [data.frame] to be used for interpretation, which defaults to the [rsi_translation] data set. Changing this parameter allows for using own interpretation guidelines. This parameter must contain a data set that is equal in structure to the [rsi_translation] data set (same column names and column types). Please note that the `guideline` parameter will be ignored when `reference_data` is manually set. +#' @param reference_data a [data.frame] to be used for interpretation, which defaults to the [rsi_translation] data set. Changing this argument allows for using own interpretation guidelines. This argument must contain a data set that is equal in structure to the [rsi_translation] data set (same column names and column types). Please note that the `guideline` argument will be ignored when `reference_data` is manually set. #' @param threshold maximum fraction of invalid antimicrobial interpretations of `x`, please see *Examples* -#' @param ... for using on a [data.frame]: names of columns to apply [as.rsi()] on (supports tidy selection like `AMX:VAN`). Otherwise: parameters passed on to methods. +#' @param ... for using on a [data.frame]: names of columns to apply [as.rsi()] on (supports tidy selection like `AMX:VAN`). Otherwise: arguments passed on to methods. #' @details #' ## How it works #' @@ -46,7 +46,7 @@ #' #' 1. For **cleaning raw / untransformed data**. The data will be cleaned to only contain values S, I and R and will try its best to determine this with some intelligence. For example, mixed values with R/SI interpretations and MIC values such as `"<0.25; S"` will be coerced to `"S"`. Combined interpretations for multiple test methods (as seen in laboratory records) such as `"S; S"` will be coerced to `"S"`, but a value like `"S; I"` will return `NA` with a warning that the input is unclear. #' -#' 2. For **interpreting minimum inhibitory concentration (MIC) values** according to EUCAST or CLSI. You must clean your MIC values first using [as.mic()], that also gives your columns the new data class [`mic`]. Also, be sure to have a column with microorganism names or codes. It will be found automatically, but can be set manually using the `mo` parameter. +#' 2. For **interpreting minimum inhibitory concentration (MIC) values** according to EUCAST or CLSI. You must clean your MIC values first using [as.mic()], that also gives your columns the new data class [`mic`]. Also, be sure to have a column with microorganism names or codes. It will be found automatically, but can be set manually using the `mo` argument. #' * Using `dplyr`, R/SI interpretation can be done very easily with either: #' ``` #' your_data %>% mutate_if(is.mic, as.rsi) # until dplyr 1.0.0 @@ -54,7 +54,7 @@ #' ``` #' * Operators like "<=" will be stripped before interpretation. When using `conserve_capped_values = TRUE`, an MIC value of e.g. ">2" will always return "R", even if the breakpoint according to the chosen guideline is ">=4". This is to prevent that capped values from raw laboratory data would not be treated conservatively. The default behaviour (`conserve_capped_values = FALSE`) considers ">2" to be lower than ">=4" and might in this case return "S" or "I". #' -#' 3. For **interpreting disk diffusion diameters** according to EUCAST or CLSI. You must clean your disk zones first using [as.disk()], that also gives your columns the new data class [`disk`]. Also, be sure to have a column with microorganism names or codes. It will be found automatically, but can be set manually using the `mo` parameter. +#' 3. For **interpreting disk diffusion diameters** according to EUCAST or CLSI. You must clean your disk zones first using [as.disk()], that also gives your columns the new data class [`disk`]. Also, be sure to have a column with microorganism names or codes. It will be found automatically, but can be set manually using the `mo` argument. #' * Using `dplyr`, R/SI interpretation can be done very easily with either: #' ``` #' your_data %>% mutate_if(is.disk, as.rsi) # until dplyr 1.0.0 @@ -65,9 +65,9 @@ #' #' ## Supported guidelines #' -#' For interpreting MIC values as well as disk diffusion diameters, supported guidelines to be used as input for the `guideline` parameter are: `r paste0('"', sort(unique(AMR::rsi_translation$guideline)), '"', collapse = ", ")`. +#' For interpreting MIC values as well as disk diffusion diameters, supported guidelines to be used as input for the `guideline` argument are: `r paste0('"', sort(unique(AMR::rsi_translation$guideline)), '"', collapse = ", ")`. #' -#' Simply using `"CLSI"` or `"EUCAST"` as input will automatically select the latest version of that guideline. You can set your own data set using the `reference_data` parameter. The `guideline` parameter will then be ignored. +#' Simply using `"CLSI"` or `"EUCAST"` as input will automatically select the latest version of that guideline. You can set your own data set using the `reference_data` argument. The `guideline` argument will then be ignored. #' #' ## After interpretation #' @@ -79,7 +79,7 @@ #' #' ## Other #' -#' The function [is.rsi.eligible()] returns `TRUE` when a columns contains at most 5% invalid antimicrobial interpretations (not S and/or I and/or R), and `FALSE` otherwise. The threshold of 5% can be set with the `threshold` parameter. +#' The function [is.rsi.eligible()] returns `TRUE` when a columns contains at most 5% invalid antimicrobial interpretations (not S and/or I and/or R), and `FALSE` otherwise. The threshold of 5% can be set with the `threshold` argument. #' @section Interpretation of R and S/I: #' In 2019, the European Committee on Antimicrobial Susceptibility Testing (EUCAST) has decided to change the definitions of susceptibility testing categories R and S/I as shown below (). #' @@ -113,7 +113,8 @@ #' CIP = as.mic(0.256), #' GEN = as.disk(18), #' TOB = as.disk(16), -#' NIT = as.mic(32)) +#' NIT = as.mic(32), +#' ERY = "R") #' as.rsi(df) #' #' # for single values @@ -323,25 +324,25 @@ as.rsi.mic <- function(x, mo <- suppressMessages(search_type_in_df(df, "mo")) }, silent = TRUE) if (!is.null(df) && !is.null(mo) && is.data.frame(df)) { - mo_var_found <- paste0(" based on column `", font_bold(mo), "`") + mo_var_found <- paste0(" based on column '", font_bold(mo), "'") mo <- df[, mo, drop = TRUE] } }, error = function(e) - stop_('No information was supplied about the microorganisms (missing parameter "mo"). See ?as.rsi.\n\n', + stop_('No information was supplied about the microorganisms (missing argument `mo`). See ?as.rsi.\n\n', "To transform certain columns with e.g. mutate_at(), use `data %>% mutate_at(vars(...), as.rsi, mo = .$x)`, where x is your column with microorganisms.\n", "To tranform all disk diffusion zones in a data set, use `data %>% as.rsi()` or data %>% mutate_if(is.disk, as.rsi).", call = FALSE) ) } if (length(ab) == 1 && ab %like% "as.mic") { - stop_('No unambiguous name was supplied about the antibiotic (parameter "ab"). See ?as.rsi.', call = FALSE) + stop_('No unambiguous name was supplied about the antibiotic (argument `ab`). See ?as.rsi.', call = FALSE) } ab_coerced <- suppressWarnings(as.ab(ab)) mo_coerced <- suppressWarnings(as.mo(mo)) guideline_coerced <- get_guideline(guideline, reference_data) if (is.na(ab_coerced)) { - message_("Returning NAs for unknown drug: `", font_bold(ab), - "`. Rename this column to a drug name or code, and check the output with as.ab().", + message_("Returning NAs for unknown drug: '", font_bold(ab), + "'. Rename this column to a drug name or code, and check the output with `as.ab()`.", add_fn = font_red, as_note = FALSE) return(as.rsi(rep(NA, length(x)))) @@ -353,7 +354,7 @@ as.rsi.mic <- function(x, uti <- rep(uti, length(x)) } - message_("=> Interpreting MIC values of '", font_bold(ab), "' (", + message_("=> Interpreting MIC values of ", ifelse(isTRUE(list(...)$is_data.frame), "column ", ""), "'", font_bold(ab), "' (", ifelse(ab_coerced != ab, paste0(ab_coerced, ", "), ""), ab_name(ab_coerced, tolower = TRUE), ")", mo_var_found, " according to ", ifelse(identical(reference_data, AMR::rsi_translation), @@ -412,25 +413,25 @@ as.rsi.disk <- function(x, mo <- suppressMessages(search_type_in_df(df, "mo")) }, silent = TRUE) if (!is.null(df) && !is.null(mo) && is.data.frame(df)) { - mo_var_found <- paste0(" based on column `", font_bold(mo), "`") + mo_var_found <- paste0(" based on column '", font_bold(mo), "'") mo <- df[, mo, drop = TRUE] } }, error = function(e) - stop_('No information was supplied about the microorganisms (missing parameter "mo"). See ?as.rsi.\n\n', + stop_('No information was supplied about the microorganisms (missing argument `mo`). See ?as.rsi.\n\n', "To transform certain columns with e.g. mutate_at(), use `data %>% mutate_at(vars(...), as.rsi, mo = .$x)`, where x is your column with microorganisms.\n", "To tranform all disk diffusion zones in a data set, use `data %>% as.rsi()` or data %>% mutate_if(is.disk, as.rsi).", call = FALSE) ) } if (length(ab) == 1 && ab %like% "as.disk") { - stop_('No unambiguous name was supplied about the antibiotic (parameter "ab"). See ?as.rsi.', call = FALSE) + stop_('No unambiguous name was supplied about the antibiotic (argument `ab`). See ?as.rsi.', call = FALSE) } ab_coerced <- suppressWarnings(as.ab(ab)) mo_coerced <- suppressWarnings(as.mo(mo)) guideline_coerced <- get_guideline(guideline, reference_data) if (is.na(ab_coerced)) { - message_("Returning NAs for unknown drug: `", font_bold(ab), - "`. Rename this column to a drug name or code, and check the output with as.ab().", + message_("Returning NAs for unknown drug: '", font_bold(ab), + "'. Rename this column to a drug name or code, and check the output with `as.ab()`.", add_fn = font_red, as_note = FALSE) return(as.rsi(rep(NA, length(x)))) @@ -442,7 +443,7 @@ as.rsi.disk <- function(x, uti <- rep(uti, length(x)) } - message_("=> Interpreting disk zones of '", font_bold(ab), "' (", + message_("=> Interpreting disk zones of ", ifelse(isTRUE(list(...)$is_data.frame), "column ", ""), "'", font_bold(ab), "' (", ifelse(ab_coerced != ab, paste0(ab_coerced, ", "), ""), ab_name(ab_coerced, tolower = TRUE), ")", mo_var_found, " according to ", ifelse(identical(reference_data, AMR::rsi_translation), @@ -482,6 +483,7 @@ as.rsi.data.frame <- function(x, meet_criteria(add_intrinsic_resistance, allow_class = "logical", has_length = 1) meet_criteria(reference_data, allow_class = "data.frame") + x.bak <- x for (i in seq_len(ncol(x))) { # don't keep factors if (is.factor(x[, i, drop = TRUE])) { @@ -527,8 +529,8 @@ as.rsi.data.frame <- function(x, } message_("Assuming value", plural[1], " ", paste(paste0('"', values, '"'), collapse = ", "), - " in column `", font_bold(col_specimen), - "` reflect", plural[2], " ", plural[3], "urinary tract infection", plural[1], + " in column '", font_bold(col_specimen), + "' reflect", plural[2], " ", plural[3], "urinary tract infection", plural[1], ".\n Use `as.rsi(uti = FALSE)` to prevent this.") } else { # no data about UTI's found @@ -569,11 +571,11 @@ as.rsi.data.frame <- function(x, "no columns with MIC values, disk zones or antibiotic column names found in this data set. Use as.mic() or as.disk() to transform antimicrobial columns.") # set type per column types <- character(length(ab_cols)) - types[sapply(x[, ab_cols, drop = FALSE], is.disk)] <- "disk" + types[sapply(x.bak[, ab_cols, drop = FALSE], is.disk)] <- "disk" + types[sapply(x.bak[, ab_cols, drop = FALSE], is.mic)] <- "mic" types[types == "" & sapply(x[, ab_cols, drop = FALSE], all_valid_disks)] <- "disk" - types[sapply(x[, ab_cols, drop = FALSE], is.mic)] <- "mic" types[types == "" & sapply(x[, ab_cols, drop = FALSE], all_valid_mics)] <- "mic" - types[types == "" & !sapply(x[, ab_cols, drop = FALSE], is.rsi)] <- "rsi" + types[types == "" & !sapply(x.bak[, ab_cols, drop = FALSE], is.rsi)] <- "rsi" if (any(types %in% c("mic", "disk"), na.rm = TRUE)) { # now we need an mo column stop_if(is.null(col_mo), "`col_mo` must be set") @@ -597,7 +599,8 @@ as.rsi.data.frame <- function(x, uti = uti, conserve_capped_values = conserve_capped_values, add_intrinsic_resistance = add_intrinsic_resistance, - reference_data = reference_data) + reference_data = reference_data, + is_data.frame = TRUE) } else if (types[i] == "disk") { x[, ab_cols[i]] <- as.rsi(x = x %pm>% pm_pull(ab_cols[i]) %pm>% @@ -608,20 +611,31 @@ as.rsi.data.frame <- function(x, guideline = guideline, uti = uti, add_intrinsic_resistance = add_intrinsic_resistance, - reference_data = reference_data) + reference_data = reference_data, + is_data.frame = TRUE) } else if (types[i] == "rsi") { + show_message <- FALSE ab <- ab_cols[i] ab_coerced <- suppressWarnings(as.ab(ab)) if (!all(x[, ab_cols[i], drop = TRUE] %in% c("R", "S", "I"), na.rm = TRUE)) { + show_message <- TRUE # only print message if values are not already clean - message_("=> Cleaning values in column `", font_bold(ab), "` (", + message_("=> Cleaning values in column '", font_bold(ab), "' (", + ifelse(ab_coerced != ab, paste0(ab_coerced, ", "), ""), + ab_name(ab_coerced, tolower = TRUE), ")... ", + appendLF = FALSE, + as_note = FALSE) + } else if (!is.rsi(x.bak[, ab_cols[i], drop = TRUE])) { + show_message <- TRUE + # only print message if class not already set + message_("=> Assigning class to already clean column '", font_bold(ab), "' (", ifelse(ab_coerced != ab, paste0(ab_coerced, ", "), ""), ab_name(ab_coerced, tolower = TRUE), ")... ", appendLF = FALSE, as_note = FALSE) } x[, ab_cols[i]] <- as.rsi.default(x = as.character(x[, ab_cols[i], drop = TRUE])) - if (!all(x[, ab_cols[i], drop = TRUE] %in% c("R", "S", "I"), na.rm = TRUE)) { + if (show_message == TRUE) { message_(" OK.", add_fn = list(font_green, font_bold), as_note = FALSE) } } @@ -719,7 +733,7 @@ exec_as.rsi <- function(method, if (all(trans$uti == TRUE, na.rm = TRUE) & all(uti == FALSE)) { message_("WARNING.", add_fn = list(font_yellow, font_bold), as_note = FALSE) - warning_("Interpretation of ", font_bold(ab_name(ab, tolower = TRUE)), " for some microorganisms is only available for (uncomplicated) urinary tract infections (UTI). Use parameter 'uti' to set which isolates are from urine. See ?as.rsi.", call = FALSE) + warning_("Introducing NA: interpretation of ", font_bold(ab_name(ab, tolower = TRUE)), " for some microorganisms is only available for (uncomplicated) urinary tract infections (UTI). Use argument `uti` to set which isolates are from urine. See ?as.rsi.", call = FALSE) warned <- TRUE } diff --git a/R/rsi_calc.R b/R/rsi_calc.R index 8e7e4c06..76809525 100755 --- a/R/rsi_calc.R +++ b/R/rsi_calc.R @@ -70,7 +70,7 @@ rsi_calc <- function(..., } if (length(dots) == 0 | all(dots == "df")) { # for complete data.frames, like example_isolates %pm>% select(AMC, GEN) %pm>% proportion_S() - # and the old rsi function, which has "df" as name of the first parameter + # and the old rsi function, which has "df" as name of the first argument x <- dots_df } else { # get dots that are in column names already, and the ones that will be once evaluated using dots_df or global env diff --git a/R/translate.R b/R/translate.R index 6d72f882..3a02d232 100755 --- a/R/translate.R +++ b/R/translate.R @@ -45,7 +45,7 @@ #' @name translate #' @export #' @examples -#' # The 'language' parameter of below functions +#' # The 'language' argument of below functions #' # will be set automatically to your system language #' # with get_locale() #' diff --git a/docs/404.html b/docs/404.html index 4ef2cd57..a5772c5d 100644 --- a/docs/404.html +++ b/docs/404.html @@ -111,7 +111,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 diff --git a/docs/LICENSE-text.html b/docs/LICENSE-text.html index edbce4f1..23d79f6b 100644 --- a/docs/LICENSE-text.html +++ b/docs/LICENSE-text.html @@ -111,7 +111,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 diff --git a/docs/articles/index.html b/docs/articles/index.html index 28ebdb9e..1ca61f0b 100644 --- a/docs/articles/index.html +++ b/docs/articles/index.html @@ -111,7 +111,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 diff --git a/docs/authors.html b/docs/authors.html index 545f22a8..6b5a267d 100644 --- a/docs/authors.html +++ b/docs/authors.html @@ -111,7 +111,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 diff --git a/docs/index.html b/docs/index.html index 81d3931a..005d6e2d 100644 --- a/docs/index.html +++ b/docs/index.html @@ -60,7 +60,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 diff --git a/docs/news/index.html b/docs/news/index.html index 66486716..4220546b 100644 --- a/docs/news/index.html +++ b/docs/news/index.html @@ -111,7 +111,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -267,13 +267,13 @@ Source: NEWS.md -
-

-AMR 1.4.0.9042 Unreleased +
+

+AMR 1.4.0.9043 Unreleased

-
+

-Last updated: 21 December 2020 +Last updated: 22 December 2020

@@ -297,9 +297,20 @@

Changed

    -
  • Reference data used for as.rsi() can now be set by the user, using the reference_data parameter. This allows for using own interpretation guidelines. The user-set data must have the same structure as rsi_translation.

  • -

    Some functions are now context-aware when used inside dplyr verbs, such as filter(), mutate() and summarise(). This means that then the data parameter does not need to be set anymore. This is the case for the new functions mo_is_gram_negative(), mo_is_gram_positive(), mo_is_intrinsic_resistant() and for the existing functions first_isolate(), key_antibiotics(), mdro(), brmo(), mrgn(), mdr_tb(), mdr_cmi2012(), eucast_exceptional_phenotypes(). This was already the case for antibiotic selection functions (such as using penicillins() in dplyr::select()).

    +

    Interpretation of antimicrobial resistance - as.rsi():

    +
      +
    • Reference data used for as.rsi() can now be set by the user, using the reference_data argument. This allows for using own interpretation guidelines. The user-set data must have the same structure as rsi_translation.
    • +
    • Better determination of disk zones and MIC values when running as.rsi() on a data.frame
    • +
    • Fix for using as.rsi() on a data.frame in older R versions
    • +
    • +as.rsi() on a data.frame will not print a message anymore if the values are already clean R/SI values
    • +
    • If using as.rsi() on MICs or disk diffusion while there is intrinsic antimicrobial resistance, a warning will be thrown to remind about this
    • +
    • Fix for using as.rsi() on a data.frame that only contains one column for antibiotic interpretations
    • +
    +
  • +
  • +

    Some functions are now context-aware when used inside dplyr verbs, such as filter(), mutate() and summarise(). This means that then the data argument does not need to be set anymore. This is the case for the new functions mo_is_gram_negative(), mo_is_gram_positive(), mo_is_intrinsic_resistant() and for the existing functions first_isolate(), key_antibiotics(), mdro(), brmo(), mrgn(), mdr_tb(), mdr_cmi2012(), eucast_exceptional_phenotypes(). This was already the case for antibiotic selection functions (such as using penicillins() in dplyr::select()).

     
     # to select first isolates that are Gram-negative 
    @@ -310,23 +321,18 @@
       select(mo, cephalosporins(), aminoglycosides()) %>% 
       as_tibble()
  • -
  • For all function parameters in the code, it is now defined what the exact type of user input should be (inspired by the typed package). If the user input for a certain function does not meet the requirements for a specific parameter (such as the class or length), an informative error will be thrown. This makes the package more robust and the use of it more reproducible and reliable. In total, more than 400 arguments were defined.

  • +
  • For all function arguments in the code, it is now defined what the exact type of user input should be (inspired by the typed package). If the user input for a certain function does not meet the requirements for a specific argument (such as the class or length), an informative error will be thrown. This makes the package more robust and the use of it more reproducible and reliable. In total, more than 420 arguments were defined.

  • Fix for set_mo_source(), that previously would not remember the file location of the original file

  • Deprecated function p_symbol() that not really fits the scope of this package. It will be removed in a future version. See here for the source code to preserve it.

  • -
  • Better determination of disk zones and MIC values when running as.rsi() on a data.frame

  • Updated coagulase-negative staphylococci determination with Becker et al. 2020 (PMID 32056452), meaning that the species S. argensis, S. caeli, S. debuckii, S. edaphicus and S. pseudoxylosus are now all considered CoNS

  • -
  • Fix for using parameter reference_df in as.mo() and mo_*() functions that contain old microbial codes (from previous package versions)

  • -
  • Fix for using as.rsi() on a data.frame in older R versions

  • -
  • as.rsi() on a data.frame will not print a message anymore if the values are already clean R/SI values

  • +
  • Fix for using argument reference_df in as.mo() and mo_*() functions that contain old microbial codes (from previous package versions)

  • Fixed a bug where mo_uncertainties() would not return the results based on the MO matching score

  • Fixed a bug where as.mo() would not return results for known laboratory codes for microorganisms

  • Fixed a bug where as.ab() would sometimes fail

  • -
  • If using as.rsi() on MICs or disk diffusion while there is intrinsic antimicrobial resistance, a warning will be thrown to remind about this

  • Better tibble printing for MIC values

  • Fix for plotting MIC values with plot()

  • Added plot() generic to class <disk>

  • LA-MRSA and CA-MRSA are now recognised as an abbreviation for Staphylococcus aureus, meaning that e.g. mo_genus("LA-MRSA") will return "Staphylococcus" and mo_is_gram_positive("LA-MRSA") will return TRUE.

  • -
  • Fix for using as.rsi() on a data.frame that only contains one column for antibiotic interpretations

@@ -350,7 +356,7 @@

New

    -
  • Support for ‘EUCAST Expert Rules’ / ‘EUCAST Intrinsic Resistance and Unusual Phenotypes’ version 3.2 of May 2020. With this addition to the previously implemented version 3.1 of 2016, the eucast_rules() function can now correct for more than 180 different antibiotics and the mdro() function can determine multidrug resistance based on more than 150 different antibiotics. All previously implemented versions of the EUCAST rules are now maintained and kept available in this package. The eucast_rules() function consequently gained the parameters version_breakpoints (at the moment defaults to v10.0, 2020) and version_expertrules (at the moment defaults to v3.2, 2020). The example_isolates data set now also reflects the change from v3.1 to v3.2. The mdro() function now accepts guideline == "EUCAST3.1" and guideline == "EUCAST3.2".

  • +
  • Support for ‘EUCAST Expert Rules’ / ‘EUCAST Intrinsic Resistance and Unusual Phenotypes’ version 3.2 of May 2020. With this addition to the previously implemented version 3.1 of 2016, the eucast_rules() function can now correct for more than 180 different antibiotics and the mdro() function can determine multidrug resistance based on more than 150 different antibiotics. All previously implemented versions of the EUCAST rules are now maintained and kept available in this package. The eucast_rules() function consequently gained the arguments version_breakpoints (at the moment defaults to v10.0, 2020) and version_expertrules (at the moment defaults to v3.2, 2020). The example_isolates data set now also reflects the change from v3.1 to v3.2. The mdro() function now accepts guideline == "EUCAST3.1" and guideline == "EUCAST3.2".

  • A new vignette and website page with info about all our public and freely available data sets, that can be downloaded as flat files or in formats for use in R, SPSS, SAS, Stata and Excel: https://msberends.github.io/AMR/articles/datasets.html

  • Data set intrinsic_resistant. This data set contains all bug-drug combinations where the ‘bug’ is intrinsic resistant to the ‘drug’ according to the latest EUCAST insights. It contains just two columns: microorganism and antibiotic.

    @@ -390,7 +396,7 @@
  • Cleaning columns in a data.frame now allows you to specify those columns with tidy selection, e.g. as.rsi(df, col1:col9)

  • Big speed improvement for interpreting MIC values and disk zone diameters. When interpreting 5,000 MIC values of two antibiotics (10,000 values in total), our benchmarks showed a total run time going from 80.7-85.1 seconds to 1.8-2.0 seconds.

  • -
  • Added parameter ‘add_intrinsic_resistance’ (defaults to FALSE), that considers intrinsic resistance according to EUCAST

  • +
  • Added argument ‘add_intrinsic_resistance’ (defaults to FALSE), that considers intrinsic resistance according to EUCAST

  • Fixed a bug where in EUCAST rules the breakpoint for R would be interpreted as “>=” while this should have been “<”

@@ -407,7 +413,7 @@
  • A completely new matching score for ambiguous user input, using mo_matching_score(). Any user input value that could mean more than one taxonomic entry is now considered ‘uncertain’. Instead of a warning, a message will be thrown and the accompanying mo_uncertainties() has been changed completely; it now prints all possible candidates with their matching score.
  • Big speed improvement for already valid microorganism ID. This also means an significant speed improvement for using mo_* functions like mo_name() on microoganism IDs.
  • -
  • Added parameter ignore_pattern to as.mo() which can also be given to mo_* functions like mo_name(), to exclude known non-relevant input from analysing. This can also be set with the option AMR_ignore_pattern.
  • +
  • Added argument ignore_pattern to as.mo() which can also be given to mo_* functions like mo_name(), to exclude known non-relevant input from analysing. This can also be set with the option AMR_ignore_pattern.
  • get_locale() now uses at default Sys.getenv("LANG") or, if LANG is not set, Sys.getlocale(). This can be overwritten by setting the option AMR_locale.

  • @@ -420,7 +426,7 @@
  • Updated the documentation of the WHONET data set to clarify that all patient names are fictitious

  • Small as.ab() algorithm improvements

  • Fix for combining MIC values with raw numbers, i.e. c(as.mic(2), 2) previously failed but now returns a valid MIC class

  • -
  • ggplot_rsi() and geom_rsi() gained parameters minimum and language, to influence the internal use of rsi_df()

  • +
  • ggplot_rsi() and geom_rsi() gained arguments minimum and language, to influence the internal use of rsi_df()

  • Changes in the antibiotics data set:

      @@ -432,7 +438,7 @@
  • Added support for using unique() on classes <rsi>, <mic>, <disk>, <ab> and <mo>

  • -
  • Added parameter excess to the kurtosis() function (defaults to FALSE), to return the excess kurtosis, defined as the kurtosis minus three.

  • +
  • Added argument excess to the kurtosis() function (defaults to FALSE), to return the excess kurtosis, defined as the kurtosis minus three.

  • @@ -471,7 +477,7 @@
  • Added official antimicrobial names to all filter_ab_class() functions, such as filter_aminoglycosides()

  • Added antibiotics code “FOX1” for cefoxitin screening (abbreviation “cfsc”) to the antibiotics data set

  • Added Monuril as trade name for fosfomycin

  • -
  • Added parameter conserve_capped_values to as.rsi() for interpreting MIC values - it makes sure that values starting with “<” (but not “<=”) will always return “S” and values starting with “>” (but not “>=”) will always return “R”. The default behaviour of as.rsi() has not changed, so you need to specifically do as.rsi(..., conserve_capped_values = TRUE).

  • +
  • Added argument conserve_capped_values to as.rsi() for interpreting MIC values - it makes sure that values starting with “<” (but not “<=”) will always return “S” and values starting with “>” (but not “>=”) will always return “R”. The default behaviour of as.rsi() has not changed, so you need to specifically do as.rsi(..., conserve_capped_values = TRUE).

  • @@ -542,7 +548,7 @@

    Making this package independent of especially the tidyverse (e.g. packages dplyr and tidyr) tremendously increases sustainability on the long term, since tidyverse functions change quite often. Good for users, but hard for package maintainers. Most of our functions are replaced with versions that only rely on base R, which keeps this package fully functional for many years to come, without requiring a lot of maintenance to keep up with other packages anymore. Another upside it that this package can now be used with all versions of R since R-3.0.0 (April 2013). Our package is being used in settings where the resources are very limited. Fewer dependencies on newer software is helpful for such settings.

    Negative effects of this change are:

      -
    • Function freq() that was borrowed from the cleaner package was removed. Use cleaner::freq(), or run library("cleaner") before you use freq().
    • +
    • Function freq() that was borrowed from the cleaner package was removed. Use cleaner::freq(), or run library("cleaner") before you use freq().
    • Printing values of class mo or rsi in a tibble will no longer be in colour and printing rsi in a tibble will show the class <ord>, not <rsi> anymore. This is purely a visual effect.
    • All functions from the mo_* family (like mo_name() and mo_gramstain()) are noticeably slower when running on hundreds of thousands of rows.
    • For developers: classes mo and ab now both also inherit class character, to support any data transformation. This change invalidates code that checks for class length == 1.
    • @@ -655,7 +661,7 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/ mutate_at(vars(antibiotic1:antibiotic25), as.rsi, mo = .$mybacteria)
  • Added antibiotic abbreviations for a laboratory manufacturer (GLIMS) for cefuroxime, cefotaxime, ceftazidime, cefepime, cefoxitin and trimethoprim/sulfamethoxazole

  • -
  • Added uti (as abbreviation of urinary tract infections) as parameter to as.rsi(), so interpretation of MIC values and disk zones can be made dependent on isolates specifically from UTIs

  • +
  • Added uti (as abbreviation of urinary tract infections) as argument to as.rsi(), so interpretation of MIC values and disk zones can be made dependent on isolates specifically from UTIs

  • Info printing in functions eucast_rules(), first_isolate(), mdro() and resistance_predict() will now at default only print when R is in an interactive mode (i.e. not in RMarkdown)

  • @@ -856,7 +862,7 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/ Breaking

    • -

      Determination of first isolates now excludes all ‘unknown’ microorganisms at default, i.e. microbial code "UNKNOWN". They can be included with the new parameter include_unknown:

      +

      Determination of first isolates now excludes all ‘unknown’ microorganisms at default, i.e. microbial code "UNKNOWN". They can be included with the new argument include_unknown:

       
       first_isolate(..., include_unknown = TRUE)
      @@ -879,7 +885,7 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/ #> invalid microorganism code, NA generated

    This is important, because a value like "testvalue" could never be understood by e.g. mo_name(), although the class would suggest a valid microbial code.

    -
  • Function freq() has moved to a new package, clean (CRAN link), since creating frequency tables actually does not fit the scope of this package. The freq() function still works, since it is re-exported from the clean package (which will be installed automatically upon updating this AMR package).

  • +
  • Function freq() has moved to a new package, clean (CRAN link), since creating frequency tables actually does not fit the scope of this package. The freq() function still works, since it is re-exported from the clean package (which will be installed automatically upon updating this AMR package).

  • Renamed data set septic_patients to example_isolates

  • @@ -917,7 +923,7 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/ format(x, combine_IR = FALSE)
  • -

    Additional way to calculate co-resistance, i.e. when using multiple antimicrobials as input for portion_* functions or count_* functions. This can be used to determine the empiric susceptibility of a combination therapy. A new parameter only_all_tested (which defaults to FALSE) replaces the old also_single_tested and can be used to select one of the two methods to count isolates and calculate portions. The difference can be seen in this example table (which is also on the portion and count help pages), where the %SI is being determined:

    +

    Additional way to calculate co-resistance, i.e. when using multiple antimicrobials as input for portion_* functions or count_* functions. This can be used to determine the empiric susceptibility of a combination therapy. A new argument only_all_tested (which defaults to FALSE) replaces the old also_single_tested and can be used to select one of the two methods to count isolates and calculate portions. The difference can be seen in this example table (which is also on the portion and count help pages), where the %SI is being determined:

     
     # --------------------------------------------------------------------
    @@ -987,13 +993,13 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/
     
  • Fix and speed improvement for mo_shortname()
  • Fix for using mo_* functions where the coercion uncertainties and failures would not be available through mo_uncertainties() and mo_failures() anymore
  • -
  • Deprecated the country parameter of mdro() in favour of the already existing guideline parameter to support multiple guidelines within one country
  • +
  • Deprecated the country argument of mdro() in favour of the already existing guideline argument to support multiple guidelines within one country
  • The name of RIF is now Rifampicin instead of Rifampin
  • The antibiotics data set is now sorted by name and all cephalosporins now have their generation between brackets
  • Speed improvement for guess_ab_col() which is now 30 times faster for antibiotic abbreviations
  • Improved filter_ab_class() to be more reliable and to support 5th generation cephalosporins
  • Function availability() now uses portion_R() instead of portion_IR(), to comply with EUCAST insights
  • -
  • Functions age() and age_groups() now have a na.rm parameter to remove empty values
  • +
  • Functions age() and age_groups() now have a na.rm argument to remove empty values
  • Renamed function p.symbol() to p_symbol() (the former is now deprecated and will be removed in a future version)
  • Using negative values for x in age_groups() will now introduce NAs and not return an error anymore
  • Fix for determining the system’s language
  • @@ -1137,18 +1143,18 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/
  • Improvements to plotting AMR results with ggplot_rsi():
      -
    • New parameter colours to set the bar colours
    • -
    • New parameters title, subtitle, caption, x.title and y.title to set titles and axis descriptions
    • +
    • New argument colours to set the bar colours
    • +
    • New arguments title, subtitle, caption, x.title and y.title to set titles and axis descriptions
  • Improved intelligence of looking up antibiotic columns in a data set using guess_ab_col()
  • Added ~5,000 more old taxonomic names to the microorganisms.old data set, which leads to better results finding when using the as.mo() function
  • -
  • This package now honours the new EUCAST insight (2019) that S and I are but classified as susceptible, where I is defined as ‘increased exposure’ and not ‘intermediate’ anymore. For functions like portion_df() and count_df() this means that their new parameter combine_SI is TRUE at default. Our plotting function ggplot_rsi() also reflects this change since it uses count_df() internally.
  • -
  • The age() function gained a new parameter exact to determine ages with decimals
  • +
  • This package now honours the new EUCAST insight (2019) that S and I are but classified as susceptible, where I is defined as ‘increased exposure’ and not ‘intermediate’ anymore. For functions like portion_df() and count_df() this means that their new argument combine_SI is TRUE at default. Our plotting function ggplot_rsi() also reflects this change since it uses count_df() internally.
  • +
  • The age() function gained a new argument exact to determine ages with decimals
  • Removed deprecated functions guess_mo(), guess_atc(), EUCAST_rules(), interpretive_reading(), rsi()
  • -
  • Frequency tables (freq()): +
  • Frequency tables (freq()):
    • speed improvement for microbial IDs

    • fixed factor level names for R Markdown

    • @@ -1158,12 +1164,12 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/
       
       septic_patients %>% 
      -  freq(age) %>% 
      +  freq(age) %>% 
         boxplot()
       # grouped boxplots:
       septic_patients %>% 
         group_by(hospital_id) %>% 
      -  freq(age) %>%
      +  freq(age) %>%
         boxplot()
    @@ -1173,7 +1179,7 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/
  • Added ceftazidim intrinsic resistance to Streptococci
  • Changed default settings for age_groups(), to let groups of fives and tens end with 100+ instead of 120+
  • -
  • Fix for freq() for when all values are NA +
  • Fix for freq() for when all values are NA
  • Fix for first_isolate() for when dates are missing
  • Improved speed of guess_ab_col() @@ -1216,14 +1222,14 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/

    New website!

    We’ve got a new website: https://msberends.gitlab.io/AMR (built with the great pkgdown)

      -
    • Contains the complete manual of this package and all of its functions with an explanation of their parameters
    • +
    • Contains the complete manual of this package and all of its functions with an explanation of their arguments
    • Contains a comprehensive tutorial about how to conduct antimicrobial resistance analysis, import data from WHONET or SPSS and many more.

    New

      -
    • BREAKING: removed deprecated functions, parameters and references to ‘bactid’. Use as.mo() to identify an MO code.

    • +
    • BREAKING: removed deprecated functions, arguments and references to ‘bactid’. Use as.mo() to identify an MO code.

    • Catalogue of Life as a new taxonomic source for data about microorganisms, which also contains all ITIS data we used previously. The microorganisms data set now contains:

        @@ -1243,7 +1249,7 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/
      • Support for data from WHONET and EARS-Net (European Antimicrobial Resistance Surveillance Network):

          -
        • Exported files from WHONET can be read and used in this package. For functions like first_isolate() and eucast_rules(), all parameters will be filled in automatically.
        • +
        • Exported files from WHONET can be read and used in this package. For functions like first_isolate() and eucast_rules(), all arguments will be filled in automatically.
        • This package now knows all antibiotic abbrevations by EARS-Net (which are also being used by WHONET) - the antibiotics data set now contains a column ears_net.
        • The function as.mo() now knows all WHONET species abbreviations too, because almost 2,000 microbial abbreviations were added to the microorganisms.codes data set.
        @@ -1390,17 +1396,17 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/
      • Function first_isolate():
        • Fixed a bug where distances between dates would not be calculated right - in the septic_patients data set this yielded a difference of 0.15% more isolates
        • -
        • Will now use a column named like “patid” for the patient ID (parameter col_patientid), when this parameter was left blank
        • -
        • Will now use a column named like “key(…)ab” or “key(…)antibiotics” for the key antibiotics (parameter col_keyantibiotics()), when this parameter was left blank
        • -
        • Removed parameter output_logical, the function will now always return a logical value
        • -
        • Renamed parameter filter_specimen to specimen_group, although using filter_specimen will still work
        • +
        • Will now use a column named like “patid” for the patient ID (argument col_patientid), when this argument was left blank
        • +
        • Will now use a column named like “key(…)ab” or “key(…)antibiotics” for the key antibiotics (argument col_keyantibiotics()), when this argument was left blank
        • +
        • Removed argument output_logical, the function will now always return a logical value
        • +
        • Renamed argument filter_specimen to specimen_group, although using filter_specimen will still work
      • -
      • A note to the manual pages of the portion functions, that low counts can influence the outcome and that the portion functions may camouflage this, since they only return the portion (albeit being dependent on the minimum parameter)
      • +
      • A note to the manual pages of the portion functions, that low counts can influence the outcome and that the portion functions may camouflage this, since they only return the portion (albeit being dependent on the minimum argument)
      • Merged data sets microorganisms.certe and microorganisms.umcg into microorganisms.codes
      • Function mo_taxonomy() now contains the kingdom too
      • -
      • Reduce false positives for is.rsi.eligible() using the new threshold parameter
      • +
      • Reduce false positives for is.rsi.eligible() using the new threshold argument
      • New colours for scale_rsi_colours()
      • Summaries of class mo will now return the top 3 and the unique count, e.g. using summary(mo) @@ -1414,7 +1420,7 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/
    • -
    • Frequency tables (freq() function): +
    • Frequency tables (freq() function):
      • Support for tidyverse quasiquotation! Now you can create frequency tables of function outcomes:

        @@ -1424,29 +1430,29 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/ # OLD WAY septic_patients %>% mutate(genus = mo_genus(mo)) %>% - freq(genus) + freq(genus) # NEW WAY septic_patients %>% - freq(mo_genus(mo)) + freq(mo_genus(mo)) # Even supports grouping variables: septic_patients %>% group_by(gender) %>% - freq(mo_genus(mo))
    + freq(mo_genus(mo))
  • Header info is now available as a list, with the header function

  • -
  • The parameter header is now set to TRUE at default, even for markdown

  • +
  • The argument header is now set to TRUE at default, even for markdown

  • Added header info for class mo to show unique count of families, genera and species

  • Now honours the decimal.mark setting, which just like format defaults to getOption("OutDec")

  • -
  • The new big.mark parameter will at default be "," when decimal.mark = "." and "." otherwise

  • +
  • The new big.mark argument will at default be "," when decimal.mark = "." and "." otherwise

  • Fix for header text where all observations are NA

  • -
  • New parameter droplevels to exclude empty factor levels when input is a factor

  • +
  • New argument droplevels to exclude empty factor levels when input is a factor

  • Factor levels will be in header when present in input data (maximum of 5)

  • Fix for using select() on frequency tables

  • -
  • Function scale_y_percent() now contains the limits parameter
  • -
  • Automatic parameter filling for mdro(), key_antibiotics() and eucast_rules() +
  • Function scale_y_percent() now contains the limits argument
  • +
  • Automatic argument filling for mdro(), key_antibiotics() and eucast_rules()
  • Updated examples for resistance prediction (resistance_predict() function)
  • Fix for as.mic() to support more values ending in (several) zeroes
  • @@ -1472,7 +1478,7 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/
  • Repository moved to GitLab
  • Function count_all to get all available isolates (that like all portion_* and count_* functions also supports summarise and group_by), the old n_rsi is now an alias of count_all
  • -
  • Function get_locale to determine language for language-dependent output for some mo_* functions. This is now the default value for their language parameter, by which the system language will be used at default.
  • +
  • Function get_locale to determine language for language-dependent output for some mo_* functions. This is now the default value for their language argument, by which the system language will be used at default.
  • Data sets microorganismsDT, microorganisms.prevDT, microorganisms.unprevDT and microorganisms.oldDT to improve the speed of as.mo. They are for reference only, since they are primarily for internal use of as.mo.
  • Function read.4D to read from the 4D database of the MMB department of the UMCG
  • Functions mo_authors and mo_year to get specific values about the scientific reference of a taxonomic entry
  • @@ -1488,12 +1494,12 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/

    Big changes to the eucast_rules function:

    • Now also applies rules from the EUCAST ‘Breakpoint tables for bacteria’, version 8.1, 2018, https://www.eucast.org/clinical_breakpoints/ (see Source of the function)
    • -
    • New parameter rules to specify which rules should be applied (expert rules, breakpoints, others or all)
    • -
    • New parameter verbose which can be set to TRUE to get very specific messages about which columns and rows were affected
    • +
    • New argument rules to specify which rules should be applied (expert rules, breakpoints, others or all)
    • +
    • New argument verbose which can be set to TRUE to get very specific messages about which columns and rows were affected
    • Better error handling when rules cannot be applied (i.e. new values could not be inserted)
    • The number of affected values will now only be measured once per row/column combination
    • Data set septic_patients now reflects these changes
    • -
    • Added parameter pipe for piperacillin (J01CA12), also to the mdro function
    • +
    • Added argument pipe for piperacillin (J01CA12), also to the mdro function
    • Small fixes to EUCAST clinical breakpoint rules
    @@ -1509,13 +1515,13 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/ as.mo("S. spp") # B_STPHY mo_fullname("S. species") # "Staphylococcus species" -
  • Added parameter combine_IR (TRUE/FALSE) to functions portion_df and count_df, to indicate that all values of I and R must be merged into one, so the output only consists of S vs. IR (susceptible vs. non-susceptible)

  • +
  • Added argument combine_IR (TRUE/FALSE) to functions portion_df and count_df, to indicate that all values of I and R must be merged into one, so the output only consists of S vs. IR (susceptible vs. non-susceptible)

  • Fix for portion_*(..., as_percent = TRUE) when minimal number of isolates would not be met

  • -
  • Added parameter also_single_tested for portion_* and count_* functions to also include cases where not all antibiotics were tested but at least one of the tested antibiotics includes the target antimicribial interpretation, see ?portion

  • -
  • Using portion_* functions now throws a warning when total available isolate is below parameter minimum

  • +
  • Added argument also_single_tested for portion_* and count_* functions to also include cases where not all antibiotics were tested but at least one of the tested antibiotics includes the target antimicribial interpretation, see ?portion

  • +
  • Using portion_* functions now throws a warning when total available isolate is below argument minimum

  • Functions as.mo, as.rsi, as.mic, as.atc and freq will not set package name as attribute anymore

  • -

    Frequency tables - freq():

    +

    Frequency tables - freq():

    • Support for grouping variables, test with:

      @@ -1523,33 +1529,33 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/ septic_patients %>% group_by(hospital_id) %>% - freq(gender) + freq(gender)
    • Support for (un)selecting columns:

       
       septic_patients %>% 
      -  freq(hospital_id) %>% 
      +  freq(hospital_id) %>% 
         select(-count, -cum_count) # only get item, percent, cum_percent
    • Check for hms::is.hms

    • Now prints in markdown at default in non-interactive sessions

    • No longer adds the factor level column and sorts factors on count again

    • Support for class difftime

    • -
    • New parameter na, to choose which character to print for empty values

    • -
    • New parameter header to turn the header info off (default when markdown = TRUE)

    • -
    • New parameter title to manually setbthe title of the frequency table

    • +
    • New argument na, to choose which character to print for empty values

    • +
    • New argument header to turn the header info off (default when markdown = TRUE)

    • +
    • New argument title to manually setbthe title of the frequency table

  • -
  • first_isolate now tries to find columns to use as input when parameters are left blank

  • +
  • first_isolate now tries to find columns to use as input when arguments are left blank

  • Improvements for MDRO algorithm (function mdro)

  • Data set septic_patients is now a data.frame, not a tibble anymore

  • Removed diacritics from all authors (columns microorganisms$ref and microorganisms.old$ref) to comply with CRAN policy to only allow ASCII characters

  • Fix for mo_property not working properly

  • Fix for eucast_rules where some Streptococci would become ceftazidime R in EUCAST rule 4.5

  • -
  • Support for named vectors of class mo, useful for top_freq()

  • -
  • ggplot_rsi and scale_y_percent have breaks parameter

  • +
  • Support for named vectors of class mo, useful for top_freq()

  • +
  • ggplot_rsi and scale_y_percent have breaks argument

  • AI improvements for as.mo:

      @@ -1650,7 +1656,7 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/ # min median max neval # 0.01817717 0.01843957 0.03878077 100 -
    • Added parameter reference_df for as.mo, so users can supply their own microbial IDs, name or codes as a reference table

    • +
    • Added argument reference_df for as.mo, so users can supply their own microbial IDs, name or codes as a reference table

    • Renamed all previous references to bactid to mo, like:

        @@ -1690,7 +1696,7 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/
      • Fix for as.mic for values ending in zeroes after a real number

      • Small fix where B. fragilis would not be found in the microorganisms.umcg data set

      • Added prevalence column to the microorganisms data set

      • -
      • Added parameters minimum and as_percent to portion_df

      • +
      • Added arguments minimum and as_percent to portion_df

      • Support for quasiquotation in the functions series count_* and portions_*, and n_rsi. This allows to check for more than 2 vectors or columns.

        @@ -1703,12 +1709,12 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/
         septic_patients %>% portion_S(amcl, gent)
         septic_patients %>% portion_S(amcl, gent, pita)
      • -
      • Edited ggplot_rsi and geom_rsi so they can cope with count_df. The new fun parameter has value portion_df at default, but can be set to count_df.

      • +
      • Edited ggplot_rsi and geom_rsi so they can cope with count_df. The new fun argument has value portion_df at default, but can be set to count_df.

      • Fix for ggplot_rsi when the ggplot2 package was not loaded

      • Added datalabels function labels_rsi_count to ggplot_rsi

      • -
      • Added possibility to set any parameter to geom_rsi (and ggplot_rsi) so you can set your own preferences

      • +
      • Added possibility to set any argument to geom_rsi (and ggplot_rsi) so you can set your own preferences

      • Fix for joins, where predefined suffices would not be honoured

      • -
      • Added parameter quote to the freq function

      • +
      • Added argument quote to the freq function

      • Added generic function diff for frequency tables

      • Added longest en shortest character length in the frequency table (freq) header of class character

      • @@ -1716,13 +1722,13 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/
         
         my_matrix = with(septic_patients, matrix(c(age, gender), ncol = 2))
        -freq(my_matrix)
        +freq(my_matrix)

        For lists, subsetting is possible:

         
         my_list = list(age = septic_patients$age, gender = septic_patients$gender)
        -my_list %>% freq(age)
        -my_list %>% freq(gender)
        +my_list %>% freq(age) +my_list %>% freq(gender)
      @@ -1796,13 +1802,13 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/
      • A vignette to explain its usage
      • Support for rsi (antimicrobial resistance) to use as input
      • -
      • Support for table to use as input: freq(table(x, y)) +
      • Support for table to use as input: freq(table(x, y))
      • Support for existing functions hist and plot to use a frequency table as input: hist(freq(df$age))
      • Support for as.vector, as.data.frame, as_tibble and format
      • -
      • Support for quasiquotation: freq(mydata, mycolumn) is the same as mydata %>% freq(mycolumn) +
      • Support for quasiquotation: freq(mydata, mycolumn) is the same as mydata %>% freq(mycolumn)
      • Function top_freq function to return the top/below n items as vector
      • Header of frequency tables now also show Mean Absolute Deviaton (MAD) and Interquartile Range (IQR)
      • @@ -1816,7 +1822,7 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/ Changed
        • Improvements for forecasting with resistance_predict and added more examples
        • -
        • More antibiotics added as parameters for EUCAST rules
        • +
        • More antibiotics added as arguments for EUCAST rules
        • Updated version of the septic_patients data set to better reflect the reality
        • Pretty printing for tibbles removed as it is not really the scope of this package
        • Printing of mic and rsi classes now returns all values - use freq to check distributions
        • @@ -1825,7 +1831,7 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/
        • Speed improvement for the abname function
        • %like% now supports multiple patterns
        • -
        • Frequency tables are now actual data.frames with altered console printing to make it look like a frequency table. Because of this, the parameter toConsole is not longer needed.
        • +
        • Frequency tables are now actual data.frames with altered console printing to make it look like a frequency table. Because of this, the argument toConsole is not longer needed.
        • Fix for freq where the class of an item would be lost
        • Small translational improvements to the septic_patients dataset and the column bactid now has the new class "bactid"
        • @@ -1913,7 +1919,7 @@ This works for all drug combinations, such as ampicillin/sulbactam, ceftazidime/
        • Added support for character vector in join functions
        • Added warnings when a join results in more rows after than before the join
        • Altered %like% to make it case insensitive
        • -
        • For parameters of functions first_isolate and EUCAST_rules column names are now case-insensitive
        • +
        • For arguments of functions first_isolate and EUCAST_rules column names are now case-insensitive
        • Functions as.rsi and as.mic now add the package name and version as attributes
        diff --git a/docs/pkgdown.yml b/docs/pkgdown.yml index 4e5545fe..211424b5 100644 --- a/docs/pkgdown.yml +++ b/docs/pkgdown.yml @@ -12,7 +12,7 @@ articles: datasets: datasets.html resistance_predict: resistance_predict.html welcome_to_AMR: welcome_to_AMR.html -last_built: 2020-12-21T21:21Z +last_built: 2020-12-21T23:50Z urls: reference: https://msberends.github.io/AMR//reference article: https://msberends.github.io/AMR//articles diff --git a/docs/reference/ab_from_text.html b/docs/reference/ab_from_text.html index e103b4e4..2800a1d7 100644 --- a/docs/reference/ab_from_text.html +++ b/docs/reference/ab_from_text.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -307,7 +307,7 @@ ... -

        parameters passed on to as.ab()

        +

        arguments passed on to as.ab()

        @@ -316,19 +316,19 @@

        A list, or a character if collapse is not NULL

        Details

        -

        This function is also internally used by as.ab(), although it then only searches for the first drug name and will throw a note if more drug names could have been returned.

        Parameter type

        +

        This function is also internally used by as.ab(), although it then only searches for the first drug name and will throw a note if more drug names could have been returned.

        Argument type

        At default, the function will search for antimicrobial drug names. All text elements will be searched for official names, ATC codes and brand names. As it uses as.ab() internally, it will correct for misspelling.

        With type = "dose" (or similar, like "dosing", "doses"), all text elements will be searched for numeric values that are higher than 100 and do not resemble years. The output will be numeric. It supports any unit (g, mg, IE, etc.) and multiple values in one clinical text, see Examples.

        With type = "administration" (or abbreviations, like "admin", "adm"), all text elements will be searched for a form of drug administration. It supports the following forms (including common abbreviations): buccal, implant, inhalation, instillation, intravenous, nasal, oral, parenteral, rectal, sublingual, transdermal and vaginal. Abbreviations for oral (such as 'po', 'per os') will become "oral", all values for intravenous (such as 'iv', 'intraven') will become "iv". It supports multiple values in one clinical text, see Examples.

        -

        Parameter collapse

        +

        Argument collapse

        Without using collapse, this function will return a list. This can be convenient to use e.g. inside a mutate()):
        df %>% mutate(abx = ab_from_text(clinical_text))

        -

        The returned AB codes can be transformed to official names, groups, etc. with all ab_* functions such as ab_name() and ab_group(), or by using the translate_ab parameter.

        +

        The returned AB codes can be transformed to official names, groups, etc. with all ab_* functions such as ab_name() and ab_group(), or by using the translate_ab argument.

        With using collapse, this function will return a character:
        df %>% mutate(abx = ab_from_text(clinical_text, collapse = "|"))

        diff --git a/docs/reference/ab_property.html b/docs/reference/ab_property.html index ab355fa0..82cee483 100644 --- a/docs/reference/ab_property.html +++ b/docs/reference/ab_property.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -316,7 +316,7 @@ ... -

        other parameters passed on to as.ab()

        +

        other arguments passed on to as.ab()

        administration @@ -356,7 +356,7 @@


        The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

        -

        If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

        +

        If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

        Source

        diff --git a/docs/reference/age.html b/docs/reference/age.html index 1d320977..04297496 100644 --- a/docs/reference/age.html +++ b/docs/reference/age.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -296,7 +296,7 @@ ... -

        parameters passed on to as.POSIXlt(), such as origin

        +

        arguments passed on to as.POSIXlt(), such as origin

        @@ -312,7 +312,7 @@


        The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

        -

        If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

        +

        If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

        Read more on our website!

        diff --git a/docs/reference/age_groups.html b/docs/reference/age_groups.html index e174ea6f..57060d97 100644 --- a/docs/reference/age_groups.html +++ b/docs/reference/age_groups.html @@ -76,7 +76,7 @@ - + @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -270,7 +270,7 @@
        -

        Split ages into age groups defined by the split parameter. This allows for easier demographic (antimicrobial resistance) analysis.

        +

        Split ages into age groups defined by the split argument. This allows for easier demographic (antimicrobial resistance) analysis.

        age_groups(x, split_at = c(12, 25, 55, 75), na.rm = FALSE)
        @@ -297,7 +297,7 @@

        Ordered factor

        Details

        -

        To split ages, the input for the split_at parameter can be:

          +

          To split ages, the input for the split_at argument can be:

          • A numeric vector. A value of e.g. c(10, 20) will split x on 0-9, 10-19 and 20+. A value of only 50 will split x on 0-49 and 50+. The default is to split on young children (0-11), youth (12-24), young adults (25-54), middle-aged adults (55-74) and elderly (75+).

          • A character:

              @@ -314,7 +314,7 @@ The default is to split on young children (0-11), youth (12-24), young adults (2


              The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

              -

              If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              +

              If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              Read more on our website!

              diff --git a/docs/reference/as.ab.html b/docs/reference/as.ab.html index 56cd504d..e0b17590 100644 --- a/docs/reference/as.ab.html +++ b/docs/reference/as.ab.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -326,7 +326,7 @@


              The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

              -

              If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              +

              If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              WHOCC

              diff --git a/docs/reference/as.disk.html b/docs/reference/as.disk.html index e9afafd8..2a3cb493 100644 --- a/docs/reference/as.disk.html +++ b/docs/reference/as.disk.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -302,7 +302,7 @@


              The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

              -

              If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              +

              If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              Read more on our website!

              diff --git a/docs/reference/as.mic.html b/docs/reference/as.mic.html index a990c664..02e00cef 100644 --- a/docs/reference/as.mic.html +++ b/docs/reference/as.mic.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -302,7 +302,7 @@


              The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

              -

              If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              +

              If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              Read more on our website!

              diff --git a/docs/reference/as.mo.html b/docs/reference/as.mo.html index 97600583..02af6cea 100644 --- a/docs/reference/as.mo.html +++ b/docs/reference/as.mo.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -327,7 +327,7 @@ ... -

              other parameters passed on to functions

              +

              other arguments passed on to functions

              @@ -412,7 +412,7 @@


              The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

              -

              If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              +

              If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              Matching score for microorganisms

              diff --git a/docs/reference/as.rsi.html b/docs/reference/as.rsi.html index 383d9e20..3dbd7785 100644 --- a/docs/reference/as.rsi.html +++ b/docs/reference/as.rsi.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -325,7 +325,7 @@ ... -

              for using on a data.frame: names of columns to apply as.rsi() on (supports tidy selection like AMX:VAN). Otherwise: parameters passed on to methods.

              +

              for using on a data.frame: names of columns to apply as.rsi() on (supports tidy selection like AMX:VAN). Otherwise: arguments passed on to methods.

              threshold @@ -357,7 +357,7 @@ reference_data -

              a data.frame to be used for interpretation, which defaults to the rsi_translation data set. Changing this parameter allows for using own interpretation guidelines. This parameter must contain a data set that is equal in structure to the rsi_translation data set (same column names and column types). Please note that the guideline parameter will be ignored when reference_data is manually set.

              +

              a data.frame to be used for interpretation, which defaults to the rsi_translation data set. Changing this argument allows for using own interpretation guidelines. This argument must contain a data set that is equal in structure to the rsi_translation data set (same column names and column types). Please note that the guideline argument will be ignored when reference_data is manually set.

              col_mo @@ -376,13 +376,13 @@

              The as.rsi() function works in four ways:

              1. For cleaning raw / untransformed data. The data will be cleaned to only contain values S, I and R and will try its best to determine this with some intelligence. For example, mixed values with R/SI interpretations and MIC values such as "<0.25; S" will be coerced to "S". Combined interpretations for multiple test methods (as seen in laboratory records) such as "S; S" will be coerced to "S", but a value like "S; I" will return NA with a warning that the input is unclear.

              2. -
              3. For interpreting minimum inhibitory concentration (MIC) values according to EUCAST or CLSI. You must clean your MIC values first using as.mic(), that also gives your columns the new data class mic. Also, be sure to have a column with microorganism names or codes. It will be found automatically, but can be set manually using the mo parameter.

                  +
                • For interpreting minimum inhibitory concentration (MIC) values according to EUCAST or CLSI. You must clean your MIC values first using as.mic(), that also gives your columns the new data class mic. Also, be sure to have a column with microorganism names or codes. It will be found automatically, but can be set manually using the mo argument.

                  • Using dplyr, R/SI interpretation can be done very easily with either:

                    your_data %>% mutate_if(is.mic, as.rsi)             # until dplyr 1.0.0
                     your_data %>% mutate(across(where(is.mic), as.rsi)) # since dplyr 1.0.0
                     
                  • Operators like "<=" will be stripped before interpretation. When using conserve_capped_values = TRUE, an MIC value of e.g. ">2" will always return "R", even if the breakpoint according to the chosen guideline is ">=4". This is to prevent that capped values from raw laboratory data would not be treated conservatively. The default behaviour (conserve_capped_values = FALSE) considers ">2" to be lower than ">=4" and might in this case return "S" or "I".

                • -
                • For interpreting disk diffusion diameters according to EUCAST or CLSI. You must clean your disk zones first using as.disk(), that also gives your columns the new data class disk. Also, be sure to have a column with microorganism names or codes. It will be found automatically, but can be set manually using the mo parameter.

                    +
                  • For interpreting disk diffusion diameters according to EUCAST or CLSI. You must clean your disk zones first using as.disk(), that also gives your columns the new data class disk. Also, be sure to have a column with microorganism names or codes. It will be found automatically, but can be set manually using the mo argument.

                    • Using dplyr, R/SI interpretation can be done very easily with either:

                      your_data %>% mutate_if(is.disk, as.rsi)             # until dplyr 1.0.0
                       your_data %>% mutate(across(where(is.disk), as.rsi)) # since dplyr 1.0.0
                       
                    • @@ -394,8 +394,8 @@

                      Supported guidelines

                      -

                      For interpreting MIC values as well as disk diffusion diameters, supported guidelines to be used as input for the guideline parameter are: "CLSI 2010", "CLSI 2011", "CLSI 2012", "CLSI 2013", "CLSI 2014", "CLSI 2015", "CLSI 2016", "CLSI 2017", "CLSI 2018", "CLSI 2019", "EUCAST 2011", "EUCAST 2012", "EUCAST 2013", "EUCAST 2014", "EUCAST 2015", "EUCAST 2016", "EUCAST 2017", "EUCAST 2018", "EUCAST 2019", "EUCAST 2020".

                      -

                      Simply using "CLSI" or "EUCAST" as input will automatically select the latest version of that guideline. You can set your own data set using the reference_data parameter. The guideline parameter will then be ignored.

                      +

                      For interpreting MIC values as well as disk diffusion diameters, supported guidelines to be used as input for the guideline argument are: "CLSI 2010", "CLSI 2011", "CLSI 2012", "CLSI 2013", "CLSI 2014", "CLSI 2015", "CLSI 2016", "CLSI 2017", "CLSI 2018", "CLSI 2019", "EUCAST 2011", "EUCAST 2012", "EUCAST 2013", "EUCAST 2014", "EUCAST 2015", "EUCAST 2016", "EUCAST 2017", "EUCAST 2018", "EUCAST 2019", "EUCAST 2020".

                      +

                      Simply using "CLSI" or "EUCAST" as input will automatically select the latest version of that guideline. You can set your own data set using the reference_data argument. The guideline argument will then be ignored.

                      After interpretation

                      @@ -410,7 +410,7 @@

                      Other

                      -

                      The function is.rsi.eligible() returns TRUE when a columns contains at most 5% invalid antimicrobial interpretations (not S and/or I and/or R), and FALSE otherwise. The threshold of 5% can be set with the threshold parameter.

                      +

                      The function is.rsi.eligible() returns TRUE when a columns contains at most 5% invalid antimicrobial interpretations (not S and/or I and/or R), and FALSE otherwise. The threshold of 5% can be set with the threshold argument.

                      Interpretation of R and S/I

                      @@ -432,7 +432,7 @@ A microorganism is categorised as Susceptible, Increased exposure when


                      The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                      -

                      If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                      +

                      If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                      Reference data publicly available

                      @@ -463,7 +463,8 @@ The lifecycle of this function is stable= as.mic(0.256), GEN = as.disk(18), TOB = as.disk(16), - NIT = as.mic(32)) + NIT = as.mic(32), + ERY = "R") as.rsi(df) # for single values diff --git a/docs/reference/atc_online.html b/docs/reference/atc_online.html index 33fd4a9e..0fe2d5b7 100644 --- a/docs/reference/atc_online.html +++ b/docs/reference/atc_online.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -310,7 +310,7 @@ ... -

                      parameters to pass on to atc_property

                      +

                      arguments to pass on to atc_property

                      @@ -319,7 +319,7 @@

                      https://www.whocc.no/atc_ddd_alterations__cumulative/ddd_alterations/abbrevations/

                      Details

                      -

                      Options for parameter administration:

                        +

                        Options for argument administration:

                        • "Implant" = Implant

                        • "Inhal" = Inhalation

                        • "Instill" = Instillation

                        • @@ -350,7 +350,7 @@


                          The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                          -

                          If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                          +

                          If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                          Read more on our website!

                          diff --git a/docs/reference/availability.html b/docs/reference/availability.html index be9599aa..b3177ad3 100644 --- a/docs/reference/availability.html +++ b/docs/reference/availability.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -300,7 +300,7 @@


                          The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                          -

                          If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                          +

                          If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                          Read more on our website!

                          diff --git a/docs/reference/bug_drug_combinations.html b/docs/reference/bug_drug_combinations.html index ba5badf8..a1116c72 100644 --- a/docs/reference/bug_drug_combinations.html +++ b/docs/reference/bug_drug_combinations.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -323,7 +323,7 @@ combine_SI -

                          a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the parameter combine_IR, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is TRUE.

                          +

                          a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the argument combine_IR, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is TRUE.

                          combine_IR @@ -365,7 +365,7 @@


                          The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                          -

                          If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                          +

                          If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                          Read more on our website!

                          diff --git a/docs/reference/count.html b/docs/reference/count.html index 02e3a0d2..8e1e34c4 100644 --- a/docs/reference/count.html +++ b/docs/reference/count.html @@ -113,7 +113,7 @@ count_resistant() should be used to count resistant isolates, count_susceptible( AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -326,11 +326,11 @@ count_resistant() should be used to count resistant isolates, count_susceptible( combine_SI -

                          a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the parameter combine_IR, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is TRUE.

                          +

                          a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the argument combine_IR, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is TRUE.

                          combine_IR -

                          a logical to indicate whether all values of I and R must be merged into one, so the output only consists of S vs. I+R (susceptible vs. non-susceptible). This is outdated, see parameter combine_SI.

                          +

                          a logical to indicate whether all values of I and R must be merged into one, so the output only consists of S vs. I+R (susceptible vs. non-susceptible). This is outdated, see argument combine_SI.

                          @@ -349,7 +349,7 @@ count_resistant() should be used to count resistant isolates, count_susceptible(


                          The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                          -

                          If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                          +

                          If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                          Interpretation of R and S/I

                          diff --git a/docs/reference/eucast_rules.html b/docs/reference/eucast_rules.html index 538f9bd8..1adafef2 100644 --- a/docs/reference/eucast_rules.html +++ b/docs/reference/eucast_rules.html @@ -113,7 +113,7 @@ To improve the interpretation of the antibiogram before EUCAST rules are applied AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -351,7 +351,7 @@ Leclercq et al. EUCAST expert rules in antimicrobial susceptibility test

              Important examples include amoxicillin and amoxicillin/clavulanic acid, and trimethoprim and trimethoprim/sulfamethoxazole. Needless to say, for these rules to work, both drugs must be available in the data set.

              -

              Since these rules are not officially approved by EUCAST, they are not applied at default. To use these rules, include "other" to the rules parameter, or use eucast_rules(..., rules = "all").

              +

              Since these rules are not officially approved by EUCAST, they are not applied at default. To use these rules, include "other" to the rules argument, or use eucast_rules(..., rules = "all").

              Antibiotics

              @@ -366,7 +366,7 @@ Leclercq et al. EUCAST expert rules in antimicrobial susceptibility test


              The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

              -

              If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              +

              If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              Reference data publicly available

              diff --git a/docs/reference/filter_ab_class.html b/docs/reference/filter_ab_class.html index 35e6bcf8..015c77e5 100644 --- a/docs/reference/filter_ab_class.html +++ b/docs/reference/filter_ab_class.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -335,7 +335,7 @@


              The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

              -

              If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              +

              If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              See also

              diff --git a/docs/reference/first_isolate.html b/docs/reference/first_isolate.html index 64a2cd32..cf2e2d7c 100644 --- a/docs/reference/first_isolate.html +++ b/docs/reference/first_isolate.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -356,11 +356,11 @@ icu_exclude -

              logical whether ICU isolates should be excluded (rows with value TRUE in column col_icu)

              +

              logical whether ICU isolates should be excluded (rows with value TRUE in the column set with col_icu)

              specimen_group -

              value in column col_specimen to filter on

              +

              value in the column set with col_specimen to filter on

              type @@ -384,7 +384,7 @@ ... -

              parameters passed on to first_isolate() when using filter_first_isolate(), or parameters passed on to key_antibiotics() when using filter_first_weighted_isolate()

              +

              arguments passed on to first_isolate() when using filter_first_isolate(), or arguments passed on to key_antibiotics() when using filter_first_weighted_isolate()

              @@ -397,7 +397,7 @@

              A logical vector

              Details

              -

              These functions are context-aware when used inside dplyr verbs, such as filter(), mutate() and summarise(). This means that then the x parameter can be omitted, please see Examples.

              +

              These functions are context-aware when used inside dplyr verbs, such as filter(), mutate() and summarise(). This means that then the x argument can be omitted, please see Examples.

              The first_isolate() function is a wrapper around the is_new_episode() function, but more efficient for data sets containing microorganism codes or names.

              All isolates with a microbial ID of NA will be excluded as first isolate.

              Why this is so important

              @@ -427,9 +427,9 @@

              There are two ways to determine whether isolates can be included as first weighted isolates which will give generally the same results:

                -
              1. Using type = "keyantibiotics" and parameter ignore_I

                +
              2. Using type = "keyantibiotics" and argument ignore_I

                Any difference from S to R (or vice versa) will (re)select an isolate as a first weighted isolate. With ignore_I = FALSE, also differences from I to S|R (or vice versa) will lead to this. This is a reliable method and 30-35 times faster than method 2. Read more about this in the key_antibiotics() function.

              3. -
              4. Using type = "points" and parameter points_threshold

                +
              5. Using type = "points" and argument points_threshold

                A difference from I to S|R (or vice versa) means 0.5 points, a difference from S to R (or vice versa) means 1 point. When the sum of points exceeds points_threshold, which default to 2, an isolate will be (re)selected as a first weighted isolate.

              @@ -439,7 +439,7 @@


              The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

              -

              If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              +

              If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

              Read more on our website!

              diff --git a/docs/reference/ggplot_pca.html b/docs/reference/ggplot_pca.html index d0179a44..1a8acb88 100644 --- a/docs/reference/ggplot_pca.html +++ b/docs/reference/ggplot_pca.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -396,7 +396,7 @@ ... -

              Parameters passed on to functions

              +

              Arguments passed on to functions

              @@ -406,7 +406,7 @@

              As per their GPL-2 licence that demands documentation of code changes, the changes made based on the source code were:

              1. Rewritten code to remove the dependency on packages plyr, scales and grid

              2. Parametrised more options, like arrow and ellipse settings

              3. -
              4. Hardened all input possibilities by defining the exact type of user input for every parameter

              5. +
              6. Hardened all input possibilities by defining the exact type of user input for every argument

              7. Added total amount of explained variance as a caption in the plot

              8. Cleaned all syntax based on the lintr package, fixed grammatical errors and added integrity checks

              9. Updated documentation

              10. diff --git a/docs/reference/ggplot_rsi.html b/docs/reference/ggplot_rsi.html index 3e7f19ed..39b9a710 100644 --- a/docs/reference/ggplot_rsi.html +++ b/docs/reference/ggplot_rsi.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -372,11 +372,11 @@ combine_SI -

                a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the parameter combine_IR, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is TRUE.

                +

                a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the argument combine_IR, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is TRUE.

                combine_IR -

                a logical to indicate whether all values of I and R must be merged into one, so the output only consists of S vs. I+R (susceptible vs. non-susceptible). This is outdated, see parameter combine_SI.

                +

                a logical to indicate whether all values of I and R must be merged into one, so the output only consists of S vs. I+R (susceptible vs. non-susceptible). This is outdated, see argument combine_SI.

                minimum @@ -428,13 +428,13 @@ ... -

                other parameters passed on to geom_rsi()

                +

                other arguments passed on to geom_rsi()

                Details

                -

                At default, the names of antibiotics will be shown on the plots using ab_name(). This can be set with the translate_ab parameter. See count_df().

                The functions

                +

                At default, the names of antibiotics will be shown on the plots using ab_name(). This can be set with the translate_ab argument. See count_df().

                The functions

                geom_rsi() will take any variable from the data that has an rsi class (created with as.rsi()) using rsi_df() and will plot bars with the percentage R, I and S. The default behaviour is to have the bars stacked and to have the different antibiotics on the x axis.

                @@ -483,7 +483,7 @@ The lifecycle of this function is maturing< select(AMX, NIT, FOS, TMP, CIP) %>% ggplot_rsi(datalabels = FALSE) - # add other ggplot2 parameters as you like: + # add other ggplot2 arguments as you like: example_isolates %>% select(AMX, NIT, FOS, TMP, CIP) %>% ggplot_rsi(width = 0.5, diff --git a/docs/reference/guess_ab_col.html b/docs/reference/guess_ab_col.html index 6a0c6955..9fa27096 100644 --- a/docs/reference/guess_ab_col.html +++ b/docs/reference/guess_ab_col.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -304,7 +304,7 @@


                The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                -

                If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                +

                If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                Read more on our website!

                diff --git a/docs/reference/index.html b/docs/reference/index.html index 00a8e0b9..8fad22b5 100644 --- a/docs/reference/index.html +++ b/docs/reference/index.html @@ -111,7 +111,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 diff --git a/docs/reference/is_new_episode.html b/docs/reference/is_new_episode.html index 56de6ad2..094fee3a 100644 --- a/docs/reference/is_new_episode.html +++ b/docs/reference/is_new_episode.html @@ -76,7 +76,7 @@ - + @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -270,7 +270,7 @@
                -

                This function determines which items in a vector can be considered (the start of) a new episode, based on the parameter episode_days. This can be used to determine clinical episodes for any epidemiological analysis.

                +

                This function determines which items in a vector can be considered (the start of) a new episode, based on the argument episode_days. This can be used to determine clinical episodes for any epidemiological analysis.

                is_new_episode(x, episode_days = 365, ...)
                @@ -306,7 +306,7 @@


                The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                -

                If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                +

                If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                Read more on our website!

                diff --git a/docs/reference/join.html b/docs/reference/join.html index 83f71ffb..82829922 100644 --- a/docs/reference/join.html +++ b/docs/reference/join.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -316,7 +316,7 @@


                The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                -

                If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                +

                If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                Read more on our website!

                diff --git a/docs/reference/key_antibiotics.html b/docs/reference/key_antibiotics.html index ef8dfc62..b2151654 100644 --- a/docs/reference/key_antibiotics.html +++ b/docs/reference/key_antibiotics.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -336,7 +336,7 @@ ... -

                other parameters passed on to functions

                +

                other arguments passed on to functions

                y, z @@ -362,7 +362,7 @@

                Details

                -

                The key_antibiotics() function is context-aware when used inside dplyr verbs, such as filter(), mutate() and summarise(). This means that then the x parameter can be omitted, please see Examples.

                +

                The key_antibiotics() function is context-aware when used inside dplyr verbs, such as filter(), mutate() and summarise(). This means that then the x argument can be omitted, please see Examples.

                The function key_antibiotics() returns a character vector with 12 antibiotic results for every isolate. These isolates can then be compared using key_antibiotics_equal(), to check if two isolates have generally the same antibiogram. Missing and invalid values are replaced with a dot (".") by key_antibiotics() and ignored by key_antibiotics_equal().

                The first_isolate() function only uses this function on the same microbial species from the same patient. Using this, e.g. an MRSA will be included after a susceptible S. aureus (MSSA) is found within the same patient episode. Without key antibiotic comparison it would not. See first_isolate() for more info.

                At default, the antibiotics that are used for Gram-positive bacteria are:

                  @@ -402,15 +402,15 @@


                  The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                  -

                  If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                  +

                  If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                  Key antibiotics

                  There are two ways to determine whether isolates can be included as first weighted isolates which will give generally the same results:

                    -
                  1. Using type = "keyantibiotics" and parameter ignore_I

                    +
                  2. Using type = "keyantibiotics" and argument ignore_I

                    Any difference from S to R (or vice versa) will (re)select an isolate as a first weighted isolate. With ignore_I = FALSE, also differences from I to S|R (or vice versa) will lead to this. This is a reliable method and 30-35 times faster than method 2. Read more about this in the key_antibiotics() function.

                  3. -
                  4. Using type = "points" and parameter points_threshold

                    +
                  5. Using type = "points" and argument points_threshold

                    A difference from I to S|R (or vice versa) means 0.5 points, a difference from S to R (or vice versa) means 1 point. When the sum of points exceeds points_threshold, which default to 2, an isolate will be (re)selected as a first weighted isolate.

                  diff --git a/docs/reference/kurtosis.html b/docs/reference/kurtosis.html index 565b9610..4af9629e 100644 --- a/docs/reference/kurtosis.html +++ b/docs/reference/kurtosis.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -307,7 +307,7 @@


                  The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                  -

                  If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                  +

                  If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                  Read more on our website!

                  diff --git a/docs/reference/lifecycle.html b/docs/reference/lifecycle.html index 7b5c7d82..17499f9b 100644 --- a/docs/reference/lifecycle.html +++ b/docs/reference/lifecycle.html @@ -114,7 +114,7 @@ This page contains a section for every lifecycle (with text borrowed from the af AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -297,7 +297,7 @@ The lifecycle of this function is maturing. The unlying code of


                  The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                  -

                  If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                  +

                  If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                  Retired lifecycle

                  diff --git a/docs/reference/like.html b/docs/reference/like.html index 67c91f1c..2ca7e6e4 100644 --- a/docs/reference/like.html +++ b/docs/reference/like.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -318,7 +318,7 @@


                  The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                  -

                  If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                  +

                  If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                  Read more on our website!

                  diff --git a/docs/reference/mdro.html b/docs/reference/mdro.html index 5010f8ec..62ba13af 100644 --- a/docs/reference/mdro.html +++ b/docs/reference/mdro.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -350,7 +350,7 @@ Ordered factor with levels Details -

                  These functions are context-aware when used inside dplyr verbs, such as filter(), mutate() and summarise(). This means that then the x parameter can be omitted, please see Examples.

                  +

                  These functions are context-aware when used inside dplyr verbs, such as filter(), mutate() and summarise(). This means that then the x argument can be omitted, please see Examples.

                  For the pct_required_classes argument, values above 1 will be divided by 100. This is to support both fractions (0.75 or 3/4) and percentages (75).

                  Currently supported guidelines are (case-insensitive):

                  • guideline = "CMI2012" (default)

                    @@ -375,7 +375,7 @@ Ordered factor with levels
                    The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                    -

                    If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                    +

                    If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                    Antibiotics

                    diff --git a/docs/reference/mo_matching_score.html b/docs/reference/mo_matching_score.html index 18f8ef25..66916c52 100644 --- a/docs/reference/mo_matching_score.html +++ b/docs/reference/mo_matching_score.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -311,7 +311,7 @@


                    The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                    -

                    If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                    +

                    If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                    Author

                    Matthijs S. Berends

                    diff --git a/docs/reference/mo_property.html b/docs/reference/mo_property.html index c200464e..37658f80 100644 --- a/docs/reference/mo_property.html +++ b/docs/reference/mo_property.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -340,7 +340,7 @@ ... -

                    other parameters passed on to as.mo(), such as 'allow_uncertain' and 'ignore_pattern'

                    +

                    other arguments passed on to as.mo(), such as 'allow_uncertain' and 'ignore_pattern'

                    ab @@ -378,7 +378,7 @@

                    The short name - mo_shortname() - almost always returns the first character of the genus and the full species, like "E. coli". Exceptions are abbreviations of staphylococci (such as "CoNS", Coagulase-Negative Staphylococci) and beta-haemolytic streptococci (such as "GBS", Group B Streptococci). Please bear in mind that e.g. E. coli could mean Escherichia coli (kingdom of Bacteria) as well as Entamoeba coli (kingdom of Protozoa). Returning to the full name will be done using as.mo() internally, giving priority to bacteria and human pathogens, i.e. "E. coli" will be considered Escherichia coli. In other words, mo_fullname(mo_shortname("Entamoeba coli")) returns "Escherichia coli".

                    Since the top-level of the taxonomy is sometimes referred to as 'kingdom' and sometimes as 'domain', the functions mo_kingdom() and mo_domain() return the exact same results.

                    The Gram stain - mo_gramstain() - will be determined based on the taxonomic kingdom and phylum. According to Cavalier-Smith (2002, PMID 11837318), who defined subkingdoms Negibacteria and Posibacteria, only these phyla are Posibacteria: Actinobacteria, Chloroflexi, Firmicutes and Tenericutes. These bacteria are considered Gram-positive - all other bacteria are considered Gram-negative. Species outside the kingdom of Bacteria will return a value NA. Functions mo_is_gram_negative() and mo_is_gram_positive() always return TRUE or FALSE (except when the input is NA or the MO code is UNKNOWN), thus always return FALSE for species outside the taxonomic kingdom of Bacteria.

                    -

                    Intrinsic resistance - mo_is_intrinsic_resistant() - will be determined based on the intrinsic_resistant data set, which is based on 'EUCAST Expert Rules' and 'EUCAST Intrinsic Resistance and Unusual Phenotypes' v3.2 from 2020. The mo_is_intrinsic_resistant() can be vectorised over parameters x (input for microorganisms) and over ab (input for antibiotics).

                    +

                    Intrinsic resistance - mo_is_intrinsic_resistant() - will be determined based on the intrinsic_resistant data set, which is based on 'EUCAST Expert Rules' and 'EUCAST Intrinsic Resistance and Unusual Phenotypes' v3.2 from 2020. The mo_is_intrinsic_resistant() can be vectorised over arguments x (input for microorganisms) and over ab (input for antibiotics).

                    All output will be translated where possible.

                    The function mo_url() will return the direct URL to the online database entry, which also shows the scientific reference of the concerned species.

                    Stable lifecycle

                    @@ -387,7 +387,7 @@


                    The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                    -

                    If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                    +

                    If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                    Matching score for microorganisms

                    diff --git a/docs/reference/mo_source.html b/docs/reference/mo_source.html index 04e815dd..521cc4fa 100644 --- a/docs/reference/mo_source.html +++ b/docs/reference/mo_source.html @@ -113,7 +113,7 @@ This is the fastest way to have your organisation (or analysis) specific codes p AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -298,7 +298,7 @@ This is the fastest way to have your organisation (or analysis) specific codes p

                    Details

                    The reference file can be a text file separated with commas (CSV) or tabs or pipes, an Excel file (either 'xls' or 'xlsx' format) or an R object file (extension '.rds'). To use an Excel file, you will need to have the readxl package installed.

                    -

                    set_mo_source() will check the file for validity: it must be a data.frame, must have a column named "mo" which contains values from microorganisms$mo and must have a reference column with your own defined values. If all tests pass, set_mo_source() will read the file into R and will ask to export it to "~/mo_source.rds". The CRAN policy disallows packages to write to the file system, although 'exceptions may be allowed in interactive sessions if the package obtains confirmation from the user'. For this reason, this function only works in interactive sessions so that the user can specifically confirm and allow that this file will be created. The destination of this file can be set with the destination parameter and defaults to the user's home directory. It can also be set as an R option, using options(AMR_mo_source = "my/location/file.rds").

                    +

                    set_mo_source() will check the file for validity: it must be a data.frame, must have a column named "mo" which contains values from microorganisms$mo and must have a reference column with your own defined values. If all tests pass, set_mo_source() will read the file into R and will ask to export it to "~/mo_source.rds". The CRAN policy disallows packages to write to the file system, although 'exceptions may be allowed in interactive sessions if the package obtains confirmation from the user'. For this reason, this function only works in interactive sessions so that the user can specifically confirm and allow that this file will be created. The destination of this file can be set with the destination argument and defaults to the user's home directory. It can also be set as an R option, using options(AMR_mo_source = "my/location/file.rds").

                    The created compressed data file "mo_source.rds" will be used at default for MO determination (function as.mo() and consequently all mo_* functions like mo_genus() and mo_gramstain()). The location and timestamp of the original file will be saved as an attribute to the compressed data file.

                    The function get_mo_source() will return the data set by reading "mo_source.rds" with readRDS(). If the original file has changed (by checking the location and timestamp of the original file), it will call set_mo_source() to update the data file automatically if used in an interactive session.

                    Reading an Excel file (.xlsx) with only one row has a size of 8-9 kB. The compressed file created with set_mo_source() will then have a size of 0.1 kB and can be read by get_mo_source() in only a couple of microseconds (millionths of a second).

                    @@ -368,7 +368,7 @@ This is the fastest way to have your organisation (or analysis) specific codes p


                    The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                    -

                    If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                    +

                    If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                    Read more on our website!

                    diff --git a/docs/reference/plot.html b/docs/reference/plot.html index 25e73d2a..62ede77a 100644 --- a/docs/reference/plot.html +++ b/docs/reference/plot.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -355,7 +355,7 @@ ... -

                    Parameters passed on to functions

                    +

                    Arguments passed on to functions

                    height @@ -394,7 +394,7 @@


                    The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                    -

                    If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                    +

                    If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                    Read more on our website!

                    diff --git a/docs/reference/proportion.html b/docs/reference/proportion.html index ff9e6f9d..0e311fc3 100644 --- a/docs/reference/proportion.html +++ b/docs/reference/proportion.html @@ -113,7 +113,7 @@ resistance() should be used to calculate resistance, susceptibility() should be AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -342,11 +342,11 @@ resistance() should be used to calculate resistance, susceptibility() should be combine_SI -

                    a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the parameter combine_IR, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is TRUE.

                    +

                    a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the argument combine_IR, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is TRUE.

                    combine_IR -

                    a logical to indicate whether all values of I and R must be merged into one, so the output only consists of S vs. I+R (susceptible vs. non-susceptible). This is outdated, see parameter combine_SI.

                    +

                    a logical to indicate whether all values of I and R must be merged into one, so the output only consists of S vs. I+R (susceptible vs. non-susceptible). This is outdated, see argument combine_SI.

                    @@ -360,7 +360,7 @@ resistance() should be used to calculate resistance, susceptibility() should be

                    The function resistance() is equal to the function proportion_R(). The function susceptibility() is equal to the function proportion_SI().

                    Remember that you should filter your table to let it contain only first isolates! This is needed to exclude duplicates and to reduce selection bias. Use first_isolate() to determine them in your data set.

                    -

                    These functions are not meant to count isolates, but to calculate the proportion of resistance/susceptibility. Use the count() functions to count isolates. The function susceptibility() is essentially equal to count_susceptible() / count_all(). Low counts can influence the outcome - the proportion functions may camouflage this, since they only return the proportion (albeit being dependent on the minimum parameter).

                    +

                    These functions are not meant to count isolates, but to calculate the proportion of resistance/susceptibility. Use the count() functions to count isolates. The function susceptibility() is essentially equal to count_susceptible() / count_all(). Low counts can influence the outcome - the proportion functions may camouflage this, since they only return the proportion (albeit being dependent on the minimum argument).

                    The function proportion_df() takes any variable from data that has an rsi class (created with as.rsi()) and calculates the proportions R, I and S. It also supports grouped variables. The function rsi_df() works exactly like proportion_df(), but adds the number of isolates.

                    Combination therapy

                    @@ -399,7 +399,7 @@ resistance() should be used to calculate resistance, susceptibility() should be


                    The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                    -

                    If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                    +

                    If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                    Interpretation of R and S/I

                    diff --git a/docs/reference/random.html b/docs/reference/random.html index 066d0f3a..47d6989c 100644 --- a/docs/reference/random.html +++ b/docs/reference/random.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -310,7 +310,7 @@

                    Details

                    The base R function sample() is used for generating values.

                    -

                    Generated values are based on the latest EUCAST guideline implemented in the rsi_translation data set. To create specific generated values per bug or drug, set the mo and/or ab parameter.

                    +

                    Generated values are based on the latest EUCAST guideline implemented in the rsi_translation data set. To create specific generated values per bug or drug, set the mo and/or ab argument.

                    Maturing lifecycle

                    diff --git a/docs/reference/resistance_predict.html b/docs/reference/resistance_predict.html index c9710dbc..575488ae 100644 --- a/docs/reference/resistance_predict.html +++ b/docs/reference/resistance_predict.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -362,7 +362,7 @@ ... -

                    parameters passed on to functions

                    +

                    arguments passed on to functions

                    main @@ -389,7 +389,7 @@

                    Furthermore, the model itself is available as an attribute: attributes(x)$model, please see Examples.

                    Details

                    -

                    Valid options for the statistical model (parameter model) are:

                      +

                      Valid options for the statistical model (argument model) are:

                      • "binomial" or "binom" or "logit": a generalised linear regression model with binomial distribution

                      • "loglin" or "poisson": a generalised log-linear regression model with poisson distribution

                      • "lin" or "linear": a linear regression model

                      • diff --git a/docs/reference/skewness.html b/docs/reference/skewness.html index fdc705b0..15b11495 100644 --- a/docs/reference/skewness.html +++ b/docs/reference/skewness.html @@ -113,7 +113,7 @@ When negative ('left-skewed'): the left tail is longer; the mass of the distribu AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -305,7 +305,7 @@ When negative ('left-skewed'): the left tail is longer; the mass of the distribu


                        The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                        -

                        If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                        +

                        If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                        Read more on our website!

                        diff --git a/docs/reference/translate.html b/docs/reference/translate.html index a5c0cb91..3c508f8e 100644 --- a/docs/reference/translate.html +++ b/docs/reference/translate.html @@ -112,7 +112,7 @@ AMR (for R) - 1.4.0.9042 + 1.4.0.9043 @@ -296,7 +296,7 @@


                        The lifecycle of this function is stable. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.

                        -

                        If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                        +

                        If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.

                        Read more on our website!

                        @@ -304,7 +304,7 @@ The lifecycle of this function is stableOn our website https://msberends.github.io/AMR/ you can find a comprehensive tutorial about how to conduct AMR analysis, the complete documentation of all functions and an example analysis using WHONET data. As we would like to better understand the backgrounds and needs of our users, please participate in our survey!

                        Examples

                        -
                        # The 'language' parameter of below functions
                        +    
                        # The 'language' argument of below functions
                         # will be set automatically to your system language
                         # with get_locale()
                         
                        diff --git a/docs/survey.html b/docs/survey.html
                        index d706bcdb..e0188b8b 100644
                        --- a/docs/survey.html
                        +++ b/docs/survey.html
                        @@ -111,7 +111,7 @@
                               
                               
                                 AMR (for R)
                        -        1.4.0.9042
                        +        1.4.0.9043
                               
                             
                         
                        diff --git a/man/ab_from_text.Rd b/man/ab_from_text.Rd
                        index e1d76bdf..16dbdfc6 100644
                        --- a/man/ab_from_text.Rd
                        +++ b/man/ab_from_text.Rd
                        @@ -24,7 +24,7 @@ ab_from_text(
                         
                         \item{thorough_search}{logical to indicate whether the input must be extensively searched for misspelling and other faulty input values. Setting this to \code{TRUE} will take considerably more time than when using \code{FALSE}. At default, it will turn \code{TRUE} when all input elements contain a maximum of three words.}
                         
                        -\item{...}{parameters passed on to \code{\link[=as.ab]{as.ab()}}}
                        +\item{...}{arguments passed on to \code{\link[=as.ab]{as.ab()}}}
                         }
                         \value{
                         A \link{list}, or a  \link{character} if \code{collapse} is not \code{NULL}
                        @@ -34,7 +34,7 @@ Use this function on e.g. clinical texts from health care records. It returns a
                         }
                         \details{
                         This function is also internally used by \code{\link[=as.ab]{as.ab()}}, although it then only searches for the first drug name and will throw a note if more drug names could have been returned.
                        -\subsection{Parameter \code{type}}{
                        +\subsection{Argument \code{type}}{
                         
                         At default, the function will search for antimicrobial drug names. All text elements will be searched for official names, ATC codes and brand names. As it uses \code{\link[=as.ab]{as.ab()}} internally, it will correct for misspelling.
                         
                        @@ -43,12 +43,12 @@ With \code{type = "dose"} (or similar, like "dosing", "doses"), all text element
                         With \code{type = "administration"} (or abbreviations, like "admin", "adm"), all text elements will be searched for a form of drug administration. It supports the following forms (including common abbreviations): buccal, implant, inhalation, instillation, intravenous, nasal, oral, parenteral, rectal, sublingual, transdermal and vaginal. Abbreviations for oral (such as 'po', 'per os') will become "oral", all values for intravenous (such as 'iv', 'intraven') will become "iv". It supports multiple values in one clinical text, see \emph{Examples}.
                         }
                         
                        -\subsection{Parameter \code{collapse}}{
                        +\subsection{Argument \code{collapse}}{
                         
                         Without using \code{collapse}, this function will return a \link{list}. This can be convenient to use e.g. inside a \code{mutate()}):\cr
                         \code{df \%>\% mutate(abx = ab_from_text(clinical_text))}
                         
                        -The returned AB codes can be transformed to official names, groups, etc. with all \code{\link[=ab_property]{ab_*}} functions such as \code{\link[=ab_name]{ab_name()}} and \code{\link[=ab_group]{ab_group()}}, or by using the \code{translate_ab} parameter.
                        +The returned AB codes can be transformed to official names, groups, etc. with all \code{\link[=ab_property]{ab_*}} functions such as \code{\link[=ab_name]{ab_name()}} and \code{\link[=ab_group]{ab_group()}}, or by using the \code{translate_ab} argument.
                         
                         With using \code{collapse}, this function will return a \link{character}:\cr
                         \code{df \%>\% mutate(abx = ab_from_text(clinical_text, collapse = "|"))}
                        diff --git a/man/ab_property.Rd b/man/ab_property.Rd
                        index fdbd80b5..88373c8c 100644
                        --- a/man/ab_property.Rd
                        +++ b/man/ab_property.Rd
                        @@ -50,7 +50,7 @@ ab_property(x, property = "name", language = get_locale(), ...)
                         
                         \item{tolower}{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".}
                         
                        -\item{...}{other parameters passed on to \code{\link[=as.ab]{as.ab()}}}
                        +\item{...}{other arguments passed on to \code{\link[=as.ab]{as.ab()}}}
                         
                         \item{administration}{way of administration, either \code{"oral"} or \code{"iv"}}
                         
                        @@ -81,7 +81,7 @@ The function \code{\link[=ab_url]{ab_url()}} will return the direct URL to the o
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Source}{
                        diff --git a/man/age.Rd b/man/age.Rd
                        index 7e99f68d..4a642bb4 100644
                        --- a/man/age.Rd
                        +++ b/man/age.Rd
                        @@ -15,7 +15,7 @@ age(x, reference = Sys.Date(), exact = FALSE, na.rm = FALSE, ...)
                         
                         \item{na.rm}{a logical to indicate whether missing values should be removed}
                         
                        -\item{...}{parameters passed on to \code{\link[=as.POSIXlt]{as.POSIXlt()}}, such as \code{origin}}
                        +\item{...}{arguments passed on to \code{\link[=as.POSIXlt]{as.POSIXlt()}}, such as \code{origin}}
                         }
                         \value{
                         An \link{integer} (no decimals) if \code{exact = FALSE}, a \link{double} (with decimals) otherwise
                        @@ -31,7 +31,7 @@ Ages below 0 will be returned as \code{NA} with a warning. Ages above 120 will o
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/age_groups.Rd b/man/age_groups.Rd
                        index a213c444..2af8d7a6 100644
                        --- a/man/age_groups.Rd
                        +++ b/man/age_groups.Rd
                        @@ -17,10 +17,10 @@ age_groups(x, split_at = c(12, 25, 55, 75), na.rm = FALSE)
                         Ordered \link{factor}
                         }
                         \description{
                        -Split ages into age groups defined by the \code{split} parameter. This allows for easier demographic (antimicrobial resistance) analysis.
                        +Split ages into age groups defined by the \code{split} argument. This allows for easier demographic (antimicrobial resistance) analysis.
                         }
                         \details{
                        -To split ages, the input for the \code{split_at} parameter can be:
                        +To split ages, the input for the \code{split_at} argument can be:
                         \itemize{
                         \item A numeric vector. A value of e.g. \code{c(10, 20)} will split \code{x} on 0-9, 10-19 and 20+. A value of only \code{50} will split \code{x} on 0-49 and 50+.
                         The default is to split on young children (0-11), youth (12-24), young adults (25-54), middle-aged adults (55-74) and elderly (75+).
                        @@ -38,7 +38,7 @@ The default is to split on young children (0-11), youth (12-24), young adults (2
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/as.ab.Rd b/man/as.ab.Rd
                        index cd5f7fed..cde77591 100644
                        --- a/man/as.ab.Rd
                        +++ b/man/as.ab.Rd
                        @@ -54,7 +54,7 @@ European Commission Public Health PHARMACEUTICALS - COMMUNITY REGISTER: \url{htt
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{WHOCC}{
                        diff --git a/man/as.disk.Rd b/man/as.disk.Rd
                        index 99e0b67b..4f782f5e 100644
                        --- a/man/as.disk.Rd
                        +++ b/man/as.disk.Rd
                        @@ -29,7 +29,7 @@ Interpret disk values as RSI values with \code{\link[=as.rsi]{as.rsi()}}. It sup
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/as.mic.Rd b/man/as.mic.Rd
                        index dc35d6ee..615169c1 100755
                        --- a/man/as.mic.Rd
                        +++ b/man/as.mic.Rd
                        @@ -29,7 +29,7 @@ To interpret MIC values as RSI values, use \code{\link[=as.rsi]{as.rsi()}} on MI
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/as.mo.Rd b/man/as.mo.Rd
                        index 3bea43fe..7ad21b42 100644
                        --- a/man/as.mo.Rd
                        +++ b/man/as.mo.Rd
                        @@ -47,7 +47,7 @@ This excludes \emph{Enterococci} at default (who are in group D), use \code{Lanc
                         
                         \item{language}{language to translate text like "no growth", which defaults to the system language (see \code{\link[=get_locale]{get_locale()}})}
                         
                        -\item{...}{other parameters passed on to functions}
                        +\item{...}{other arguments passed on to functions}
                         }
                         \value{
                         A \link{character} \link{vector} with additional class \code{\link{mo}}
                        @@ -136,7 +136,7 @@ The intelligent rules consider the prevalence of microorganisms in humans groupe
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Matching score for microorganisms}{
                        diff --git a/man/as.rsi.Rd b/man/as.rsi.Rd
                        index f66ac98b..99e02870 100755
                        --- a/man/as.rsi.Rd
                        +++ b/man/as.rsi.Rd
                        @@ -53,7 +53,7 @@ is.rsi.eligible(x, threshold = 0.05)
                         \arguments{
                         \item{x}{vector of values (for class \code{\link{mic}}: an MIC value in mg/L, for class \code{\link{disk}}: a disk diffusion radius in millimetres)}
                         
                        -\item{...}{for using on a \link{data.frame}: names of columns to apply \code{\link[=as.rsi]{as.rsi()}} on (supports tidy selection like \code{AMX:VAN}). Otherwise: parameters passed on to methods.}
                        +\item{...}{for using on a \link{data.frame}: names of columns to apply \code{\link[=as.rsi]{as.rsi()}} on (supports tidy selection like \code{AMX:VAN}). Otherwise: arguments passed on to methods.}
                         
                         \item{threshold}{maximum fraction of invalid antimicrobial interpretations of \code{x}, please see \emph{Examples}}
                         
                        @@ -69,7 +69,7 @@ is.rsi.eligible(x, threshold = 0.05)
                         
                         \item{add_intrinsic_resistance}{\emph{(only useful when using a EUCAST guideline)} a logical to indicate whether intrinsic antibiotic resistance must also be considered for applicable bug-drug combinations, meaning that e.g. ampicillin will always return "R" in \emph{Klebsiella} species. Determination is based on the \link{intrinsic_resistant} data set, that itself is based on \href{https://www.eucast.org/expert_rules_and_intrinsic_resistance/}{'EUCAST Expert Rules' and 'EUCAST Intrinsic Resistance and Unusual Phenotypes' v3.2} from 2020.}
                         
                        -\item{reference_data}{a \link{data.frame} to be used for interpretation, which defaults to the \link{rsi_translation} data set. Changing this parameter allows for using own interpretation guidelines. This parameter must contain a data set that is equal in structure to the \link{rsi_translation} data set (same column names and column types). Please note that the \code{guideline} parameter will be ignored when \code{reference_data} is manually set.}
                        +\item{reference_data}{a \link{data.frame} to be used for interpretation, which defaults to the \link{rsi_translation} data set. Changing this argument allows for using own interpretation guidelines. This argument must contain a data set that is equal in structure to the \link{rsi_translation} data set (same column names and column types). Please note that the \code{guideline} argument will be ignored when \code{reference_data} is manually set.}
                         
                         \item{col_mo}{column name of the IDs of the microorganisms (see \code{\link[=as.mo]{as.mo()}}), defaults to the first column of class \code{\link{mo}}. Values will be coerced using \code{\link[=as.mo]{as.mo()}}.}
                         }
                        @@ -85,14 +85,14 @@ Interpret minimum inhibitory concentration (MIC) values and disk diffusion diame
                         The \code{\link[=as.rsi]{as.rsi()}} function works in four ways:
                         \enumerate{
                         \item For \strong{cleaning raw / untransformed data}. The data will be cleaned to only contain values S, I and R and will try its best to determine this with some intelligence. For example, mixed values with R/SI interpretations and MIC values such as \code{"<0.25; S"} will be coerced to \code{"S"}. Combined interpretations for multiple test methods (as seen in laboratory records) such as \code{"S; S"} will be coerced to \code{"S"}, but a value like \code{"S; I"} will return \code{NA} with a warning that the input is unclear.
                        -\item For \strong{interpreting minimum inhibitory concentration (MIC) values} according to EUCAST or CLSI. You must clean your MIC values first using \code{\link[=as.mic]{as.mic()}}, that also gives your columns the new data class \code{\link{mic}}. Also, be sure to have a column with microorganism names or codes. It will be found automatically, but can be set manually using the \code{mo} parameter.
                        +\item For \strong{interpreting minimum inhibitory concentration (MIC) values} according to EUCAST or CLSI. You must clean your MIC values first using \code{\link[=as.mic]{as.mic()}}, that also gives your columns the new data class \code{\link{mic}}. Also, be sure to have a column with microorganism names or codes. It will be found automatically, but can be set manually using the \code{mo} argument.
                         \itemize{
                         \item Using \code{dplyr}, R/SI interpretation can be done very easily with either:\preformatted{your_data \%>\% mutate_if(is.mic, as.rsi)             # until dplyr 1.0.0
                         your_data \%>\% mutate(across(where(is.mic), as.rsi)) # since dplyr 1.0.0
                         }
                         \item Operators like "<=" will be stripped before interpretation. When using \code{conserve_capped_values = TRUE}, an MIC value of e.g. ">2" will always return "R", even if the breakpoint according to the chosen guideline is ">=4". This is to prevent that capped values from raw laboratory data would not be treated conservatively. The default behaviour (\code{conserve_capped_values = FALSE}) considers ">2" to be lower than ">=4" and might in this case return "S" or "I".
                         }
                        -\item For \strong{interpreting disk diffusion diameters} according to EUCAST or CLSI. You must clean your disk zones first using \code{\link[=as.disk]{as.disk()}}, that also gives your columns the new data class \code{\link{disk}}. Also, be sure to have a column with microorganism names or codes. It will be found automatically, but can be set manually using the \code{mo} parameter.
                        +\item For \strong{interpreting disk diffusion diameters} according to EUCAST or CLSI. You must clean your disk zones first using \code{\link[=as.disk]{as.disk()}}, that also gives your columns the new data class \code{\link{disk}}. Also, be sure to have a column with microorganism names or codes. It will be found automatically, but can be set manually using the \code{mo} argument.
                         \itemize{
                         \item Using \code{dplyr}, R/SI interpretation can be done very easily with either:\preformatted{your_data \%>\% mutate_if(is.disk, as.rsi)             # until dplyr 1.0.0
                         your_data \%>\% mutate(across(where(is.disk), as.rsi)) # since dplyr 1.0.0
                        @@ -104,9 +104,9 @@ your_data \%>\% mutate(across(where(is.disk), as.rsi)) # since dplyr 1.0.0
                         
                         \subsection{Supported guidelines}{
                         
                        -For interpreting MIC values as well as disk diffusion diameters, supported guidelines to be used as input for the \code{guideline} parameter are: "CLSI 2010", "CLSI 2011", "CLSI 2012", "CLSI 2013", "CLSI 2014", "CLSI 2015", "CLSI 2016", "CLSI 2017", "CLSI 2018", "CLSI 2019", "EUCAST 2011", "EUCAST 2012", "EUCAST 2013", "EUCAST 2014", "EUCAST 2015", "EUCAST 2016", "EUCAST 2017", "EUCAST 2018", "EUCAST 2019", "EUCAST 2020".
                        +For interpreting MIC values as well as disk diffusion diameters, supported guidelines to be used as input for the \code{guideline} argument are: "CLSI 2010", "CLSI 2011", "CLSI 2012", "CLSI 2013", "CLSI 2014", "CLSI 2015", "CLSI 2016", "CLSI 2017", "CLSI 2018", "CLSI 2019", "EUCAST 2011", "EUCAST 2012", "EUCAST 2013", "EUCAST 2014", "EUCAST 2015", "EUCAST 2016", "EUCAST 2017", "EUCAST 2018", "EUCAST 2019", "EUCAST 2020".
                         
                        -Simply using \code{"CLSI"} or \code{"EUCAST"} as input will automatically select the latest version of that guideline. You can set your own data set using the \code{reference_data} parameter. The \code{guideline} parameter will then be ignored.
                        +Simply using \code{"CLSI"} or \code{"EUCAST"} as input will automatically select the latest version of that guideline. You can set your own data set using the \code{reference_data} argument. The \code{guideline} argument will then be ignored.
                         }
                         
                         \subsection{After interpretation}{
                        @@ -121,7 +121,7 @@ The repository of this package \href{https://github.com/msberends/AMR/blob/maste
                         
                         \subsection{Other}{
                         
                        -The function \code{\link[=is.rsi.eligible]{is.rsi.eligible()}} returns \code{TRUE} when a columns contains at most 5\% invalid antimicrobial interpretations (not S and/or I and/or R), and \code{FALSE} otherwise. The threshold of 5\% can be set with the \code{threshold} parameter.
                        +The function \code{\link[=is.rsi.eligible]{is.rsi.eligible()}} returns \code{TRUE} when a columns contains at most 5\% invalid antimicrobial interpretations (not S and/or I and/or R), and \code{FALSE} otherwise. The threshold of 5\% can be set with the \code{threshold} argument.
                         }
                         }
                         \section{Interpretation of R and S/I}{
                        @@ -144,7 +144,7 @@ This AMR package honours this new insight. Use \code{\link[=susceptibility]{susc
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Reference data publicly available}{
                        @@ -173,7 +173,8 @@ df <- data.frame(microorganism = "Escherichia coli",
                                          CIP = as.mic(0.256),
                                          GEN = as.disk(18),
                                          TOB = as.disk(16),
                        -                 NIT = as.mic(32))
                        +                 NIT = as.mic(32),
                        +                 ERY = "R")
                         as.rsi(df)
                         
                         # for single values
                        diff --git a/man/atc_online.Rd b/man/atc_online.Rd
                        index 60f508ad..e3b612a1 100644
                        --- a/man/atc_online.Rd
                        +++ b/man/atc_online.Rd
                        @@ -32,13 +32,13 @@ atc_online_ddd(atc_code, ...)
                         
                         \item{url_vet}{url of website of the WHOCC for veterinary medicine. The sign \verb{\%s} can be used as a placeholder for ATC_vet codes (that all start with "Q").}
                         
                        -\item{...}{parameters to pass on to \code{atc_property}}
                        +\item{...}{arguments to pass on to \code{atc_property}}
                         }
                         \description{
                         Gets data from the WHO to determine properties of an ATC (e.g. an antibiotic), such as the name, defined daily dose (DDD) or standard unit.
                         }
                         \details{
                        -Options for parameter \code{administration}:
                        +Options for argument \code{administration}:
                         \itemize{
                         \item \code{"Implant"} = Implant
                         \item \code{"Inhal"} = Inhalation
                        @@ -71,7 +71,7 @@ Abbreviations of return values when using \code{property = "U"} (unit):
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/availability.Rd b/man/availability.Rd
                        index 96d7b42e..59aff104 100644
                        --- a/man/availability.Rd
                        +++ b/man/availability.Rd
                        @@ -25,7 +25,7 @@ The function returns a \link{data.frame} with columns \code{"resistant"} and \co
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/bug_drug_combinations.Rd b/man/bug_drug_combinations.Rd
                        index 6c8a3f09..0849b7b0 100644
                        --- a/man/bug_drug_combinations.Rd
                        +++ b/man/bug_drug_combinations.Rd
                        @@ -39,7 +39,7 @@ bug_drug_combinations(x, col_mo = NULL, FUN = mo_shortname, ...)
                         
                         \item{minimum}{the minimum allowed number of available (tested) isolates. Any isolate count lower than \code{minimum} will return \code{NA} with a warning. The default number of \code{30} isolates is advised by the Clinical and Laboratory Standards Institute (CLSI) as best practice, see Source.}
                         
                        -\item{combine_SI}{a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the parameter \code{combine_IR}, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is \code{TRUE}.}
                        +\item{combine_SI}{a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the argument \code{combine_IR}, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is \code{TRUE}.}
                         
                         \item{combine_IR}{logical to indicate whether values R and I should be summed}
                         
                        @@ -68,7 +68,7 @@ The function \code{\link[=format]{format()}} calculates the resistance per bug-d
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/count.Rd b/man/count.Rd
                        index df26b5a9..9c586a6f 100644
                        --- a/man/count.Rd
                        +++ b/man/count.Rd
                        @@ -51,9 +51,9 @@ count_df(
                         
                         \item{language}{language of the returned text, defaults to system language (see \code{\link[=get_locale]{get_locale()}}) and can also be set with \code{getOption("AMR_locale")}. Use \code{language = NULL} or \code{language = ""} to prevent translation.}
                         
                        -\item{combine_SI}{a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the parameter \code{combine_IR}, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is \code{TRUE}.}
                        +\item{combine_SI}{a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the argument \code{combine_IR}, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is \code{TRUE}.}
                         
                        -\item{combine_IR}{a logical to indicate whether all values of I and R must be merged into one, so the output only consists of S vs. I+R (susceptible vs. non-susceptible). This is outdated, see parameter \code{combine_SI}.}
                        +\item{combine_IR}{a logical to indicate whether all values of I and R must be merged into one, so the output only consists of S vs. I+R (susceptible vs. non-susceptible). This is outdated, see argument \code{combine_SI}.}
                         }
                         \value{
                         An \link{integer}
                        @@ -77,7 +77,7 @@ The function \code{\link[=count_df]{count_df()}} takes any variable from \code{d
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Interpretation of R and S/I}{
                        diff --git a/man/eucast_rules.Rd b/man/eucast_rules.Rd
                        index 321bba7a..543992fb 100644
                        --- a/man/eucast_rules.Rd
                        +++ b/man/eucast_rules.Rd
                        @@ -66,7 +66,7 @@ Before further processing, two non-EUCAST rules about drug combinations can be a
                         
                         Important examples include amoxicillin and amoxicillin/clavulanic acid, and trimethoprim and trimethoprim/sulfamethoxazole. Needless to say, for these rules to work, both drugs must be available in the data set.
                         
                        -Since these rules are not officially approved by EUCAST, they are not applied at default. To use these rules, include \code{"other"} to the \code{rules} parameter, or use \code{eucast_rules(..., rules = "all")}.
                        +Since these rules are not officially approved by EUCAST, they are not applied at default. To use these rules, include \code{"other"} to the \code{rules} argument, or use \code{eucast_rules(..., rules = "all")}.
                         }
                         }
                         \section{Antibiotics}{
                        @@ -83,7 +83,7 @@ Amikacin (\code{AMK}, \href{https://www.whocc.no/atc_ddd_index/?code=J01GB06&sho
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Reference data publicly available}{
                        diff --git a/man/filter_ab_class.Rd b/man/filter_ab_class.Rd
                        index f80035e5..550261af 100644
                        --- a/man/filter_ab_class.Rd
                        +++ b/man/filter_ab_class.Rd
                        @@ -67,7 +67,7 @@ All columns of \code{x} will be searched for known antibiotic names, abbreviatio
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \examples{
                        diff --git a/man/first_isolate.Rd b/man/first_isolate.Rd
                        index ba34f5e6..80de1d67 100755
                        --- a/man/first_isolate.Rd
                        +++ b/man/first_isolate.Rd
                        @@ -70,9 +70,9 @@ filter_first_weighted_isolate(
                         
                         \item{testcodes_exclude}{character vector with test codes that should be excluded (case-insensitive)}
                         
                        -\item{icu_exclude}{logical whether ICU isolates should be excluded (rows with value \code{TRUE} in column \code{col_icu})}
                        +\item{icu_exclude}{logical whether ICU isolates should be excluded (rows with value \code{TRUE} in the column set with \code{col_icu})}
                         
                        -\item{specimen_group}{value in column \code{col_specimen} to filter on}
                        +\item{specimen_group}{value in the column set with \code{col_specimen} to filter on}
                         
                         \item{type}{type to determine weighed isolates; can be \code{"keyantibiotics"} or \code{"points"}, see Details}
                         
                        @@ -84,7 +84,7 @@ filter_first_weighted_isolate(
                         
                         \item{include_unknown}{logical to determine whether 'unknown' microorganisms should be included too, i.e. microbial code \code{"UNKNOWN"}, which defaults to \code{FALSE}. For WHONET users, this means that all records with organism code \code{"con"} (\emph{contamination}) will be excluded at default. Isolates with a microbial ID of \code{NA} will always be excluded as first isolate.}
                         
                        -\item{...}{parameters passed on to \code{\link[=first_isolate]{first_isolate()}} when using \code{\link[=filter_first_isolate]{filter_first_isolate()}}, or parameters passed on to \code{\link[=key_antibiotics]{key_antibiotics()}} when using \code{\link[=filter_first_weighted_isolate]{filter_first_weighted_isolate()}}}
                        +\item{...}{arguments passed on to \code{\link[=first_isolate]{first_isolate()}} when using \code{\link[=filter_first_isolate]{filter_first_isolate()}}, or arguments passed on to \code{\link[=key_antibiotics]{key_antibiotics()}} when using \code{\link[=filter_first_weighted_isolate]{filter_first_weighted_isolate()}}}
                         }
                         \value{
                         A \code{\link{logical}} vector
                        @@ -93,7 +93,7 @@ A \code{\link{logical}} vector
                         Determine first (weighted) isolates of all microorganisms of every patient per episode and (if needed) per specimen type. To determine patient episodes not necessarily based on microorganisms, use \code{\link[=is_new_episode]{is_new_episode()}} that also supports grouping with the \code{dplyr} package.
                         }
                         \details{
                        -These functions are context-aware when used inside \code{dplyr} verbs, such as \code{filter()}, \code{mutate()} and \code{summarise()}. This means that then the \code{x} parameter can be omitted, please see \emph{Examples}.
                        +These functions are context-aware when used inside \code{dplyr} verbs, such as \code{filter()}, \code{mutate()} and \code{summarise()}. This means that then the \code{x} argument can be omitted, please see \emph{Examples}.
                         
                         The \code{\link[=first_isolate]{first_isolate()}} function is a wrapper around the \code{\link[=is_new_episode]{is_new_episode()}} function, but more efficient for data sets containing microorganism codes or names.
                         
                        @@ -125,10 +125,10 @@ The function \code{\link[=filter_first_weighted_isolate]{filter_first_weighted_i
                         
                         There are two ways to determine whether isolates can be included as first \emph{weighted} isolates which will give generally the same results:
                         \enumerate{
                        -\item Using \code{type = "keyantibiotics"} and parameter \code{ignore_I}
                        +\item Using \code{type = "keyantibiotics"} and argument \code{ignore_I}
                         
                         Any difference from S to R (or vice versa) will (re)select an isolate as a first weighted isolate. With \code{ignore_I = FALSE}, also differences from I to S|R (or vice versa) will lead to this. This is a reliable method and 30-35 times faster than method 2. Read more about this in the \code{\link[=key_antibiotics]{key_antibiotics()}} function.
                        -\item Using \code{type = "points"} and parameter \code{points_threshold}
                        +\item Using \code{type = "points"} and argument \code{points_threshold}
                         
                         A difference from I to S|R (or vice versa) means 0.5 points, a difference from S to R (or vice versa) means 1 point. When the sum of points exceeds \code{points_threshold}, which default to \code{2}, an isolate will be (re)selected as a first weighted isolate.
                         }
                        @@ -139,7 +139,7 @@ A difference from I to S|R (or vice versa) means 0.5 points, a difference from S
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/ggplot_pca.Rd b/man/ggplot_pca.Rd
                        index e8ea5ac7..b3dc4773 100644
                        --- a/man/ggplot_pca.Rd
                        +++ b/man/ggplot_pca.Rd
                        @@ -10,7 +10,7 @@ As per their GPL-2 licence that demands documentation of code changes, the chang
                         \enumerate{
                         \item Rewritten code to remove the dependency on packages \code{plyr}, \code{scales} and \code{grid}
                         \item Parametrised more options, like arrow and ellipse settings
                        -\item Hardened all input possibilities by defining the exact type of user input for every parameter
                        +\item Hardened all input possibilities by defining the exact type of user input for every argument
                         \item Added total amount of explained variance as a caption in the plot
                         \item Cleaned all syntax based on the \code{lintr} package, fixed grammatical errors and added integrity checks
                         \item Updated documentation
                        @@ -100,7 +100,7 @@ ggplot_pca(
                         
                         \item{base_textsize}{the text size for all plot elements except the labels and arrows}
                         
                        -\item{...}{Parameters passed on to functions}
                        +\item{...}{Arguments passed on to functions}
                         }
                         \description{
                         Produces a \code{ggplot2} variant of a so-called \href{https://en.wikipedia.org/wiki/Biplot}{biplot} for PCA (principal component analysis), but is more flexible and more appealing than the base \R \code{\link[=biplot]{biplot()}} function.
                        diff --git a/man/ggplot_rsi.Rd b/man/ggplot_rsi.Rd
                        index b4ae8c2a..4e1023a1 100644
                        --- a/man/ggplot_rsi.Rd
                        +++ b/man/ggplot_rsi.Rd
                        @@ -89,9 +89,9 @@ labels_rsi_count(
                         
                         \item{translate_ab}{a column name of the \link{antibiotics} data set to translate the antibiotic abbreviations to, using \code{\link[=ab_property]{ab_property()}}}
                         
                        -\item{combine_SI}{a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the parameter \code{combine_IR}, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is \code{TRUE}.}
                        +\item{combine_SI}{a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the argument \code{combine_IR}, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is \code{TRUE}.}
                         
                        -\item{combine_IR}{a logical to indicate whether all values of I and R must be merged into one, so the output only consists of S vs. I+R (susceptible vs. non-susceptible). This is outdated, see parameter \code{combine_SI}.}
                        +\item{combine_IR}{a logical to indicate whether all values of I and R must be merged into one, so the output only consists of S vs. I+R (susceptible vs. non-susceptible). This is outdated, see argument \code{combine_SI}.}
                         
                         \item{minimum}{the minimum allowed number of available (tested) isolates. Any isolate count lower than \code{minimum} will return \code{NA} with a warning. The default number of \code{30} isolates is advised by the Clinical and Laboratory Standards Institute (CLSI) as best practice, see Source.}
                         
                        @@ -117,13 +117,13 @@ labels_rsi_count(
                         
                         \item{y.title}{text to show as y axis description}
                         
                        -\item{...}{other parameters passed on to \code{\link[=geom_rsi]{geom_rsi()}}}
                        +\item{...}{other arguments passed on to \code{\link[=geom_rsi]{geom_rsi()}}}
                         }
                         \description{
                         Use these functions to create bar plots for antimicrobial resistance analysis. All functions rely on \link[ggplot2:ggplot]{ggplot2} functions.
                         }
                         \details{
                        -At default, the names of antibiotics will be shown on the plots using \code{\link[=ab_name]{ab_name()}}. This can be set with the \code{translate_ab} parameter. See \code{\link[=count_df]{count_df()}}.
                        +At default, the names of antibiotics will be shown on the plots using \code{\link[=ab_name]{ab_name()}}. This can be set with the \code{translate_ab} argument. See \code{\link[=count_df]{count_df()}}.
                         \subsection{The functions}{
                         
                         \code{\link[=geom_rsi]{geom_rsi()}} will take any variable from the data that has an \code{\link{rsi}} class (created with \code{\link[=as.rsi]{as.rsi()}}) using \code{\link[=rsi_df]{rsi_df()}} and will plot bars with the percentage R, I and S. The default behaviour is to have the bars stacked and to have the different antibiotics on the x axis.
                        @@ -178,7 +178,7 @@ if (require("ggplot2") & require("dplyr")) {
                             select(AMX, NIT, FOS, TMP, CIP) \%>\%
                             ggplot_rsi(datalabels = FALSE)
                          
                        -  # add other ggplot2 parameters as you like:
                        +  # add other ggplot2 arguments as you like:
                           example_isolates \%>\%
                             select(AMX, NIT, FOS, TMP, CIP) \%>\%
                             ggplot_rsi(width = 0.5,
                        diff --git a/man/guess_ab_col.Rd b/man/guess_ab_col.Rd
                        index c71636ee..9e0c606b 100644
                        --- a/man/guess_ab_col.Rd
                        +++ b/man/guess_ab_col.Rd
                        @@ -27,7 +27,7 @@ You can look for an antibiotic (trade) name or abbreviation and it will search \
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/is_new_episode.Rd b/man/is_new_episode.Rd
                        index 2d9bc08e..591e49c9 100644
                        --- a/man/is_new_episode.Rd
                        +++ b/man/is_new_episode.Rd
                        @@ -17,7 +17,7 @@ is_new_episode(x, episode_days = 365, ...)
                         a \link{logical} vector
                         }
                         \description{
                        -This function determines which items in a vector can be considered (the start of) a new episode, based on the parameter \code{episode_days}. This can be used to determine clinical episodes for any epidemiological analysis.
                        +This function determines which items in a vector can be considered (the start of) a new episode, based on the argument \code{episode_days}. This can be used to determine clinical episodes for any epidemiological analysis.
                         }
                         \details{
                         Dates are first sorted from old to new. The oldest date will mark the start of the first episode. After this date, the next date will be marked that is at least \code{episode_days} days later than the start of the first episode. From that second marked date on, the next date will be marked that is at least \code{episode_days} days later than the start of the second episode which will be the start of the third episode, and so on. Before the vector is being returned, the original order will be restored.
                        @@ -31,7 +31,7 @@ The \code{dplyr} package is not required for this function to work, but this fun
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/join.Rd b/man/join.Rd
                        index d772f319..a938f872 100755
                        --- a/man/join.Rd
                        +++ b/man/join.Rd
                        @@ -45,7 +45,7 @@ If the \code{dplyr} package is installed, their join functions will be used. Oth
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/key_antibiotics.Rd b/man/key_antibiotics.Rd
                        index 8e747281..aedeebf3 100755
                        --- a/man/key_antibiotics.Rd
                        +++ b/man/key_antibiotics.Rd
                        @@ -52,7 +52,7 @@ key_antibiotics_equal(
                         
                         \item{warnings}{give a warning about missing antibiotic columns (they will be ignored)}
                         
                        -\item{...}{other parameters passed on to functions}
                        +\item{...}{other arguments passed on to functions}
                         
                         \item{y, z}{character vectors to compare}
                         
                        @@ -68,7 +68,7 @@ key_antibiotics_equal(
                         These function can be used to determine first isolates (see \code{\link[=first_isolate]{first_isolate()}}). Using key antibiotics to determine first isolates is more reliable than without key antibiotics. These selected isolates can then be called first \emph{weighted} isolates.
                         }
                         \details{
                        -The \code{\link[=key_antibiotics]{key_antibiotics()}} function is context-aware when used inside \code{dplyr} verbs, such as \code{filter()}, \code{mutate()} and \code{summarise()}. This means that then the \code{x} parameter can be omitted, please see \emph{Examples}.
                        +The \code{\link[=key_antibiotics]{key_antibiotics()}} function is context-aware when used inside \code{dplyr} verbs, such as \code{filter()}, \code{mutate()} and \code{summarise()}. This means that then the \code{x} argument can be omitted, please see \emph{Examples}.
                         
                         The function \code{\link[=key_antibiotics]{key_antibiotics()}} returns a character vector with 12 antibiotic results for every isolate. These isolates can then be compared using \code{\link[=key_antibiotics_equal]{key_antibiotics_equal()}}, to check if two isolates have generally the same antibiogram. Missing and invalid values are replaced with a dot (\code{"."}) by \code{\link[=key_antibiotics]{key_antibiotics()}} and ignored by \code{\link[=key_antibiotics_equal]{key_antibiotics_equal()}}.
                         
                        @@ -113,17 +113,17 @@ The function \code{\link[=key_antibiotics_equal]{key_antibiotics_equal()}} check
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Key antibiotics}{
                         
                         There are two ways to determine whether isolates can be included as first \emph{weighted} isolates which will give generally the same results:
                         \enumerate{
                        -\item Using \code{type = "keyantibiotics"} and parameter \code{ignore_I}
                        +\item Using \code{type = "keyantibiotics"} and argument \code{ignore_I}
                         
                         Any difference from S to R (or vice versa) will (re)select an isolate as a first weighted isolate. With \code{ignore_I = FALSE}, also differences from I to S|R (or vice versa) will lead to this. This is a reliable method and 30-35 times faster than method 2. Read more about this in the \code{\link[=key_antibiotics]{key_antibiotics()}} function.
                        -\item Using \code{type = "points"} and parameter \code{points_threshold}
                        +\item Using \code{type = "points"} and argument \code{points_threshold}
                         
                         A difference from I to S|R (or vice versa) means 0.5 points, a difference from S to R (or vice versa) means 1 point. When the sum of points exceeds \code{points_threshold}, which default to \code{2}, an isolate will be (re)selected as a first weighted isolate.
                         }
                        diff --git a/man/kurtosis.Rd b/man/kurtosis.Rd
                        index 0641c3b4..5fe01774 100644
                        --- a/man/kurtosis.Rd
                        +++ b/man/kurtosis.Rd
                        @@ -30,7 +30,7 @@ Kurtosis is a measure of the "tailedness" of the probability distribution of a r
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/lifecycle.Rd b/man/lifecycle.Rd
                        index 1393763f..32dfaeac 100644
                        --- a/man/lifecycle.Rd
                        +++ b/man/lifecycle.Rd
                        @@ -26,7 +26,7 @@ The \link[=lifecycle]{lifecycle} of this function is \strong{maturing}. The unly
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Retired lifecycle}{
                        diff --git a/man/like.Rd b/man/like.Rd
                        index 8c26f939..06916cdb 100755
                        --- a/man/like.Rd
                        +++ b/man/like.Rd
                        @@ -44,7 +44,7 @@ Using RStudio? The text \verb{\%like\%} can also be directly inserted in your co
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/mdro.Rd b/man/mdro.Rd
                        index aba17f78..1bfee4b0 100644
                        --- a/man/mdro.Rd
                        +++ b/man/mdro.Rd
                        @@ -72,7 +72,7 @@ Ordered \link{factor} with levels \code{Negative} < \verb{Positive, unconfirmed}
                         Determine which isolates are multidrug-resistant organisms (MDRO) according to international and national guidelines.
                         }
                         \details{
                        -These functions are context-aware when used inside \code{dplyr} verbs, such as \code{filter()}, \code{mutate()} and \code{summarise()}. This means that then the \code{x} parameter can be omitted, please see \emph{Examples}.
                        +These functions are context-aware when used inside \code{dplyr} verbs, such as \code{filter()}, \code{mutate()} and \code{summarise()}. This means that then the \code{x} argument can be omitted, please see \emph{Examples}.
                         
                         For the \code{pct_required_classes} argument, values above 1 will be divided by 100. This is to support both fractions (\code{0.75} or \code{3/4}) and percentages (\code{75}).
                         
                        @@ -107,7 +107,7 @@ Please suggest your own (country-specific) guidelines by letting us know: \url{h
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Antibiotics}{
                        diff --git a/man/mo_matching_score.Rd b/man/mo_matching_score.Rd
                        index 91c7228f..9d469c15 100644
                        --- a/man/mo_matching_score.Rd
                        +++ b/man/mo_matching_score.Rd
                        @@ -40,7 +40,7 @@ All matches are sorted descending on their matching score and for all user input
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \examples{
                        diff --git a/man/mo_property.Rd b/man/mo_property.Rd
                        index 5094696c..d0b467c8 100644
                        --- a/man/mo_property.Rd
                        +++ b/man/mo_property.Rd
                        @@ -89,7 +89,7 @@ mo_property(x, property = "fullname", language = get_locale(), ...)
                         
                         \item{language}{language of the returned text, defaults to system language (see \code{\link[=get_locale]{get_locale()}}) and can be overwritten by setting the option \code{AMR_locale}, e.g. \code{options(AMR_locale = "de")}, see \link{translate}. Also used to translate text like "no growth". Use \code{language = NULL} or \code{language = ""} to prevent translation.}
                         
                        -\item{...}{other parameters passed on to \code{\link[=as.mo]{as.mo()}}, such as 'allow_uncertain' and 'ignore_pattern'}
                        +\item{...}{other arguments passed on to \code{\link[=as.mo]{as.mo()}}, such as 'allow_uncertain' and 'ignore_pattern'}
                         
                         \item{ab}{any (vector of) text that can be coerced to a valid antibiotic code with \code{\link[=as.ab]{as.ab()}}}
                         
                        @@ -123,7 +123,7 @@ Since the top-level of the taxonomy is sometimes referred to as 'kingdom' and so
                         
                         The Gram stain - \code{\link[=mo_gramstain]{mo_gramstain()}} - will be determined based on the taxonomic kingdom and phylum. According to Cavalier-Smith (2002, \href{https://pubmed.ncbi.nlm.nih.gov/11837318}{PMID 11837318}), who defined subkingdoms Negibacteria and Posibacteria, only these phyla are Posibacteria: Actinobacteria, Chloroflexi, Firmicutes and Tenericutes. These bacteria are considered Gram-positive - all other bacteria are considered Gram-negative. Species outside the kingdom of Bacteria will return a value \code{NA}. Functions \code{\link[=mo_is_gram_negative]{mo_is_gram_negative()}} and \code{\link[=mo_is_gram_positive]{mo_is_gram_positive()}} always return \code{TRUE} or \code{FALSE} (except when the input is \code{NA} or the MO code is \code{UNKNOWN}), thus always return \code{FALSE} for species outside the taxonomic kingdom of Bacteria.
                         
                        -Intrinsic resistance - \code{\link[=mo_is_intrinsic_resistant]{mo_is_intrinsic_resistant()}} - will be determined based on the \link{intrinsic_resistant} data set, which is based on \href{https://www.eucast.org/expert_rules_and_intrinsic_resistance/}{'EUCAST Expert Rules' and 'EUCAST Intrinsic Resistance and Unusual Phenotypes' v3.2} from 2020. The \code{\link[=mo_is_intrinsic_resistant]{mo_is_intrinsic_resistant()}} can be vectorised over parameters \code{x} (input for microorganisms) and over \code{ab} (input for antibiotics).
                        +Intrinsic resistance - \code{\link[=mo_is_intrinsic_resistant]{mo_is_intrinsic_resistant()}} - will be determined based on the \link{intrinsic_resistant} data set, which is based on \href{https://www.eucast.org/expert_rules_and_intrinsic_resistance/}{'EUCAST Expert Rules' and 'EUCAST Intrinsic Resistance and Unusual Phenotypes' v3.2} from 2020. The \code{\link[=mo_is_intrinsic_resistant]{mo_is_intrinsic_resistant()}} can be vectorised over arguments \code{x} (input for microorganisms) and over \code{ab} (input for antibiotics).
                         
                         All output will be \link{translate}d where possible.
                         
                        @@ -134,7 +134,7 @@ The function \code{\link[=mo_url]{mo_url()}} will return the direct URL to the o
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Matching score for microorganisms}{
                        diff --git a/man/mo_source.Rd b/man/mo_source.Rd
                        index 68b6f595..f8aef2b3 100644
                        --- a/man/mo_source.Rd
                        +++ b/man/mo_source.Rd
                        @@ -26,7 +26,7 @@ This is \strong{the fastest way} to have your organisation (or analysis) specifi
                         \details{
                         The reference file can be a text file separated with commas (CSV) or tabs or pipes, an Excel file (either 'xls' or 'xlsx' format) or an \R object file (extension '.rds'). To use an Excel file, you will need to have the \code{readxl} package installed.
                         
                        -\code{\link[=set_mo_source]{set_mo_source()}} will check the file for validity: it must be a \link{data.frame}, must have a column named \code{"mo"} which contains values from \code{\link[=microorganisms]{microorganisms$mo}} and must have a reference column with your own defined values. If all tests pass, \code{\link[=set_mo_source]{set_mo_source()}} will read the file into \R and will ask to export it to \code{"~/mo_source.rds"}. The CRAN policy disallows packages to write to the file system, although '\emph{exceptions may be allowed in interactive sessions if the package obtains confirmation from the user}'. For this reason, this function only works in interactive sessions so that the user can \strong{specifically confirm and allow} that this file will be created. The destination of this file can be set with the \code{destination} parameter and defaults to the user's home directory. It can also be set as an \R option, using \code{options(AMR_mo_source = "my/location/file.rds")}.
                        +\code{\link[=set_mo_source]{set_mo_source()}} will check the file for validity: it must be a \link{data.frame}, must have a column named \code{"mo"} which contains values from \code{\link[=microorganisms]{microorganisms$mo}} and must have a reference column with your own defined values. If all tests pass, \code{\link[=set_mo_source]{set_mo_source()}} will read the file into \R and will ask to export it to \code{"~/mo_source.rds"}. The CRAN policy disallows packages to write to the file system, although '\emph{exceptions may be allowed in interactive sessions if the package obtains confirmation from the user}'. For this reason, this function only works in interactive sessions so that the user can \strong{specifically confirm and allow} that this file will be created. The destination of this file can be set with the \code{destination} argument and defaults to the user's home directory. It can also be set as an \R option, using \code{options(AMR_mo_source = "my/location/file.rds")}.
                         
                         The created compressed data file \code{"mo_source.rds"} will be used at default for MO determination (function \code{\link[=as.mo]{as.mo()}} and consequently all \verb{mo_*} functions like \code{\link[=mo_genus]{mo_genus()}} and \code{\link[=mo_gramstain]{mo_gramstain()}}). The location and timestamp of the original file will be saved as an attribute to the compressed data file.
                         
                        @@ -100,7 +100,7 @@ If the original Excel file is moved or deleted, the mo_source file will be remov
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/plot.Rd b/man/plot.Rd
                        index d0a86782..cec2df39 100644
                        --- a/man/plot.Rd
                        +++ b/man/plot.Rd
                        @@ -72,7 +72,7 @@
                         \item{axes}{logical.  If \code{TRUE}, a vertical (or horizontal, if
                             \code{horiz} is true) axis is drawn.}
                         
                        -\item{...}{Parameters passed on to functions}
                        +\item{...}{Arguments passed on to functions}
                         
                         \item{height}{either a vector or matrix of values describing the
                             bars which make up the plot.  If \code{height} is a vector, the
                        @@ -103,7 +103,7 @@ Functions to print classes of the \code{AMR} package.
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/proportion.Rd b/man/proportion.Rd
                        index a8545e9a..8ecfc362 100644
                        --- a/man/proportion.Rd
                        +++ b/man/proportion.Rd
                        @@ -66,9 +66,9 @@ rsi_df(
                         
                         \item{language}{language of the returned text, defaults to system language (see \code{\link[=get_locale]{get_locale()}}) and can also be set with \code{getOption("AMR_locale")}. Use \code{language = NULL} or \code{language = ""} to prevent translation.}
                         
                        -\item{combine_SI}{a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the parameter \code{combine_IR}, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is \code{TRUE}.}
                        +\item{combine_SI}{a logical to indicate whether all values of S and I must be merged into one, so the output only consists of S+I vs. R (susceptible vs. resistant). This used to be the argument \code{combine_IR}, but this now follows the redefinition by EUCAST about the interpretation of I (increased exposure) in 2019, see section 'Interpretation of S, I and R' below. Default is \code{TRUE}.}
                         
                        -\item{combine_IR}{a logical to indicate whether all values of I and R must be merged into one, so the output only consists of S vs. I+R (susceptible vs. non-susceptible). This is outdated, see parameter \code{combine_SI}.}
                        +\item{combine_IR}{a logical to indicate whether all values of I and R must be merged into one, so the output only consists of S vs. I+R (susceptible vs. non-susceptible). This is outdated, see argument \code{combine_SI}.}
                         }
                         \value{
                         A \link{double} or, when \code{as_percent = TRUE}, a \link{character}.
                        @@ -83,7 +83,7 @@ The function \code{\link[=resistance]{resistance()}} is equal to the function \c
                         
                         \strong{Remember that you should filter your table to let it contain only first isolates!} This is needed to exclude duplicates and to reduce selection bias. Use \code{\link[=first_isolate]{first_isolate()}} to determine them in your data set.
                         
                        -These functions are not meant to count isolates, but to calculate the proportion of resistance/susceptibility. Use the \code{\link[=count]{count()}} functions to count isolates. The function \code{\link[=susceptibility]{susceptibility()}} is essentially equal to \code{count_susceptible() / count_all()}. \emph{Low counts can influence the outcome - the \code{proportion} functions may camouflage this, since they only return the proportion (albeit being dependent on the \code{minimum} parameter).}
                        +These functions are not meant to count isolates, but to calculate the proportion of resistance/susceptibility. Use the \code{\link[=count]{count()}} functions to count isolates. The function \code{\link[=susceptibility]{susceptibility()}} is essentially equal to \code{count_susceptible() / count_all()}. \emph{Low counts can influence the outcome - the \code{proportion} functions may camouflage this, since they only return the proportion (albeit being dependent on the \code{minimum} argument).}
                         
                         The function \code{\link[=proportion_df]{proportion_df()}} takes any variable from \code{data} that has an \code{\link{rsi}} class (created with \code{\link[=as.rsi]{as.rsi()}}) and calculates the proportions R, I and S. It also supports grouped variables. The function \code{\link[=rsi_df]{rsi_df()}} works exactly like \code{\link[=proportion_df]{proportion_df()}}, but adds the number of isolates.
                         }
                        @@ -123,7 +123,7 @@ Using \code{only_all_tested} has no impact when only using one antibiotic as inp
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Interpretation of R and S/I}{
                        diff --git a/man/random.Rd b/man/random.Rd
                        index fc21f042..338acf4a 100644
                        --- a/man/random.Rd
                        +++ b/man/random.Rd
                        @@ -33,7 +33,7 @@ These functions can be used for generating random MIC values and disk diffusion
                         \details{
                         The base R function \code{\link[=sample]{sample()}} is used for generating values.
                         
                        -Generated values are based on the latest EUCAST guideline implemented in the \link{rsi_translation} data set. To create specific generated values per bug or drug, set the \code{mo} and/or \code{ab} parameter.
                        +Generated values are based on the latest EUCAST guideline implemented in the \link{rsi_translation} data set. To create specific generated values per bug or drug, set the \code{mo} and/or \code{ab} argument.
                         }
                         \section{Maturing lifecycle}{
                         
                        diff --git a/man/resistance_predict.Rd b/man/resistance_predict.Rd
                        index 6bbe0b4f..6fec8877 100644
                        --- a/man/resistance_predict.Rd
                        +++ b/man/resistance_predict.Rd
                        @@ -69,7 +69,7 @@ ggplot_rsi_predict(
                         
                         \item{info}{a logical to indicate whether textual analysis should be printed with the name and \code{\link[=summary]{summary()}} of the statistical model.}
                         
                        -\item{...}{parameters passed on to functions}
                        +\item{...}{arguments passed on to functions}
                         
                         \item{main}{title of the plot}
                         
                        @@ -93,7 +93,7 @@ Furthermore, the model itself is available as an attribute: \code{attributes(x)$
                         Create a prediction model to predict antimicrobial resistance for the next years on statistical solid ground. Standard errors (SE) will be returned as columns \code{se_min} and \code{se_max}. See \emph{Examples} for a real live example.
                         }
                         \details{
                        -Valid options for the statistical model (parameter \code{model}) are:
                        +Valid options for the statistical model (argument \code{model}) are:
                         \itemize{
                         \item \code{"binomial"} or \code{"binom"} or \code{"logit"}: a generalised linear regression model with binomial distribution
                         \item \code{"loglin"} or \code{"poisson"}: a generalised log-linear regression model with poisson distribution
                        diff --git a/man/skewness.Rd b/man/skewness.Rd
                        index d26aaf4b..46bff595 100644
                        --- a/man/skewness.Rd
                        +++ b/man/skewness.Rd
                        @@ -30,7 +30,7 @@ When negative ('left-skewed'): the left tail is longer; the mass of the distribu
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        diff --git a/man/translate.Rd b/man/translate.Rd
                        index dbea0763..172fd97b 100644
                        --- a/man/translate.Rd
                        +++ b/man/translate.Rd
                        @@ -32,7 +32,7 @@ So if the R option \code{AMR_locale} is set, the system variables \code{LANGUAGE
                         \if{html}{\figure{lifecycle_stable.svg}{options: style=margin-bottom:5px} \cr}
                         The \link[=lifecycle]{lifecycle} of this function is \strong{stable}. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.
                         
                        -If the unlying code needs breaking changes, they will occur gradually. For example, a parameter will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                        +If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.
                         }
                         
                         \section{Read more on our website!}{
                        @@ -41,7 +41,7 @@ On our website \url{https://msberends.github.io/AMR/} you can find \href{https:/
                         }
                         
                         \examples{
                        -# The 'language' parameter of below functions
                        +# The 'language' argument of below functions
                         # will be set automatically to your system language
                         # with get_locale()
                         
                        diff --git a/tests/testthat/test-rsi.R b/tests/testthat/test-rsi.R
                        index 0179f720..6196b18f 100644
                        --- a/tests/testthat/test-rsi.R
                        +++ b/tests/testthat/test-rsi.R
                        @@ -26,6 +26,7 @@
                         context("rsi.R")
                         
                         test_that("rsi works", {
                        +  
                           skip_on_cran()
                           
                           expect_true(as.rsi("S") < as.rsi("I"))
                        @@ -83,7 +84,6 @@ test_that("rsi works", {
                         
                         })
                         
                        -
                         test_that("mic2rsi works", {
                           
                           skip_on_cran()
                        @@ -115,19 +115,6 @@ test_that("mic2rsi works", {
                                                          as.rsi() %>%
                                                          pull(amox_mic) %>%
                                                          is.rsi()))
                        -  
                        -  expect_warning(data.frame(mo = "E. coli",
                        -                            NIT = c("<= 2", 32)) %>%
                        -                   as.rsi())
                        -  expect_message(data.frame(mo = "E. coli",
                        -                            NIT = c("<= 2", 32),
                        -                            uti = TRUE) %>%
                        -                   as.rsi())
                        -  expect_message(
                        -    data.frame(mo = "E. coli",
                        -               NIT = c("<= 2", 32),
                        -               specimen = c("urine", "blood")) %>%
                        -      as.rsi())
                         })
                         
                         test_that("disk2rsi works", {
                        @@ -160,11 +147,37 @@ test_that("disk2rsi works", {
                                         pull(amox_disk) %>%
                                         is.rsi())
                           
                        -  expect_s3_class(suppressWarnings(as.rsi(data.frame(mo = "Escherichia coli",
                        -                                                     amoxi = c("R", "S", "I", "invalid")))$amoxi), "rsi")
                        -  
                           # frequency tables
                           if (require("cleaner")) {
                             expect_s3_class(cleaner::freq(example_isolates$AMX), "freq")
                           }
                         })
                        +
                        +test_that("data.frame2rsi works", {
                        +  
                        +  skip_on_cran()
                        +  
                        +  df <- data.frame(microorganism = "Escherichia coli",
                        +                   AMP = as.mic(8),
                        +                   CIP = as.mic(0.256),
                        +                   GEN = as.disk(18),
                        +                   TOB = as.disk(16),
                        +                   ERY = "R", # note about assigning  class
                        +                   CLR = "V") # note about cleaning
                        +  expect_s3_class(as.rsi(df), "data.frame")
                        +  
                        +  expect_s3_class(suppressWarnings(as.rsi(data.frame(mo = "Escherichia coli",
                        +                                                     amoxi = c("R", "S", "I", "invalid")))$amoxi), "rsi")
                        +  expect_warning(data.frame(mo = "E. coli",
                        +                            NIT = c("<= 2", 32)) %>%
                        +                   as.rsi())
                        +  expect_message(data.frame(mo = "E. coli",
                        +                            NIT = c("<= 2", 32),
                        +                            uti = TRUE) %>%
                        +                   as.rsi())
                        +  expect_message(
                        +    data.frame(mo = "E. coli",
                        +               NIT = c("<= 2", 32),
                        +               specimen = c("urine", "blood")) %>%
                        +      as.rsi())
                        +})