These functions can be used to predefine your own reference to be used in as.mo and consequently all mo_* functions like mo_genus and mo_gramstain.

This is the fastest way to have your organisation (or analysis) specific codes picked up and translated by this package.

set_mo_source(path)

get_mo_source()

Arguments

path

location of your reference file, see Details

Details

The reference file can be a text file seperated 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 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 export it to "~/.mo_source.rds". This compressed data file will then be used at default for MO determination (function as.mo and consequently all mo_* functions like mo_genus and mo_gramstain). The location of the original file will be saved as option with options(mo_source = path). Its timestamp will be saved with options(mo_source_datetime = ...).

get_mo_source will return the data set by reading "~/.mo_source.rds" with readRDS. If the original file has changed (the file defined with path), it will call set_mo_source to update the data file automatically.

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

How it works

Imagine this data on a sheet of an Excel file (mo codes were looked up in the `microorganisms` data set). The first column contains the organisation specific codes, the second column contains an MO code from this package:

  |         A          |      B      |
--|--------------------|-------------|
1 | Organisation XYZ   | mo          |
2 | lab_mo_ecoli       | B_ESCHR_COL |
3 | lab_mo_kpneumoniae | B_KLBSL_PNE |
4 |                    |             |

We save it as 'home/me/ourcodes.xlsx'. Now we have to set it as a source:

set_mo_source("home/me/ourcodes.xlsx")
# Created mo_source file '~/.mo_source.rds' from 'home/me/ourcodes.xlsx'.

It has now created a file "~/.mo_source.rds" with the contents of our Excel file. It it an R specific format with great compression.

And now we can use it in our functions:

as.mo("lab_mo_ecoli")
# B_ESCHR_COL
    mo_genus("lab_mo_kpneumoniae")
# "Klebsiella"

If we edit the Excel file to, let's say, this:

  |         A          |      B      |
--|--------------------|-------------|
1 | Organisation XYZ   | mo          |
2 | lab_mo_ecoli       | B_ESCHR_COL |
3 | lab_mo_kpneumoniae | B_KLBSL_PNE |
4 | lab_Staph_aureus   | B_STPHY_AUR |
5 |                    |             |

...any new usage of an MO function in this package will update your data:

as.mo("lab_mo_ecoli")
# Updated mo_source file '~/.mo_source.rds' from 'home/me/ourcodes.xlsx'.
# B_ESCHR_COL
    mo_genus("lab_Staph_aureus")
# "Staphylococcus"

To remove the reference completely, just use any of these:

set_mo_source("")
set_mo_source(NULL)
# Removed mo_source file '~/.mo_source.rds'.

Read more on our website!

On our website https://msberends.gitlab.io/AMR you can find a comprehensive tutorial about how to conduct AMR analysis, the complete documentation of all functions (which reads a lot easier than here in R) and an example analysis using WHONET data.