1
0
mirror of https://github.com/msberends/AMR.git synced 2025-07-16 19:43:20 +02:00

6 Commits

Author SHA1 Message Date
f1d9b489c5 (v1.7.0) unit tests 2021-05-26 14:04:12 +02:00
41d279daa1 (v1.7.0) v1.7.0 2021-05-26 11:10:34 +02:00
a12572c752 doc update 2021-05-26 11:00:32 +02:00
a33c8a51a2 v1.7.0 2021-05-26 10:59:54 +02:00
55457d0ab6 v1.7.0 2021-05-25 10:00:11 +02:00
d0f38a03d5 v1.7.0 2021-05-24 15:29:31 +02:00
31 changed files with 362 additions and 362 deletions

View File

@ -91,5 +91,3 @@ jobs:
library(tinytest)
covr::codecov(line_exclusions = list("R/atc_online.R", "R/mo_source.R", "R/translate.R", "R/resistance_predict.R", "R/aa_helper_functions.R", "R/aa_helper_pm_functions.R", "R/zzz.R"))
shell: Rscript {0}

View File

@ -1,6 +1,6 @@
Package: AMR
Version: 1.7.0
Date: 2021-05-24
Date: 2021-05-26
Title: Antimicrobial Resistance Data Analysis
Authors@R: c(
person(role = c("aut", "cre"),

View File

@ -99,7 +99,9 @@
#' info = FALSE,
#' minimum = 15)
#'
#' ggplot(data,
#' ggplot(data)
#'
#' ggplot(as.data.frame(data),
#' aes(x = year)) +
#' geom_col(aes(y = value),
#' fill = "grey75") +

View File

@ -2,8 +2,6 @@
# `AMR` (for R)
[![CRAN](https://www.r-pkg.org/badges/version-ago/AMR)](https://cran.r-project.org/package=AMR)
[![CRANlogs](https://cranlogs.r-pkg.org/badges/grand-total/AMR)](https://cran.r-project.org/package=AMR)
![R-code-check](https://github.com/msberends/AMR/workflows/R-code-check/badge.svg?branch=master)
[![CodeFactor](https://www.codefactor.io/repository/github/msberends/amr/badge)](https://www.codefactor.io/repository/github/msberends/amr)
[![Codecov](https://codecov.io/gh/msberends/AMR/branch/master/graph/badge.svg)](https://codecov.io/gh/msberends/AMR?branch=master)
@ -25,7 +23,7 @@ This is the development source of the `AMR` package for R. Not a developer? Then
### How to get this package
Please see [our website](https://msberends.github.io/AMR/#get-this-package).
Bottom line: `install.packages("AMR")`
Bottom line: `install.packages("AMR", repos = "https://msberends.r-universe.dev")`
### Copyright

Binary file not shown.

View File

@ -26,6 +26,7 @@
# some old R instances have trouble installing tinytest, so we ship it too
install.packages("data-raw/tinytest_1.2.4.10.tar.gz")
install.packages("data-raw/AMR_latest.tar.gz", dependencies = FALSE)
install.packages("covr")
pkg_suggests <- gsub("[^a-zA-Z0-9]+", "", unlist(strsplit(packageDescription("AMR", fields = "Suggests"), ", ?")))
cat("Packages listed in Suggests:", paste(pkg_suggests, collapse = ", "), "\n")

View File

@ -193,7 +193,7 @@
<h1 data-toc-skip>How to conduct AMR data analysis</h1>
<h4 class="author">Matthijs S. Berends</h4>
<h4 class="date">24 May 2021</h4>
<h4 class="date">26 May 2021</h4>
<small class="dont-index">Source: <a href="https://github.com/msberends/AMR/blob/master/vignettes/AMR.Rmd"><code>vignettes/AMR.Rmd</code></a></small>
<div class="hidden name"><code>AMR.Rmd</code></div>
@ -202,7 +202,7 @@
<p><strong>Note:</strong> values on this page will change with every website update since they are based on randomly created values and the page was written in <a href="https://rmarkdown.rstudio.com/">R Markdown</a>. However, the methodology remains unchanged. This page was generated on 24 May 2021.</p>
<p><strong>Note:</strong> values on this page will change with every website update since they are based on randomly created values and the page was written in <a href="https://rmarkdown.rstudio.com/">R Markdown</a>. However, the methodology remains unchanged. This page was generated on 26 May 2021.</p>
<div id="introduction" class="section level1">
<h1 class="hasAnchor">
<a href="#introduction" class="anchor"></a>Introduction</h1>
@ -233,21 +233,21 @@
</tr></thead>
<tbody>
<tr class="odd">
<td align="center">2021-05-24</td>
<td align="center">2021-05-26</td>
<td align="center">abcd</td>
<td align="center">Escherichia coli</td>
<td align="center">S</td>
<td align="center">S</td>
</tr>
<tr class="even">
<td align="center">2021-05-24</td>
<td align="center">2021-05-26</td>
<td align="center">abcd</td>
<td align="center">Escherichia coli</td>
<td align="center">S</td>
<td align="center">R</td>
</tr>
<tr class="odd">
<td align="center">2021-05-24</td>
<td align="center">2021-05-26</td>
<td align="center">efgh</td>
<td align="center">Escherichia coli</td>
<td align="center">R</td>
@ -344,71 +344,71 @@
</tr></thead>
<tbody>
<tr class="odd">
<td align="center">2010-04-11</td>
<td align="center">W8</td>
<td align="center">Hospital B</td>
<td align="center">Staphylococcus aureus</td>
<td align="center">S</td>
<td align="center">2013-04-02</td>
<td align="center">X1</td>
<td align="center">Hospital D</td>
<td align="center">Escherichia coli</td>
<td align="center">S</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">F</td>
</tr>
<tr class="even">
<td align="center">2013-06-11</td>
<td align="center">I7</td>
<td align="center">2015-07-17</td>
<td align="center">X6</td>
<td align="center">Hospital A</td>
<td align="center">Staphylococcus aureus</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">M</td>
</tr>
<tr class="odd">
<td align="center">2016-12-30</td>
<td align="center">C6</td>
<td align="center">Hospital D</td>
<td align="center">Escherichia coli</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">M</td>
</tr>
<tr class="even">
<td align="center">2010-03-16</td>
<td align="center">P5</td>
<td align="center">Hospital B</td>
<td align="center">Staphylococcus aureus</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">F</td>
</tr>
<tr class="odd">
<td align="center">2014-03-27</td>
<td align="center">U2</td>
<td align="center">Hospital D</td>
<td align="center">Escherichia coli</td>
<td align="center">S</td>
<td align="center">2012-09-03</td>
<td align="center">C4</td>
<td align="center">Hospital C</td>
<td align="center">Staphylococcus aureus</td>
<td align="center">I</td>
<td align="center">I</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">F</td>
<td align="center">M</td>
</tr>
<tr class="even">
<td align="center">2011-01-31</td>
<td align="center">E5</td>
<td align="center">2010-02-11</td>
<td align="center">D2</td>
<td align="center">Hospital B</td>
<td align="center">Escherichia coli</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">M</td>
</tr>
<tr class="odd">
<td align="center">2012-12-14</td>
<td align="center">L5</td>
<td align="center">Hospital B</td>
<td align="center">Escherichia coli</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">M</td>
</tr>
<tr class="even">
<td align="center">2016-01-30</td>
<td align="center">S3</td>
<td align="center">Hospital D</td>
<td align="center">Klebsiella pneumoniae</td>
<td align="center">S</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">F</td>
</tr>
</tbody>
</table>
<p>Now, lets start the cleaning and the analysis!</p>
@ -424,7 +424,7 @@
<p><strong>Frequency table</strong></p>
<p>Class: character<br>
Length: 20,000<br>
Available: 20,000 (100%, NA: 0 = 0%)<br>
Available: 20,000 (100.0%, NA: 0 = 0.0%)<br>
Unique: 2</p>
<p>Shortest: 1<br>
Longest: 1</p>
@ -441,16 +441,16 @@ Longest: 1</p>
<tr class="odd">
<td align="left">1</td>
<td align="left">M</td>
<td align="right">10,485</td>
<td align="right">52.43%</td>
<td align="right">10,485</td>
<td align="right">52.43%</td>
<td align="right">10,375</td>
<td align="right">51.88%</td>
<td align="right">10,375</td>
<td align="right">51.88%</td>
</tr>
<tr class="even">
<td align="left">2</td>
<td align="left">F</td>
<td align="right">9,515</td>
<td align="right">47.58%</td>
<td align="right">9,625</td>
<td align="right">48.13%</td>
<td align="right">20,000</td>
<td align="right">100.00%</td>
</tr>
@ -505,9 +505,9 @@ Longest: 1</p>
<span class="co"># Using column 'patient_id' as input for `col_patient_id`.</span>
<span class="co"># Basing inclusion on all antimicrobial results, using a points threshold of</span>
<span class="co"># 2</span>
<span class="co"># =&gt; Found 10,696 first weighted isolates (phenotype-based, 53.5% of total</span>
<span class="co"># =&gt; Found 10,550 first weighted isolates (phenotype-based, 52.8% of total</span>
<span class="co"># where a microbial ID was available)</span></code></pre></div>
<p>So only 53.5% is suitable for resistance analysis! We can now filter on it with the <code><a href="https://dplyr.tidyverse.org/reference/filter.html">filter()</a></code> function, also from the <code>dplyr</code> package:</p>
<p>So only 52.8% is suitable for resistance analysis! We can now filter on it with the <code><a href="https://dplyr.tidyverse.org/reference/filter.html">filter()</a></code> function, also from the <code>dplyr</code> package:</p>
<div class="sourceCode" id="cb15"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span class="va">data_1st</span> <span class="op">&lt;-</span> <span class="va">data</span> <span class="op">%&gt;%</span>
<span class="fu"><a href="https://dplyr.tidyverse.org/reference/filter.html">filter</a></span><span class="op">(</span><span class="va">first</span> <span class="op">==</span> <span class="cn">TRUE</span><span class="op">)</span></code></pre></div>
@ -515,7 +515,7 @@ Longest: 1</p>
<div class="sourceCode" id="cb16"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span class="va">data_1st</span> <span class="op">&lt;-</span> <span class="va">data</span> <span class="op">%&gt;%</span>
<span class="fu"><a href="../reference/first_isolate.html">filter_first_isolate</a></span><span class="op">(</span><span class="op">)</span></code></pre></div>
<p>So we end up with 10,696 isolates for analysis. Now our data looks like:</p>
<p>So we end up with 10,550 isolates for analysis. Now our data looks like:</p>
<div class="sourceCode" id="cb17"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span class="fu"><a href="https://rdrr.io/r/utils/head.html">head</a></span><span class="op">(</span><span class="va">data_1st</span><span class="op">)</span></code></pre></div>
<table class="table">
@ -531,7 +531,7 @@ Longest: 1</p>
<col width="3%">
<col width="6%">
<col width="11%">
<col width="11%">
<col width="12%">
<col width="9%">
<col width="5%">
</colgroup>
@ -553,14 +553,46 @@ Longest: 1</p>
</tr></thead>
<tbody>
<tr class="odd">
<td align="left">6</td>
<td align="center">2011-01-31</td>
<td align="center">E5</td>
<td align="left">1</td>
<td align="center">2013-04-02</td>
<td align="center">X1</td>
<td align="center">Hospital D</td>
<td align="center">B_ESCHR_COLI</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">F</td>
<td align="center">Gram-negative</td>
<td align="center">Escherichia</td>
<td align="center">coli</td>
<td align="center">TRUE</td>
</tr>
<tr class="even">
<td align="left">2</td>
<td align="center">2015-07-17</td>
<td align="center">X6</td>
<td align="center">Hospital A</td>
<td align="center">B_STPHY_AURS</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">F</td>
<td align="center">Gram-positive</td>
<td align="center">Staphylococcus</td>
<td align="center">aureus</td>
<td align="center">TRUE</td>
</tr>
<tr class="odd">
<td align="left">4</td>
<td align="center">2010-02-11</td>
<td align="center">D2</td>
<td align="center">Hospital B</td>
<td align="center">B_ESCHR_COLI</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">M</td>
<td align="center">Gram-negative</td>
@ -569,26 +601,42 @@ Longest: 1</p>
<td align="center">TRUE</td>
</tr>
<tr class="even">
<td align="left">8</td>
<td align="center">2016-02-04</td>
<td align="center">A9</td>
<td align="center">Hospital B</td>
<td align="center">B_ESCHR_COLI</td>
<td align="left">6</td>
<td align="center">2016-01-30</td>
<td align="center">S3</td>
<td align="center">Hospital D</td>
<td align="center">B_KLBSL_PNMN</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">R</td>
<td align="center">M</td>
<td align="center">S</td>
<td align="center">F</td>
<td align="center">Gram-negative</td>
<td align="center">Escherichia</td>
<td align="center">coli</td>
<td align="center">Klebsiella</td>
<td align="center">pneumoniae</td>
<td align="center">TRUE</td>
</tr>
<tr class="odd">
<td align="left">9</td>
<td align="center">2015-07-09</td>
<td align="center">N1</td>
<td align="left">7</td>
<td align="center">2012-10-20</td>
<td align="center">D10</td>
<td align="center">Hospital B</td>
<td align="center">B_STPHY_AURS</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">M</td>
<td align="center">Gram-positive</td>
<td align="center">Staphylococcus</td>
<td align="center">aureus</td>
<td align="center">TRUE</td>
</tr>
<tr class="even">
<td align="left">8</td>
<td align="center">2016-03-28</td>
<td align="center">K7</td>
<td align="center">Hospital C</td>
<td align="center">B_STRPT_PNMN</td>
<td align="center">S</td>
<td align="center">S</td>
@ -600,54 +648,6 @@ Longest: 1</p>
<td align="center">pneumoniae</td>
<td align="center">TRUE</td>
</tr>
<tr class="even">
<td align="left">10</td>
<td align="center">2013-11-10</td>
<td align="center">M10</td>
<td align="center">Hospital B</td>
<td align="center">B_ESCHR_COLI</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">M</td>
<td align="center">Gram-negative</td>
<td align="center">Escherichia</td>
<td align="center">coli</td>
<td align="center">TRUE</td>
</tr>
<tr class="odd">
<td align="left">12</td>
<td align="center">2013-12-10</td>
<td align="center">W8</td>
<td align="center">Hospital A</td>
<td align="center">B_ESCHR_COLI</td>
<td align="center">I</td>
<td align="center">I</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">F</td>
<td align="center">Gram-negative</td>
<td align="center">Escherichia</td>
<td align="center">coli</td>
<td align="center">TRUE</td>
</tr>
<tr class="even">
<td align="left">15</td>
<td align="center">2016-11-20</td>
<td align="center">U2</td>
<td align="center">Hospital C</td>
<td align="center">B_ESCHR_COLI</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">F</td>
<td align="center">Gram-negative</td>
<td align="center">Escherichia</td>
<td align="center">coli</td>
<td align="center">TRUE</td>
</tr>
</tbody>
</table>
<p>Time for the analysis!</p>
@ -669,8 +669,8 @@ Longest: 1</p>
<code class="sourceCode R"><span class="va">data_1st</span> <span class="op">%&gt;%</span> <span class="fu"><a href="https://rdrr.io/pkg/cleaner/man/freq.html">freq</a></span><span class="op">(</span><span class="va">genus</span>, <span class="va">species</span><span class="op">)</span></code></pre></div>
<p><strong>Frequency table</strong></p>
<p>Class: character<br>
Length: 10,696<br>
Available: 10,696 (100%, NA: 0 = 0%)<br>
Length: 10,550<br>
Available: 10,550 (100.0%, NA: 0 = 0.0%)<br>
Unique: 4</p>
<p>Shortest: 16<br>
Longest: 24</p>
@ -687,33 +687,33 @@ Longest: 24</p>
<tr class="odd">
<td align="left">1</td>
<td align="left">Escherichia coli</td>
<td align="right">4,648</td>
<td align="right">43.46%</td>
<td align="right">4,648</td>
<td align="right">43.46%</td>
<td align="right">4,566</td>
<td align="right">43.28%</td>
<td align="right">4,566</td>
<td align="right">43.28%</td>
</tr>
<tr class="even">
<td align="left">2</td>
<td align="left">Staphylococcus aureus</td>
<td align="right">2,729</td>
<td align="right">25.51%</td>
<td align="right">7,377</td>
<td align="right">68.97%</td>
<td align="right">2,786</td>
<td align="right">26.41%</td>
<td align="right">7,352</td>
<td align="right">69.69%</td>
</tr>
<tr class="odd">
<td align="left">3</td>
<td align="left">Streptococcus pneumoniae</td>
<td align="right">2,136</td>
<td align="right">19.97%</td>
<td align="right">9,513</td>
<td align="right">88.94%</td>
<td align="right">2,025</td>
<td align="right">19.19%</td>
<td align="right">9,377</td>
<td align="right">88.88%</td>
</tr>
<tr class="even">
<td align="left">4</td>
<td align="left">Klebsiella pneumoniae</td>
<td align="right">1,183</td>
<td align="right">11.06%</td>
<td align="right">10,696</td>
<td align="right">1,173</td>
<td align="right">11.12%</td>
<td align="right">10,550</td>
<td align="right">100.00%</td>
</tr>
</tbody>
@ -760,24 +760,9 @@ Longest: 24</p>
</tr></thead>
<tbody>
<tr class="odd">
<td align="center">2016-02-04</td>
<td align="center">A9</td>
<td align="center">Hospital B</td>
<td align="center">B_ESCHR_COLI</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">R</td>
<td align="center">M</td>
<td align="center">Gram-negative</td>
<td align="center">Escherichia</td>
<td align="center">coli</td>
<td align="center">TRUE</td>
</tr>
<tr class="even">
<td align="center">2015-07-09</td>
<td align="center">N1</td>
<td align="center">Hospital B</td>
<td align="center">2016-03-28</td>
<td align="center">K7</td>
<td align="center">Hospital C</td>
<td align="center">B_STRPT_PNMN</td>
<td align="center">S</td>
<td align="center">S</td>
@ -789,14 +774,29 @@ Longest: 24</p>
<td align="center">pneumoniae</td>
<td align="center">TRUE</td>
</tr>
<tr class="even">
<td align="center">2010-01-30</td>
<td align="center">A1</td>
<td align="center">Hospital A</td>
<td align="center">B_STRPT_PNMN</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">S</td>
<td align="center">R</td>
<td align="center">M</td>
<td align="center">Gram-positive</td>
<td align="center">Streptococcus</td>
<td align="center">pneumoniae</td>
<td align="center">TRUE</td>
</tr>
<tr class="odd">
<td align="center">2017-06-21</td>
<td align="center">M8</td>
<td align="center">Hospital B</td>
<td align="center">2012-12-10</td>
<td align="center">M7</td>
<td align="center">Hospital A</td>
<td align="center">B_ESCHR_COLI</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">R</td>
<td align="center">I</td>
<td align="center">S</td>
<td align="center">R</td>
<td align="center">M</td>
<td align="center">Gram-negative</td>
@ -805,43 +805,43 @@ Longest: 24</p>
<td align="center">TRUE</td>
</tr>
<tr class="even">
<td align="center">2010-09-28</td>
<td align="center">V7</td>
<td align="center">Hospital A</td>
<td align="center">B_STRPT_PNMN</td>
<td align="center">2012-08-04</td>
<td align="center">Y7</td>
<td align="center">Hospital B</td>
<td align="center">B_ESCHR_COLI</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">R</td>
<td align="center">F</td>
<td align="center">Gram-positive</td>
<td align="center">Streptococcus</td>
<td align="center">pneumoniae</td>
<td align="center">Gram-negative</td>
<td align="center">Escherichia</td>
<td align="center">coli</td>
<td align="center">TRUE</td>
</tr>
<tr class="odd">
<td align="center">2012-08-30</td>
<td align="center">N9</td>
<td align="center">Hospital A</td>
<td align="center">B_STRPT_PNMN</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">F</td>
<td align="center">Gram-positive</td>
<td align="center">Streptococcus</td>
<td align="center">pneumoniae</td>
<td align="center">TRUE</td>
</tr>
<tr class="even">
<td align="center">2010-08-23</td>
<td align="center">2016-08-05</td>
<td align="center">I4</td>
<td align="center">Hospital D</td>
<td align="center">Hospital A</td>
<td align="center">B_ESCHR_COLI</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">M</td>
<td align="center">Gram-negative</td>
<td align="center">Escherichia</td>
<td align="center">coli</td>
<td align="center">TRUE</td>
</tr>
<tr class="even">
<td align="center">2011-05-15</td>
<td align="center">H2</td>
<td align="center">Hospital A</td>
<td align="center">B_STRPT_PNMN</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">S</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">R</td>
<td align="center">M</td>
<td align="center">Gram-positive</td>
@ -870,50 +870,50 @@ Longest: 24</p>
<tr class="odd">
<td align="center">E. coli</td>
<td align="center">AMX</td>
<td align="center">2236</td>
<td align="center">124</td>
<td align="center">2288</td>
<td align="center">4648</td>
<td align="center">2148</td>
<td align="center">153</td>
<td align="center">2265</td>
<td align="center">4566</td>
</tr>
<tr class="even">
<td align="center">E. coli</td>
<td align="center">AMC</td>
<td align="center">3462</td>
<td align="center">154</td>
<td align="center">1032</td>
<td align="center">4648</td>
<td align="center">3344</td>
<td align="center">157</td>
<td align="center">1065</td>
<td align="center">4566</td>
</tr>
<tr class="odd">
<td align="center">E. coli</td>
<td align="center">CIP</td>
<td align="center">3400</td>
<td align="center">3356</td>
<td align="center">0</td>
<td align="center">1248</td>
<td align="center">4648</td>
<td align="center">1210</td>
<td align="center">4566</td>
</tr>
<tr class="even">
<td align="center">E. coli</td>
<td align="center">GEN</td>
<td align="center">4040</td>
<td align="center">3983</td>
<td align="center">0</td>
<td align="center">608</td>
<td align="center">4648</td>
<td align="center">583</td>
<td align="center">4566</td>
</tr>
<tr class="odd">
<td align="center">K. pneumoniae</td>
<td align="center">AMX</td>
<td align="center">0</td>
<td align="center">0</td>
<td align="center">1183</td>
<td align="center">1183</td>
<td align="center">1173</td>
<td align="center">1173</td>
</tr>
<tr class="even">
<td align="center">K. pneumoniae</td>
<td align="center">AMC</td>
<td align="center">937</td>
<td align="center">48</td>
<td align="center">198</td>
<td align="center">1183</td>
<td align="center">930</td>
<td align="center">43</td>
<td align="center">200</td>
<td align="center">1173</td>
</tr>
</tbody>
</table>
@ -936,34 +936,34 @@ Longest: 24</p>
<tr class="odd">
<td align="center">E. coli</td>
<td align="center">GEN</td>
<td align="center">4040</td>
<td align="center">3983</td>
<td align="center">0</td>
<td align="center">608</td>
<td align="center">4648</td>
<td align="center">583</td>
<td align="center">4566</td>
</tr>
<tr class="even">
<td align="center">K. pneumoniae</td>
<td align="center">GEN</td>
<td align="center">1066</td>
<td align="center">1063</td>
<td align="center">0</td>
<td align="center">117</td>
<td align="center">1183</td>
<td align="center">110</td>
<td align="center">1173</td>
</tr>
<tr class="odd">
<td align="center">S. aureus</td>
<td align="center">GEN</td>
<td align="center">2418</td>
<td align="center">2490</td>
<td align="center">0</td>
<td align="center">311</td>
<td align="center">2729</td>
<td align="center">296</td>
<td align="center">2786</td>
</tr>
<tr class="even">
<td align="center">S. pneumoniae</td>
<td align="center">GEN</td>
<td align="center">0</td>
<td align="center">0</td>
<td align="center">2136</td>
<td align="center">2136</td>
<td align="center">2025</td>
<td align="center">2025</td>
</tr>
</tbody>
</table>
@ -977,7 +977,7 @@ Longest: 24</p>
<p>As per the EUCAST guideline of 2019, we calculate resistance as the proportion of R (<code><a href="../reference/proportion.html">proportion_R()</a></code>, equal to <code><a href="../reference/proportion.html">resistance()</a></code>) and susceptibility as the proportion of S and I (<code><a href="../reference/proportion.html">proportion_SI()</a></code>, equal to <code><a href="../reference/proportion.html">susceptibility()</a></code>). These functions can be used on their own:</p>
<div class="sourceCode" id="cb26"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span class="va">data_1st</span> <span class="op">%&gt;%</span> <span class="fu"><a href="../reference/proportion.html">resistance</a></span><span class="op">(</span><span class="va">AMX</span><span class="op">)</span>
<span class="co"># [1] 0.5431002</span></code></pre></div>
<span class="co"># [1] 0.5443602</span></code></pre></div>
<p>Or can be used in conjunction with <code><a href="https://dplyr.tidyverse.org/reference/group_by.html">group_by()</a></code> and <code><a href="https://dplyr.tidyverse.org/reference/summarise.html">summarise()</a></code>, both from the <code>dplyr</code> package:</p>
<div class="sourceCode" id="cb27"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span class="va">data_1st</span> <span class="op">%&gt;%</span>
@ -991,19 +991,19 @@ Longest: 24</p>
<tbody>
<tr class="odd">
<td align="center">Hospital A</td>
<td align="center">0.5389075</td>
<td align="center">0.5542598</td>
</tr>
<tr class="even">
<td align="center">Hospital B</td>
<td align="center">0.5612520</td>
<td align="center">0.5400160</td>
</tr>
<tr class="odd">
<td align="center">Hospital C</td>
<td align="center">0.5325596</td>
<td align="center">0.5508217</td>
</tr>
<tr class="even">
<td align="center">Hospital D</td>
<td align="center">0.5259019</td>
<td align="center">0.5322972</td>
</tr>
</tbody>
</table>
@ -1022,23 +1022,23 @@ Longest: 24</p>
<tbody>
<tr class="odd">
<td align="center">Hospital A</td>
<td align="center">0.5389075</td>
<td align="center">3277</td>
<td align="center">0.5542598</td>
<td align="center">3087</td>
</tr>
<tr class="even">
<td align="center">Hospital B</td>
<td align="center">0.5612520</td>
<td align="center">3706</td>
<td align="center">0.5400160</td>
<td align="center">3761</td>
</tr>
<tr class="odd">
<td align="center">Hospital C</td>
<td align="center">0.5325596</td>
<td align="center">1551</td>
<td align="center">0.5508217</td>
<td align="center">1643</td>
</tr>
<tr class="even">
<td align="center">Hospital D</td>
<td align="center">0.5259019</td>
<td align="center">2162</td>
<td align="center">0.5322972</td>
<td align="center">2059</td>
</tr>
</tbody>
</table>
@ -1059,27 +1059,27 @@ Longest: 24</p>
<tbody>
<tr class="odd">
<td align="center">Escherichia</td>
<td align="center">0.7779690</td>
<td align="center">0.8691910</td>
<td align="center">0.9733219</td>
<td align="center">0.7667543</td>
<td align="center">0.8723171</td>
<td align="center">0.9770039</td>
</tr>
<tr class="even">
<td align="center">Klebsiella</td>
<td align="center">0.8326289</td>
<td align="center">0.9010989</td>
<td align="center">0.9805579</td>
<td align="center">0.8294970</td>
<td align="center">0.9062234</td>
<td align="center">0.9795396</td>
</tr>
<tr class="odd">
<td align="center">Staphylococcus</td>
<td align="center">0.7933309</td>
<td align="center">0.8860388</td>
<td align="center">0.9805790</td>
<td align="center">0.7910983</td>
<td align="center">0.8937545</td>
<td align="center">0.9852836</td>
</tr>
<tr class="even">
<td align="center">Streptococcus</td>
<td align="center">0.5397940</td>
<td align="center">0.5387654</td>
<td align="center">0.0000000</td>
<td align="center">0.5397940</td>
<td align="center">0.5387654</td>
</tr>
</tbody>
</table>
@ -1163,19 +1163,16 @@ Longest: 24</p>
<code class="sourceCode R"><span class="va">mic_values</span> <span class="op">&lt;-</span> <span class="fu"><a href="../reference/random.html">random_mic</a></span><span class="op">(</span>size <span class="op">=</span> <span class="fl">100</span><span class="op">)</span>
<span class="va">mic_values</span>
<span class="co"># Class &lt;mic&gt;</span>
<span class="co"># [1] &gt;=128 &lt;=0.0625 64 4 0.25 16 8 2 </span>
<span class="co"># [9] 0.25 &gt;=128 0.25 &gt;=128 0.25 0.5 64 0.125 </span>
<span class="co"># [17] 2 &lt;=0.0625 0.5 2 1 0.5 32 &gt;=128 </span>
<span class="co"># [25] 0.5 32 &gt;=128 0.25 &lt;=0.0625 &lt;=0.0625 0.5 2 </span>
<span class="co"># [33] &gt;=128 &gt;=128 4 8 &lt;=0.0625 &lt;=0.0625 4 16 </span>
<span class="co"># [41] &gt;=128 32 &lt;=0.0625 &gt;=128 1 &lt;=0.0625 0.5 8 </span>
<span class="co"># [49] 0.125 4 &lt;=0.0625 16 4 32 0.125 8 </span>
<span class="co"># [57] 4 4 16 4 &gt;=128 &lt;=0.0625 4 32 </span>
<span class="co"># [65] 0.125 64 0.5 0.125 0.5 4 16 32 </span>
<span class="co"># [73] 0.125 0.25 4 0.25 4 &gt;=128 &gt;=128 16 </span>
<span class="co"># [81] 1 &lt;=0.0625 0.125 1 4 4 &lt;=0.0625 0.125 </span>
<span class="co"># [89] 0.125 &gt;=128 16 2 0.25 64 8 16 </span>
<span class="co"># [97] 4 &gt;=128 8 &gt;=128</span></code></pre></div>
<span class="co"># [1] 2 2 16 4 0.125 0.5 64 16 128 32 </span>
<span class="co"># [11] 4 32 1 0.125 128 2 8 64 64 2 </span>
<span class="co"># [21] 8 0.125 0.25 1 16 64 0.25 0.5 0.25 4 </span>
<span class="co"># [31] 16 32 0.25 1 0.5 8 64 2 0.25 0.0625</span>
<span class="co"># [41] 128 1 2 2 0.0625 0.125 64 8 8 8 </span>
<span class="co"># [51] 4 8 0.125 1 128 1 128 2 2 0.5 </span>
<span class="co"># [61] 32 64 16 32 32 16 4 1 16 2 </span>
<span class="co"># [71] 1 0.125 2 4 0.125 32 2 0.125 8 0.25 </span>
<span class="co"># [81] 0.0625 4 0.5 16 128 8 128 0.125 0.0625 1 </span>
<span class="co"># [91] 1 0.25 0.0625 128 128 8 0.0625 32 128 0.25</span></code></pre></div>
<div class="sourceCode" id="cb36"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span class="co"># base R:</span>
<span class="fu"><a href="../reference/plot.html">plot</a></span><span class="op">(</span><span class="va">mic_values</span><span class="op">)</span></code></pre></div>
@ -1204,10 +1201,10 @@ Longest: 24</p>
<span class="co"># to review it.</span>
<span class="va">disk_values</span>
<span class="co"># Class &lt;disk&gt;</span>
<span class="co"># [1] 21 24 22 27 19 23 24 30 27 27 30 22 26 21 29 18 31 31 17 20 24 28 21 20 25</span>
<span class="co"># [26] 21 17 19 26 28 21 17 30 27 25 30 30 22 21 25 21 19 17 19 28 25 24 27 23 27</span>
<span class="co"># [51] 26 21 17 18 26 19 31 27 27 25 28 24 20 17 24 21 26 26 26 22 27 27 22 19 23</span>
<span class="co"># [76] 17 27 22 17 26 30 31 28 27 19 23 24 31 22 28 31 27 31 23 29 19 18 30 27 28</span></code></pre></div>
<span class="co"># [1] 31 27 25 19 19 17 23 24 30 28 22 26 18 29 25 24 22 30 17 20 23 24 26 24 27</span>
<span class="co"># [26] 22 27 22 17 26 22 31 27 31 31 25 21 18 26 22 21 25 21 26 22 21 20 20 24 19</span>
<span class="co"># [51] 25 17 29 26 28 30 30 29 30 28 19 28 22 21 26 25 24 23 21 18 27 20 17 29 30</span>
<span class="co"># [76] 17 25 19 30 22 26 22 31 18 19 26 20 18 23 17 30 30 22 21 25 21 17 30 30 24</span></code></pre></div>
<div class="sourceCode" id="cb42"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span class="co"># base R:</span>
<span class="fu"><a href="../reference/plot.html">plot</a></span><span class="op">(</span><span class="va">disk_values</span>, mo <span class="op">=</span> <span class="st">"E. coli"</span>, ab <span class="op">=</span> <span class="st">"cipro"</span><span class="op">)</span></code></pre></div>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 46 KiB

View File

@ -0,0 +1,12 @@
// Pandoc 2.9 adds attributes on both header and div. We remove the former (to
// be compatible with the behavior of Pandoc < 2.8).
document.addEventListener('DOMContentLoaded', function(e) {
var hs = document.querySelectorAll("div.section[class*='level'] > :first-child");
var i, h, a;
for (i = 0; i < hs.length; i++) {
h = hs[i];
if (!/^h[1-6]$/i.test(h.tagName)) continue; // it should be a header h1-h6
a = h.attributes;
while (a.length > 0) h.removeAttribute(a[0].name);
}
});

View File

@ -339,17 +339,17 @@ Unique: 2</p>
<div class="sourceCode" id="cb8"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span class="fu"><a href="https://rdrr.io/r/utils/head.html">head</a></span><span class="op">(</span><span class="va">my_TB_data</span><span class="op">)</span>
<span class="co"># rifampicin isoniazid gatifloxacin ethambutol pyrazinamide moxifloxacin</span>
<span class="co"># 1 R I I I S R</span>
<span class="co"># 2 R R S R S S</span>
<span class="co"># 3 I R S S S R</span>
<span class="co"># 4 I I I R S I</span>
<span class="co"># 5 I R R I R S</span>
<span class="co"># 6 R R R R I S</span>
<span class="co"># 1 I I I I S S</span>
<span class="co"># 2 R I S I I I</span>
<span class="co"># 3 S R R R R I</span>
<span class="co"># 4 S R S S R S</span>
<span class="co"># 5 R S I R S R</span>
<span class="co"># 6 R R R R I I</span>
<span class="co"># kanamycin</span>
<span class="co"># 1 S</span>
<span class="co"># 1 I</span>
<span class="co"># 2 I</span>
<span class="co"># 3 R</span>
<span class="co"># 4 S</span>
<span class="co"># 3 S</span>
<span class="co"># 4 R</span>
<span class="co"># 5 I</span>
<span class="co"># 6 I</span></code></pre></div>
<p>We can now add the interpretation of MDR-TB to our data set. You can use:</p>
@ -367,7 +367,7 @@ Unique: 2</p>
<p>Class: factor &gt; ordered (numeric)<br>
Length: 5,000<br>
Levels: 5: Negative &lt; Mono-resistant &lt; Poly-resistant &lt; Multi-drug-resistant &lt;<br>
Available: 5,000 (100%, NA: 0 = 0%)<br>
Available: 5,000 (100.0%, NA: 0 = 0.0%)<br>
Unique: 5</p>
<table class="table">
<thead><tr class="header">
@ -382,40 +382,40 @@ Unique: 5</p>
<tr class="odd">
<td align="left">1</td>
<td align="left">Mono-resistant</td>
<td align="right">3200</td>
<td align="right">64.00%</td>
<td align="right">3200</td>
<td align="right">64.00%</td>
<td align="right">3271</td>
<td align="right">65.42%</td>
<td align="right">3271</td>
<td align="right">65.42%</td>
</tr>
<tr class="even">
<td align="left">2</td>
<td align="left">Negative</td>
<td align="right">1014</td>
<td align="right">20.28%</td>
<td align="right">4214</td>
<td align="right">84.28%</td>
<td align="right">949</td>
<td align="right">18.98%</td>
<td align="right">4220</td>
<td align="right">84.40%</td>
</tr>
<tr class="odd">
<td align="left">3</td>
<td align="left">Multi-drug-resistant</td>
<td align="right">455</td>
<td align="right">9.10%</td>
<td align="right">449</td>
<td align="right">8.98%</td>
<td align="right">4669</td>
<td align="right">93.38%</td>
</tr>
<tr class="even">
<td align="left">4</td>
<td align="left">Poly-resistant</td>
<td align="right">252</td>
<td align="right">5.04%</td>
<td align="right">4921</td>
<td align="right">98.42%</td>
<td align="right">240</td>
<td align="right">4.80%</td>
<td align="right">4909</td>
<td align="right">98.18%</td>
</tr>
<tr class="odd">
<td align="left">5</td>
<td align="left">Extensively drug-resistant</td>
<td align="right">79</td>
<td align="right">1.58%</td>
<td align="right">91</td>
<td align="right">1.82%</td>
<td align="right">5000</td>
<td align="right">100.00%</td>
</tr>

View File

@ -193,7 +193,7 @@
<h1 data-toc-skip>How to import data from SPSS / SAS / Stata</h1>
<h4 class="author">Matthijs S. Berends</h4>
<h4 class="date">24 May 2021</h4>
<h4 class="date">26 May 2021</h4>
<small class="dont-index">Source: <a href="https://github.com/msberends/AMR/blob/master/vignettes/SPSS.Rmd"><code>vignettes/SPSS.Rmd</code></a></small>
<div class="hidden name"><code>SPSS.Rmd</code></div>

View File

@ -240,7 +240,7 @@
<p><strong>Frequency table</strong></p>
<p>Class: character<br>
Length: 500<br>
Available: 500 (100%, NA: 0 = 0%)<br>
Available: 500 (100.0%, NA: 0 = 0.0%)<br>
Unique: 37</p>
<p>Shortest: 11<br>
Longest: 40</p>

View File

@ -226,32 +226,19 @@
times <span class="op">=</span> <span class="fl">25</span><span class="op">)</span>
<span class="fu"><a href="https://docs.ropensci.org/skimr/reference/print.html">print</a></span><span class="op">(</span><span class="va">S.aureus</span>, unit <span class="op">=</span> <span class="st">"ms"</span>, signif <span class="op">=</span> <span class="fl">2</span><span class="op">)</span>
<span class="co"># Unit: milliseconds</span>
<span class="co"># expr min lq mean median uq max</span>
<span class="co"># as.mo("sau") 10.0 11.0 14.0 12.0 13.0 47.0</span>
<span class="co"># as.mo("stau") 53.0 56.0 78.0 58.0 94.0 220.0</span>
<span class="co"># as.mo("STAU") 53.0 54.0 69.0 58.0 92.0 99.0</span>
<span class="co"># as.mo("staaur") 10.0 11.0 15.0 11.0 12.0 47.0</span>
<span class="co"># as.mo("STAAUR") 9.4 11.0 14.0 11.0 12.0 64.0</span>
<span class="co"># as.mo("S. aureus") 24.0 26.0 44.0 33.0 63.0 69.0</span>
<span class="co"># as.mo("S aureus") 24.0 27.0 40.0 30.0 61.0 70.0</span>
<span class="co"># as.mo("Staphylococcus aureus") 2.6 3.1 3.2 3.2 3.3 3.8</span>
<span class="co"># as.mo("Staphylococcus aureus (MRSA)") 230.0 250.0 250.0 250.0 250.0 280.0</span>
<span class="co"># as.mo("Sthafilokkockus aaureuz") 180.0 190.0 200.0 190.0 200.0 330.0</span>
<span class="co"># as.mo("MRSA") 10.0 11.0 16.0 12.0 13.0 47.0</span>
<span class="co"># as.mo("VISA") 17.0 19.0 22.0 19.0 22.0 63.0</span>
<span class="co"># neval</span>
<span class="co"># 25</span>
<span class="co"># 25</span>
<span class="co"># 25</span>
<span class="co"># 25</span>
<span class="co"># 25</span>
<span class="co"># 25</span>
<span class="co"># 25</span>
<span class="co"># 25</span>
<span class="co"># 25</span>
<span class="co"># 25</span>
<span class="co"># 25</span>
<span class="co"># 25</span></code></pre></div>
<span class="co"># expr min lq mean median uq max neval</span>
<span class="co"># as.mo("sau") 10.0 11.0 16.0 11.0 13.0 50 25</span>
<span class="co"># as.mo("stau") 54.0 58.0 72.0 61.0 89.0 99 25</span>
<span class="co"># as.mo("STAU") 53.0 55.0 67.0 56.0 91.0 95 25</span>
<span class="co"># as.mo("staaur") 10.0 11.0 16.0 11.0 13.0 47 25</span>
<span class="co"># as.mo("STAAUR") 10.0 11.0 17.0 12.0 13.0 58 25</span>
<span class="co"># as.mo("S. aureus") 26.0 27.0 36.0 31.0 33.0 70 25</span>
<span class="co"># as.mo("S aureus") 26.0 27.0 40.0 29.0 61.0 68 25</span>
<span class="co"># as.mo("Staphylococcus aureus") 2.6 3.2 6.5 3.5 3.8 42 25</span>
<span class="co"># as.mo("Staphylococcus aureus (MRSA)") 240.0 250.0 260.0 260.0 270.0 290 25</span>
<span class="co"># as.mo("Sthafilokkockus aaureuz") 190.0 190.0 200.0 200.0 210.0 300 25</span>
<span class="co"># as.mo("MRSA") 10.0 11.0 13.0 12.0 13.0 40 25</span>
<span class="co"># as.mo("VISA") 18.0 19.0 32.0 20.0 24.0 130 25</span></code></pre></div>
<p><img src="benchmarks_files/figure-html/unnamed-chunk-4-1.png" width="750"></p>
<p>In the table above, all measurements are shown in milliseconds (thousands of seconds). A value of 5 milliseconds means it can determine 200 input values per second. It case of 200 milliseconds, this is only 5 input values per second. It is clear that accepted taxonomic names are extremely fast, but some variations are up to 200 times slower to determine.</p>
<p>To improve performance, we implemented two important algorithms to save unnecessary calculations: <strong>repetitive results</strong> and <strong>already precalculated results</strong>.</p>
@ -273,8 +260,8 @@
<span class="co"># what do these values look like? They are of class &lt;mo&gt;:</span>
<span class="fu"><a href="https://rdrr.io/r/utils/head.html">head</a></span><span class="op">(</span><span class="va">x</span><span class="op">)</span>
<span class="co"># Class &lt;mo&gt;</span>
<span class="co"># [1] B_STRPT_PNMN B_STPHY_CONS B_ESCHR_COLI B_STRPT_PNMN B_ESCHR_COLI</span>
<span class="co"># [6] B_ENTRC_FCLS</span>
<span class="co"># [1] B_STPHY_EPDR B_STRPT_GRPA B_STPHY_AURS B_BCTRD_FRGL B_STPHY_HMNS</span>
<span class="co"># [6] B_STPHY_CONS</span>
<span class="co"># as the example_isolates data set has 2,000 rows, we should have 2 million items</span>
<span class="fu"><a href="https://rdrr.io/r/base/length.html">length</a></span><span class="op">(</span><span class="va">x</span><span class="op">)</span>
@ -290,8 +277,8 @@
<span class="fu"><a href="https://docs.ropensci.org/skimr/reference/print.html">print</a></span><span class="op">(</span><span class="va">run_it</span>, unit <span class="op">=</span> <span class="st">"ms"</span>, signif <span class="op">=</span> <span class="fl">3</span><span class="op">)</span>
<span class="co"># Unit: milliseconds</span>
<span class="co"># expr min lq mean median uq max neval</span>
<span class="co"># mo_name(x) 180 186 215 221 222 281 10</span></code></pre></div>
<p>So getting official taxonomic names of 2,000,000 (!!) items consisting of 90 unique values only takes 0.221 seconds. That is 110 nanoseconds on average. You only lose time on your unique input values.</p>
<span class="co"># mo_name(x) 187 223 233 226 229 318 10</span></code></pre></div>
<p>So getting official taxonomic names of 2,000,000 (!!) items consisting of 90 unique values only takes 0.226 seconds. That is 113 nanoseconds on average. You only lose time on your unique input values.</p>
</div>
<div id="precalculated-results" class="section level3">
<h3 class="hasAnchor">
@ -305,10 +292,10 @@
<span class="fu"><a href="https://docs.ropensci.org/skimr/reference/print.html">print</a></span><span class="op">(</span><span class="va">run_it</span>, unit <span class="op">=</span> <span class="st">"ms"</span>, signif <span class="op">=</span> <span class="fl">3</span><span class="op">)</span>
<span class="co"># Unit: milliseconds</span>
<span class="co"># expr min lq mean median uq max neval</span>
<span class="co"># A 7.45 7.68 8.13 8.23 8.39 8.95 10</span>
<span class="co"># B 22.70 22.90 31.30 23.90 26.50 62.00 10</span>
<span class="co"># C 1.51 1.58 1.79 1.84 1.97 1.99 10</span></code></pre></div>
<p>So going from <code><a href="../reference/mo_property.html">mo_name("Staphylococcus aureus")</a></code> to <code>"Staphylococcus aureus"</code> takes 0.0018 seconds - it doesnt even start calculating <em>if the result would be the same as the expected resulting value</em>. That goes for all helper functions:</p>
<span class="co"># A 7.28 7.59 8.01 8.03 8.45 8.66 10</span>
<span class="co"># B 23.00 24.10 30.30 25.50 27.30 75.30 10</span>
<span class="co"># C 1.55 1.74 7.31 1.95 2.01 56.10 10</span></code></pre></div>
<p>So going from <code><a href="../reference/mo_property.html">mo_name("Staphylococcus aureus")</a></code> to <code>"Staphylococcus aureus"</code> takes 0.0019 seconds - it doesnt even start calculating <em>if the result would be the same as the expected resulting value</em>. That goes for all helper functions:</p>
<div class="sourceCode" id="cb5"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span class="va">run_it</span> <span class="op">&lt;-</span> <span class="fu"><a href="https://rdrr.io/pkg/microbenchmark/man/microbenchmark.html">microbenchmark</a></span><span class="op">(</span>A <span class="op">=</span> <span class="fu"><a href="../reference/mo_property.html">mo_species</a></span><span class="op">(</span><span class="st">"aureus"</span><span class="op">)</span>,
B <span class="op">=</span> <span class="fu"><a href="../reference/mo_property.html">mo_genus</a></span><span class="op">(</span><span class="st">"Staphylococcus"</span><span class="op">)</span>,
@ -322,14 +309,14 @@
<span class="fu"><a href="https://docs.ropensci.org/skimr/reference/print.html">print</a></span><span class="op">(</span><span class="va">run_it</span>, unit <span class="op">=</span> <span class="st">"ms"</span>, signif <span class="op">=</span> <span class="fl">3</span><span class="op">)</span>
<span class="co"># Unit: milliseconds</span>
<span class="co"># expr min lq mean median uq max neval</span>
<span class="co"># A 1.44 1.44 1.51 1.46 1.56 1.68 10</span>
<span class="co"># B 1.37 1.40 1.53 1.48 1.67 1.81 10</span>
<span class="co"># C 1.42 1.47 1.61 1.59 1.68 1.84 10</span>
<span class="co"># D 1.39 1.43 1.52 1.46 1.53 1.92 10</span>
<span class="co"># E 1.41 1.46 1.58 1.50 1.70 1.91 10</span>
<span class="co"># F 1.36 1.44 1.49 1.46 1.57 1.64 10</span>
<span class="co"># G 1.37 1.44 1.64 1.48 1.82 2.40 10</span>
<span class="co"># H 1.41 1.43 1.52 1.48 1.54 1.87 10</span></code></pre></div>
<span class="co"># A 1.42 1.45 1.56 1.50 1.57 2.00 10</span>
<span class="co"># B 1.43 1.46 1.49 1.47 1.55 1.59 10</span>
<span class="co"># C 1.41 1.43 1.58 1.49 1.57 2.19 10</span>
<span class="co"># D 1.41 1.48 1.61 1.54 1.63 2.33 10</span>
<span class="co"># E 1.41 1.45 1.64 1.51 1.56 2.68 10</span>
<span class="co"># F 1.42 1.52 1.63 1.57 1.71 1.99 10</span>
<span class="co"># G 1.41 1.46 1.65 1.56 1.90 1.98 10</span>
<span class="co"># H 1.42 1.46 1.59 1.55 1.70 1.88 10</span></code></pre></div>
<p>Of course, when running <code><a href="../reference/mo_property.html">mo_phylum("Firmicutes")</a></code> the function has zero knowledge about the actual microorganism, namely <em>S. aureus</em>. But since the result would be <code>"Firmicutes"</code> anyway, there is no point in calculating the result. And because this package contains all phyla of all known bacteria, it can just return the initial value immediately.</p>
</div>
<div id="results-in-other-languages" class="section level3">
@ -357,13 +344,13 @@
<span class="fu"><a href="https://docs.ropensci.org/skimr/reference/print.html">print</a></span><span class="op">(</span><span class="va">run_it</span>, unit <span class="op">=</span> <span class="st">"ms"</span>, signif <span class="op">=</span> <span class="fl">4</span><span class="op">)</span>
<span class="co"># Unit: milliseconds</span>
<span class="co"># expr min lq mean median uq max neval</span>
<span class="co"># en 17.63 17.96 22.55 18.30 18.78 68.16 100</span>
<span class="co"># de 28.48 28.93 33.83 29.18 29.85 76.90 100</span>
<span class="co"># nl 32.10 33.11 43.48 33.70 35.84 202.50 100</span>
<span class="co"># es 32.17 32.67 43.51 33.33 66.07 78.29 100</span>
<span class="co"># it 21.95 22.29 26.55 22.59 23.13 70.41 100</span>
<span class="co"># fr 21.59 21.94 25.36 22.31 22.88 63.46 100</span>
<span class="co"># pt 21.75 22.15 28.50 22.48 23.01 68.10 100</span></code></pre></div>
<span class="co"># en 17.81 18.24 21.93 18.78 19.44 60.56 100</span>
<span class="co"># de 28.82 29.53 37.92 30.33 32.62 81.75 100</span>
<span class="co"># nl 32.65 33.61 44.22 34.43 37.44 193.90 100</span>
<span class="co"># es 32.51 32.95 41.88 33.70 36.39 80.63 100</span>
<span class="co"># it 22.00 22.57 27.98 23.15 25.14 67.04 100</span>
<span class="co"># fr 21.71 22.22 27.20 22.83 24.41 66.08 100</span>
<span class="co"># pt 21.71 22.54 26.97 23.06 23.94 67.41 100</span></code></pre></div>
<p>Currently supported non-English languages are German, Dutch, Spanish, Italian, French and Portuguese.</p>
</div>
</div>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 82 KiB

After

Width:  |  Height:  |  Size: 82 KiB

View File

@ -192,7 +192,7 @@
<div class="page-header toc-ignore">
<h1 data-toc-skip>Data sets for download / own use</h1>
<h4 class="date">24 May 2021</h4>
<h4 class="date">26 May 2021</h4>
<small class="dont-index">Source: <a href="https://github.com/msberends/AMR/blob/master/vignettes/datasets.Rmd"><code>vignettes/datasets.Rmd</code></a></small>
<div class="hidden name"><code>datasets.Rmd</code></div>

View File

@ -376,21 +376,21 @@
<div id="latest-released-version" class="section level4">
<h4 class="hasAnchor">
<a href="#latest-released-version" class="anchor"></a>Latest released version</h4>
<p><a href="https://cran.r-project.org/package=AMR"><img src="https://www.r-pkg.org/badges/version-ago/AMR" alt="CRAN"></a> <a href="https://cran.r-project.org/package=AMR"><img src="https://cranlogs.r-pkg.org/badges/grand-total/AMR" alt="CRANlogs"></a></p>
<p>This package is available <a href="https://cran.r-project.org/package=AMR">here on the official R network (CRAN)</a>, which has a peer-reviewed submission process. Install this package in R from CRAN by using the command:</p>
<p>This package is <a href="https://msberends.r-universe.dev">available here</a> on the <a href="https://ropensci.org/r-universe/">rOpenSci R-universe platform</a>, as CRAN does not allow frequent updates of large packages (though the <code>AMR</code> package is only 7-9 MB). With CRAN, we apparently cannot update this package frequently enough to implement the latest EUCAST/CLSI guidelines or the latest microbial taxonomy.</p>
<p>Install this package in R by using the command:</p>
<div class="sourceCode" id="cb3"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span class="fu"><a href="https://rdrr.io/r/utils/install.packages.html">install.packages</a></span><span class="op">(</span><span class="st">"AMR"</span><span class="op">)</span></code></pre></div>
<p>It will be downloaded and installed automatically. For RStudio, click on the menu <em>Tools</em> &gt; <em>Install Packages…</em> and then type in “AMR” and press <kbd>Install</kbd>.</p>
<code class="sourceCode R"><span class="fu"><a href="https://rdrr.io/r/utils/install.packages.html">install.packages</a></span><span class="op">(</span><span class="st">"AMR"</span>, repos <span class="op">=</span> <span class="st">"https://msberends.r-universe.dev"</span><span class="op">)</span></code></pre></div>
<p>It will be downloaded and installed automatically.</p>
<p><strong>Note:</strong> Not all functions on this website may be available in this latest release. To use all functions and data sets mentioned on this website, install the latest development version.</p>
</div>
<div id="latest-development-version" class="section level4">
<h4 class="hasAnchor">
<a href="#latest-development-version" class="anchor"></a>Latest development version</h4>
<p><img src="https://github.com/msberends/AMR/workflows/R-code-check/badge.svg?branch=master" alt="R-code-check"><a href="https://www.codefactor.io/repository/github/msberends/amr"><img src="https://www.codefactor.io/repository/github/msberends/amr/badge" alt="CodeFactor"></a> <a href="https://codecov.io/gh/msberends/AMR?branch=master"><img src="https://codecov.io/gh/msberends/AMR/branch/master/graph/badge.svg" alt="Codecov"></a></p>
<p>The latest and unpublished development version can be installed from GitHub using:</p>
<div class="sourceCode" id="cb4"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span class="fu"><a href="https://rdrr.io/r/utils/install.packages.html">install.packages</a></span><span class="op">(</span><span class="st">"remotes"</span><span class="op">)</span> <span class="co"># if you haven't already</span>
<span class="fu">remotes</span><span class="fu">::</span><span class="fu"><a href="https://remotes.r-lib.org/reference/install_github.html">install_github</a></span><span class="op">(</span><span class="st">"msberends/AMR"</span><span class="op">)</span></code></pre></div>
<p><img src="https://github.com/msberends/AMR/workflows/R-code-check/badge.svg?branch=master" alt="R-code-check"><img src="https://www.codefactor.io/repository/github/msberends/amr" alt="CodeFactor"><img src="https://codecov.io/gh/msberends/AMR?branch=master" alt="Codecov"></p>
<p>You can also download the latest build from our repository: <a href="https://github.com/msberends/AMR/raw/master/data-raw/AMR_latest.tar.gz" class="uri">https://github.com/msberends/AMR/raw/master/data-raw/AMR_latest.tar.gz</a></p>
</div>
</div>

View File

@ -1,4 +1,4 @@
pandoc: 2.11.2
pandoc: 2.11.4
pkgdown: 1.6.1
pkgdown_sha: ~
articles:
@ -12,7 +12,7 @@ articles:
datasets: datasets.html
resistance_predict: resistance_predict.html
welcome_to_AMR: welcome_to_AMR.html
last_built: 2021-05-24T12:27Z
last_built: 2021-05-26T12:00Z
urls:
reference: https://msberends.github.io/AMR//reference
article: https://msberends.github.io/AMR//articles

View File

@ -433,7 +433,9 @@ A microorganism is categorised as <em>Susceptible, Increased exposure</em> when
info <span class='op'>=</span> <span class='cn'>FALSE</span>,
minimum <span class='op'>=</span> <span class='fl'>15</span><span class='op'>)</span>
<span class='fu'><a href='https://ggplot2.tidyverse.org/reference/ggplot.html'>ggplot</a></span><span class='op'>(</span><span class='va'>data</span>,
<span class='fu'><a href='https://ggplot2.tidyverse.org/reference/ggplot.html'>ggplot</a></span><span class='op'>(</span><span class='va'>data</span><span class='op'>)</span>
<span class='fu'><a href='https://ggplot2.tidyverse.org/reference/ggplot.html'>ggplot</a></span><span class='op'>(</span><span class='fu'><a href='https://rdrr.io/r/base/as.data.frame.html'>as.data.frame</a></span><span class='op'>(</span><span class='va'>data</span><span class='op'>)</span>,
<span class='fu'><a href='https://ggplot2.tidyverse.org/reference/aes.html'>aes</a></span><span class='op'>(</span>x <span class='op'>=</span> <span class='va'>year</span><span class='op'>)</span><span class='op'>)</span> <span class='op'>+</span>
<span class='fu'><a href='https://ggplot2.tidyverse.org/reference/geom_bar.html'>geom_col</a></span><span class='op'>(</span><span class='fu'><a href='https://ggplot2.tidyverse.org/reference/aes.html'>aes</a></span><span class='op'>(</span>y <span class='op'>=</span> <span class='va'>value</span><span class='op'>)</span>,
fill <span class='op'>=</span> <span class='st'>"grey75"</span><span class='op'>)</span> <span class='op'>+</span>

View File

@ -97,23 +97,20 @@ This package can be used for:
### Get this package
#### Latest released version
[![CRAN](https://www.r-pkg.org/badges/version-ago/AMR)](https://cran.r-project.org/package=AMR)
[![CRANlogs](https://cranlogs.r-pkg.org/badges/grand-total/AMR)](https://cran.r-project.org/package=AMR)
This package is available [here on the official R network (CRAN)](https://cran.r-project.org/package=AMR), which has a peer-reviewed submission process. Install this package in R from CRAN by using the command:
This package is [available here](https://msberends.r-universe.dev) on the [rOpenSci R-universe platform](https://ropensci.org/r-universe/), as CRAN does not allow frequent updates of large packages (though the `AMR` package is only 7-9 MB). With CRAN, we apparently cannot update this package frequently enough to implement the latest EUCAST/CLSI guidelines or the latest microbial taxonomy.
Install this package in R by using the command:
```r
install.packages("AMR")
install.packages("AMR", repos = "https://msberends.r-universe.dev")
```
It will be downloaded and installed automatically. For RStudio, click on the menu *Tools* > *Install Packages...* and then type in "AMR" and press <kbd>Install</kbd>.
It will be downloaded and installed automatically.
**Note:** Not all functions on this website may be available in this latest release. To use all functions and data sets mentioned on this website, install the latest development version.
#### Latest development version
![R-code-check](https://github.com/msberends/AMR/workflows/R-code-check/badge.svg?branch=master)
[![CodeFactor](https://www.codefactor.io/repository/github/msberends/amr/badge)](https://www.codefactor.io/repository/github/msberends/amr)
[![Codecov](https://codecov.io/gh/msberends/AMR/branch/master/graph/badge.svg)](https://codecov.io/gh/msberends/AMR?branch=master)
The latest and unpublished development version can be installed from GitHub using:
@ -122,6 +119,10 @@ install.packages("remotes") # if you haven't already
remotes::install_github("msberends/AMR")
```
![R-code-check](https://github.com/msberends/AMR/workflows/R-code-check/badge.svg?branch=master)
![[CodeFactor](https://www.codefactor.io/repository/github/msberends/amr/badge)](https://www.codefactor.io/repository/github/msberends/amr)
![[Codecov](https://codecov.io/gh/msberends/AMR/branch/master/graph/badge.svg)](https://codecov.io/gh/msberends/AMR?branch=master)
You can also download the latest build from our repository: <https://github.com/msberends/AMR/raw/master/data-raw/AMR_latest.tar.gz>
### Get started

View File

@ -45,7 +45,7 @@ expect_equal(summary(as.rsi(c("S", "R"))),
"- %S" = "50.0% (n=1)",
"- %I" = " 0.0% (n=0)"), class = c("summaryDefault", "table")))
expect_identical(as.logical(lapply(example_isolates, is.rsi.eligible)),
rep(FALSE, length(example_isolates)))
as.logical(lapply(example_isolates, is.rsi)))
expect_error(as.rsi.mic(as.mic(16)))
expect_error(as.rsi.disk(as.disk(16)))
expect_error(get_guideline("this one does not exist"))

View File

@ -102,7 +102,7 @@ for (i in seq_len(length(import_functions))) {
fn <- names(import_functions)[i]
pkg <- unname(import_functions[i])
# function should exist in foreign pkg namespace
if (pkg %in% rownames(installed.packages())) {
if (AMR:::pkg_is_available(pkg, also_load = FALSE)) {
tst <- !is.null(AMR:::import_fn(name = fn, pkg = pkg, error_on_fail = FALSE))
expect_true(tst,
info = ifelse(tst,

View File

@ -166,7 +166,9 @@ if (require("dplyr") & require("ggplot2")) {
info = FALSE,
minimum = 15)
ggplot(data,
ggplot(data)
ggplot(as.data.frame(data),
aes(x = year)) +
geom_col(aes(y = value),
fill = "grey75") +