1
0
mirror of https://github.com/msberends/AMR.git synced 2026-06-23 22:16:22 +02:00

Built site for AMR@3.0.1.9061: 0c1709c

This commit is contained in:
github-actions
2026-06-23 18:00:14 +00:00
parent 9447e0f2c2
commit 2a7bfb9ffb
328 changed files with 5357 additions and 3687 deletions

View File

@@ -12,8 +12,8 @@
<link rel="icon" sizes="any" href="https://amr-for-r.org/favicon.ico">
<link rel="manifest" href="https://amr-for-r.org/site.webmanifest">
<script src="https://amr-for-r.org/deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link href="https://amr-for-r.org/deps/bootstrap-5.3.1/bootstrap.min.css" rel="stylesheet">
<script src="https://amr-for-r.org/deps/bootstrap-5.3.1/bootstrap.bundle.min.js"></script><link href="https://amr-for-r.org/deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="https://amr-for-r.org/deps/bootstrap-5.3.8/bootstrap.min.css" rel="stylesheet">
<script src="https://amr-for-r.org/deps/bootstrap-5.3.8/bootstrap.bundle.min.js"></script><link href="https://amr-for-r.org/deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="https://amr-for-r.org/deps/Fira_Code-0.4.10/font.css" rel="stylesheet">
<link href="https://amr-for-r.org/deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet">
<link href="https://amr-for-r.org/deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet">
@@ -31,7 +31,7 @@
<a class="navbar-brand me-2" href="https://amr-for-r.org/index.html">AMR (for R)</a>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9057</small>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9061</small>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">

View File

@@ -1,5 +1,5 @@
<!DOCTYPE html>
<!-- Generated by pkgdown: do not edit by hand --><html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><title>CLAUDE.md — AMR R Package • AMR (for R)</title><!-- favicons --><link rel="icon" type="image/png" sizes="96x96" href="favicon-96x96.png"><link rel="icon" type="”image/svg+xml”" href="favicon.svg"><link rel="apple-touch-icon" sizes="180x180" href="apple-touch-icon.png"><link rel="icon" sizes="any" href="favicon.ico"><link rel="manifest" href="site.webmanifest"><script src="deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><link href="deps/bootstrap-5.3.1/bootstrap.min.css" rel="stylesheet"><script src="deps/bootstrap-5.3.1/bootstrap.bundle.min.js"></script><link href="deps/Lato-0.4.10/font.css" rel="stylesheet"><link href="deps/Fira_Code-0.4.10/font.css" rel="stylesheet"><link href="deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet"><link href="deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet"><script src="deps/headroom-0.11.0/headroom.min.js"></script><script src="deps/headroom-0.11.0/jQuery.headroom.min.js"></script><script src="deps/bootstrap-toc-1.0.1/bootstrap-toc.min.js"></script><script src="deps/clipboard.js-2.0.11/clipboard.min.js"></script><script src="deps/search-1.0.0/autocomplete.jquery.min.js"></script><script src="deps/search-1.0.0/fuse.min.js"></script><script src="deps/search-1.0.0/mark.min.js"></script><!-- pkgdown --><script src="pkgdown.js"></script><link href="extra.css" rel="stylesheet"><script src="extra.js"></script><meta property="og:title" content="CLAUDE.md — AMR R Package"><meta property="og:image" content="https://amr-for-r.org/logo.svg"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.css" integrity="sha384-nB0miv6/jRmo5UMMR1wu3Gz6NLsoTkbqJghGIsx//Rlm+ZU03BU6SQNC66uf4l5+" crossorigin="anonymous"><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.js" integrity="sha384-7zkQWkzuo3B5mTepMUcHkMB5jZaolc2xDwL6VFqjFALcbeS9Ggm/Yr2r3Dy4lfFg" crossorigin="anonymous"></script><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/contrib/auto-render.min.js" integrity="sha384-43gviWU0YVjaDtb/GhzOouOXtZMP/7XUzwPTstBeZFe/+rCMvRwr4yROQP43s0Xk" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script></head><body>
<!-- Generated by pkgdown: do not edit by hand --><html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><title>CLAUDE.md — AMR R Package • AMR (for R)</title><!-- favicons --><link rel="icon" type="image/png" sizes="96x96" href="favicon-96x96.png"><link rel="icon" type="”image/svg+xml”" href="favicon.svg"><link rel="apple-touch-icon" sizes="180x180" href="apple-touch-icon.png"><link rel="icon" sizes="any" href="favicon.ico"><link rel="manifest" href="site.webmanifest"><script src="deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><link href="deps/bootstrap-5.3.8/bootstrap.min.css" rel="stylesheet"><script src="deps/bootstrap-5.3.8/bootstrap.bundle.min.js"></script><link href="deps/Lato-0.4.10/font.css" rel="stylesheet"><link href="deps/Fira_Code-0.4.10/font.css" rel="stylesheet"><link href="deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet"><link href="deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet"><script src="deps/headroom-0.11.0/headroom.min.js"></script><script src="deps/headroom-0.11.0/jQuery.headroom.min.js"></script><script src="deps/bootstrap-toc-1.0.1/bootstrap-toc.min.js"></script><script src="deps/clipboard.js-2.0.11/clipboard.min.js"></script><script src="deps/search-1.0.0/autocomplete.jquery.min.js"></script><script src="deps/search-1.0.0/fuse.min.js"></script><script src="deps/search-1.0.0/mark.min.js"></script><!-- pkgdown --><script src="pkgdown.js"></script><link href="extra.css" rel="stylesheet"><script src="extra.js"></script><meta property="og:title" content="CLAUDE.md — AMR R Package"><meta property="og:image" content="https://amr-for-r.org/logo.svg"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.css" integrity="sha384-nB0miv6/jRmo5UMMR1wu3Gz6NLsoTkbqJghGIsx//Rlm+ZU03BU6SQNC66uf4l5+" crossorigin="anonymous"><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.js" integrity="sha384-7zkQWkzuo3B5mTepMUcHkMB5jZaolc2xDwL6VFqjFALcbeS9Ggm/Yr2r3Dy4lfFg" crossorigin="anonymous"></script><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/contrib/auto-render.min.js" integrity="sha384-43gviWU0YVjaDtb/GhzOouOXtZMP/7XUzwPTstBeZFe/+rCMvRwr4yROQP43s0Xk" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script></head><body>
<a href="#main" class="visually-hidden-focusable">Skip to contents</a>
@@ -7,7 +7,7 @@
<a class="navbar-brand me-2" href="index.html">AMR (for R)</a>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9057</small>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9061</small>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">

View File

@@ -1,5 +1,5 @@
<!DOCTYPE html>
<!-- Generated by pkgdown: do not edit by hand --><html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><title>License • AMR (for R)</title><!-- favicons --><link rel="icon" type="image/png" sizes="96x96" href="favicon-96x96.png"><link rel="icon" type="”image/svg+xml”" href="favicon.svg"><link rel="apple-touch-icon" sizes="180x180" href="apple-touch-icon.png"><link rel="icon" sizes="any" href="favicon.ico"><link rel="manifest" href="site.webmanifest"><script src="deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><link href="deps/bootstrap-5.3.1/bootstrap.min.css" rel="stylesheet"><script src="deps/bootstrap-5.3.1/bootstrap.bundle.min.js"></script><link href="deps/Lato-0.4.10/font.css" rel="stylesheet"><link href="deps/Fira_Code-0.4.10/font.css" rel="stylesheet"><link href="deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet"><link href="deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet"><script src="deps/headroom-0.11.0/headroom.min.js"></script><script src="deps/headroom-0.11.0/jQuery.headroom.min.js"></script><script src="deps/bootstrap-toc-1.0.1/bootstrap-toc.min.js"></script><script src="deps/clipboard.js-2.0.11/clipboard.min.js"></script><script src="deps/search-1.0.0/autocomplete.jquery.min.js"></script><script src="deps/search-1.0.0/fuse.min.js"></script><script src="deps/search-1.0.0/mark.min.js"></script><!-- pkgdown --><script src="pkgdown.js"></script><link href="extra.css" rel="stylesheet"><script src="extra.js"></script><meta property="og:title" content="License"><meta property="og:image" content="https://amr-for-r.org/logo.svg"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.css" integrity="sha384-nB0miv6/jRmo5UMMR1wu3Gz6NLsoTkbqJghGIsx//Rlm+ZU03BU6SQNC66uf4l5+" crossorigin="anonymous"><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.js" integrity="sha384-7zkQWkzuo3B5mTepMUcHkMB5jZaolc2xDwL6VFqjFALcbeS9Ggm/Yr2r3Dy4lfFg" crossorigin="anonymous"></script><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/contrib/auto-render.min.js" integrity="sha384-43gviWU0YVjaDtb/GhzOouOXtZMP/7XUzwPTstBeZFe/+rCMvRwr4yROQP43s0Xk" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script></head><body>
<!-- Generated by pkgdown: do not edit by hand --><html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><title>License • AMR (for R)</title><!-- favicons --><link rel="icon" type="image/png" sizes="96x96" href="favicon-96x96.png"><link rel="icon" type="”image/svg+xml”" href="favicon.svg"><link rel="apple-touch-icon" sizes="180x180" href="apple-touch-icon.png"><link rel="icon" sizes="any" href="favicon.ico"><link rel="manifest" href="site.webmanifest"><script src="deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><link href="deps/bootstrap-5.3.8/bootstrap.min.css" rel="stylesheet"><script src="deps/bootstrap-5.3.8/bootstrap.bundle.min.js"></script><link href="deps/Lato-0.4.10/font.css" rel="stylesheet"><link href="deps/Fira_Code-0.4.10/font.css" rel="stylesheet"><link href="deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet"><link href="deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet"><script src="deps/headroom-0.11.0/headroom.min.js"></script><script src="deps/headroom-0.11.0/jQuery.headroom.min.js"></script><script src="deps/bootstrap-toc-1.0.1/bootstrap-toc.min.js"></script><script src="deps/clipboard.js-2.0.11/clipboard.min.js"></script><script src="deps/search-1.0.0/autocomplete.jquery.min.js"></script><script src="deps/search-1.0.0/fuse.min.js"></script><script src="deps/search-1.0.0/mark.min.js"></script><!-- pkgdown --><script src="pkgdown.js"></script><link href="extra.css" rel="stylesheet"><script src="extra.js"></script><meta property="og:title" content="License"><meta property="og:image" content="https://amr-for-r.org/logo.svg"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.css" integrity="sha384-nB0miv6/jRmo5UMMR1wu3Gz6NLsoTkbqJghGIsx//Rlm+ZU03BU6SQNC66uf4l5+" crossorigin="anonymous"><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.js" integrity="sha384-7zkQWkzuo3B5mTepMUcHkMB5jZaolc2xDwL6VFqjFALcbeS9Ggm/Yr2r3Dy4lfFg" crossorigin="anonymous"></script><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/contrib/auto-render.min.js" integrity="sha384-43gviWU0YVjaDtb/GhzOouOXtZMP/7XUzwPTstBeZFe/+rCMvRwr4yROQP43s0Xk" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script></head><body>
<a href="#main" class="visually-hidden-focusable">Skip to contents</a>
@@ -7,7 +7,7 @@
<a class="navbar-brand me-2" href="index.html">AMR (for R)</a>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9057</small>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9061</small>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">

View File

@@ -12,8 +12,8 @@
<link rel="icon" sizes="any" href="../favicon.ico">
<link rel="manifest" href="../site.webmanifest">
<script src="../deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link href="../deps/bootstrap-5.3.1/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.1/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/bootstrap-5.3.8/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.8/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/Fira_Code-0.4.10/font.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet">
@@ -30,7 +30,7 @@
<a class="navbar-brand me-2" href="../index.html">AMR (for R)</a>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9057</small>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9061</small>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
@@ -91,7 +91,7 @@
website update since they are based on randomly created values and the
page was written in <a href="https://rmarkdown.rstudio.com/" class="external-link">R
Markdown</a>. However, the methodology remains unchanged. This page was
generated on 02 May 2026.</p>
generated on 23 June 2026.</p>
<div class="section level2">
<h2 id="introduction">Introduction<a class="anchor" aria-label="anchor" href="#introduction"></a>
</h2>
@@ -147,21 +147,21 @@ make the structure of your data generally look like this:</p>
</tr></thead>
<tbody>
<tr class="odd">
<td align="center">2026-05-02</td>
<td align="center">2026-06-23</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">2026-05-02</td>
<td align="center">2026-06-23</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">2026-05-02</td>
<td align="center">2026-06-23</td>
<td align="center">efgh</td>
<td align="center">Escherichia coli</td>
<td align="center">R</td>
@@ -218,7 +218,7 @@ cleaned as SIR values as well.</p>
<p>With <code><a href="../reference/as.mo.html">as.mo()</a></code>, users can transform arbitrary
microorganism names or codes to current taxonomy. The <code>AMR</code>
package contains up-to-date taxonomic data. To be specific, currently
included data were retrieved on 24 Jun 2024.</p>
included data were retrieved on 07 May 2026.</p>
<p>The codes of the AMR packages that come from <code><a href="../reference/as.mo.html">as.mo()</a></code> are
short, but still human readable. More importantly, <code><a href="../reference/as.mo.html">as.mo()</a></code>
supports all kinds of input:</p>
@@ -287,24 +287,23 @@ taxonomic codes. Lets check this:</p>
<span><span class="co">#&gt; Also matched: <span style="font-style: italic;">Klebsiella pneumoniae</span> complex<span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFFF87;">0.707</span>), <span style="font-style: italic;">Klebsiella pneumoniae</span></span></span>
<span><span class="co">#&gt; <span style="font-style: italic;">ozaenae</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFFF87;">0.707</span>), <span style="font-style: italic;">Klebsiella pneumoniae pneumoniae</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFFF87;">0.688</span>), <span style="font-style: italic;">Klebsiella</span></span></span>
<span><span class="co">#&gt; <span style="font-style: italic;">pneumoniae rhinoscleromatis</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFFF87;">0.658</span>), <span style="font-style: italic;">Klebsiella pasteurii</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.500</span>), <span style="font-style: italic;">Klebsiella</span></span></span>
<span><span class="co">#&gt; <span style="font-style: italic;">planticola</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.500</span>), <span style="font-style: italic;">Kingella potus</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.400</span>), <span style="font-style: italic;">Kluyveromyces pseudotropicale</span></span></span>
<span><span class="co">#&gt; <span style="color: #0000BB;">(</span><span style="color: #080808; background-color: #FF5F5F;">0.386</span>), <span style="font-style: italic;">Kluyveromyces pseudotropicalis</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.363</span>), and <span style="font-style: italic;">Kosakonia pseudosacchari</span></span></span>
<span><span class="co">#&gt; <span style="color: #0000BB;">(</span><span style="color: #080808; background-color: #FF5F5F;">0.361</span>)</span></span>
<span><span class="co">#&gt; <span style="font-style: italic;">planticola</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.500</span>), <span style="font-style: italic;">Kosakonia pseudosacchari</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.471</span>), <span style="font-style: italic;">Kaistella palustris</span></span></span>
<span><span class="co">#&gt; <span style="color: #0000BB;">(</span><span style="color: #080808; background-color: #FF5F5F;">0.435</span>), <span style="font-style: italic;">Kingella potus</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.435</span>), and <span style="font-style: italic;">Kocuria palustris</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.435</span>)</span></span>
<span><span class="co">#&gt; <span style="color: #B2B2B2;">-------------------------------------------------------------------------------</span></span></span>
<span><span class="co">#&gt; <span style="color: #0000BB;">"S. aureus"</span> -&gt; <span style="font-weight: bold; font-style: italic;">Staphylococcus aureus</span> (B_STPHY_AURS, <span style="color: #080808; background-color: #FFFF87;">0.690</span>)</span></span>
<span><span class="co">#&gt; Also matched: <span style="font-style: italic;">Staphylococcus aureus aureus</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.643</span>), <span style="font-style: italic;">Staphylococcus argenteus</span></span></span>
<span><span class="co">#&gt; <span style="color: #0000BB;">(</span><span style="color: #080808; background-color: #FFD787;">0.625</span>), <span style="font-style: italic;">Staphylococcus aureus anaerobius</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.625</span>), <span style="font-style: italic;">Staphylococcus auricularis</span></span></span>
<span><span class="co">#&gt; <span style="color: #0000BB;">(</span><span style="color: #080808; background-color: #FFD787;">0.615</span>), <span style="font-style: italic;">Salmonella</span> Aurelianis<span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.595</span>), <span style="font-style: italic;">Salmonella</span> Aarhus<span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.588</span>), <span style="font-style: italic;">Salmonella</span></span></span>
<span><span class="co">#&gt; Amounderness<span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.587</span>), <span style="font-style: italic;">Staphylococcus argensis</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.587</span>), <span style="font-style: italic;">Streptococcus australis</span></span></span>
<span><span class="co">#&gt; <span style="color: #0000BB;">(</span><span style="color: #080808; background-color: #FFD787;">0.587</span>), and <span style="font-style: italic;">Salmonella choleraesuis arizonae</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.562</span>)</span></span>
<span><span class="co">#&gt; <span style="color: #0000BB;">(</span><span style="color: #080808; background-color: #FFD787;">0.625</span>), <span style="font-style: italic;">Staphylococcus aureus anaerobius</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.625</span>), <span style="font-style: italic;">Streptomyces aureus</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.618</span>),</span></span>
<span><span class="co">#&gt; <span style="font-style: italic;">Staphylococcus auricularis</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.615</span>), <span style="font-style: italic;">Streptomyces azureus</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.609</span>), <span style="font-style: italic;">Salmonella</span></span></span>
<span><span class="co">#&gt; Aurelianis<span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.595</span>), <span style="font-style: italic;">Salmonella</span> Aarhus<span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.588</span>), <span style="font-style: italic;">Salmonella</span> Amounderness<span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.587</span>),</span></span>
<span><span class="co">#&gt; and <span style="font-style: italic;">Staphylococcus argensis</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.587</span>)</span></span>
<span><span class="co">#&gt; <span style="color: #B2B2B2;">-------------------------------------------------------------------------------</span></span></span>
<span><span class="co">#&gt; <span style="color: #0000BB;">"S. pneumoniae"</span> -&gt; <span style="font-weight: bold; font-style: italic;">Streptococcus pneumoniae</span> (B_STRPT_PNMN, <span style="color: #080808; background-color: #5FD7AF;">0.750</span>)</span></span>
<span><span class="co">#&gt; Also matched: <span style="font-style: italic;">Streptococcus pseudopneumoniae</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFFF87;">0.700</span>), <span style="font-style: italic;">Streptococcus phocae</span></span></span>
<span><span class="co">#&gt; <span style="font-style: italic;">salmonis</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.552</span>), <span style="font-style: italic;">Serratia proteamaculans quinovora</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.545</span>), <span style="font-style: italic;">Streptococcus</span></span></span>
<span><span class="co">#&gt; <span style="font-style: italic;">pseudoporcinus</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.536</span>), <span style="font-style: italic;">Staphylococcus piscifermentans</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.533</span>), <span style="font-style: italic;">Staphylococcus</span></span></span>
<span><span class="co">#&gt; <span style="font-style: italic;">pseudintermedius</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.532</span>), <span style="font-style: italic;">Serratia proteamaculans proteamaculans</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.526</span>),</span></span>
<span><span class="co">#&gt; <span style="font-style: italic;">Streptococcus gallolyticus pasteurianus</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.526</span>), <span style="font-style: italic;">Salmonella</span> Portanigra<span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.524</span>),</span></span>
<span><span class="co">#&gt; and <span style="font-style: italic;">Streptococcus periodonticum</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.519</span>)</span></span>
<span><span class="co">#&gt; Also matched: <span style="font-style: italic;">Streptococcus parapneumoniae</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFFF87;">0.714</span>), <span style="font-style: italic;">Streptococcus</span></span></span>
<span><span class="co">#&gt; <span style="font-style: italic;">pseudopneumoniae</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFFF87;">0.700</span>), <span style="font-style: italic;">Serratia proteamaculans quinivorans</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.557</span>),</span></span>
<span><span class="co">#&gt; <span style="font-style: italic;">Streptococcus phocae salmonis</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FFD787;">0.552</span>), <span style="font-style: italic;">Serratia proteamaculans quinovora</span></span></span>
<span><span class="co">#&gt; <span style="color: #0000BB;">(</span><span style="color: #080808; background-color: #FF5F5F;">0.545</span>), <span style="font-style: italic;">Sphingomonas piscinae</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.538</span>), <span style="font-style: italic;">Streptococcus pseudoporcinus</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.536</span>),</span></span>
<span><span class="co">#&gt; <span style="font-style: italic;">Staphylococcus piscifermentans</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.533</span>), <span style="font-style: italic;">Staphylococcus pseudintermedius</span></span></span>
<span><span class="co">#&gt; <span style="color: #0000BB;">(</span><span style="color: #080808; background-color: #FF5F5F;">0.532</span>), and <span style="font-style: italic;">Serratia proteamaculans proteamaculans</span><span style="color: #0000BB;"> (</span><span style="color: #080808; background-color: #FF5F5F;">0.526</span>)</span></span>
<span><span class="co">#&gt; <span style="color: #00BBBB;"></span> Only the first 10 other matches of each record are shown. Run ``</span></span>
<span><span class="co">#&gt; `print(mo_uncertainties(), n = ...)` `` to view more entries, or save</span></span>
<span><span class="co">#&gt; `mo_uncertainties()` to an object.</span></span></code></pre></div>
@@ -633,36 +632,46 @@ in:</p>
<div class="section level3">
<h3 id="generate-antibiograms">Generate antibiograms<a class="anchor" aria-label="anchor" href="#generate-antibiograms"></a>
</h3>
<p>Since AMR v2.0 (March 2023), it is very easy to create different
types of antibiograms, with support for 20 different languages.</p>
<p>There are four antibiogram types, as proposed by Klinker <em>et
<p>The <code>AMR</code> package supports 28 different languages for
antibiograms and provides four types, as proposed by Klinker <em>et
al.</em> (2021, <a href="https://doi.org/10.1177/20499361211011373" class="external-link">DOI
10.1177/20499361211011373</a>), and they are all supported by the new
<code><a href="../reference/antibiogram.html">antibiogram()</a></code> function:</p>
10.1177/20499361211011373</a>):</p>
<ol style="list-style-type: decimal">
<li>
<strong>Traditional Antibiogram (TA)</strong> e.g, for the
susceptibility of <em>Pseudomonas aeruginosa</em> to
piperacillin/tazobactam (TZP)</li>
<strong>Traditional Antibiogram (TA)</strong> susceptibility of a
species to individual antibiotics</li>
<li>
<strong>Combination Antibiogram (CA)</strong> e.g, for the
sdditional susceptibility of <em>Pseudomonas aeruginosa</em> to TZP +
tobramycin versus TZP alone</li>
<strong>Combination Antibiogram (CA)</strong> susceptibility of a
species to combination regimens</li>
<li>
<strong>Syndromic Antibiogram (SA)</strong> e.g, for the
susceptibility of <em>Pseudomonas aeruginosa</em> to TZP among
respiratory specimens (obtained among ICU patients only)</li>
<strong>Syndromic Antibiogram (SA)</strong> susceptibility of a
species, stratified by clinical syndrome or setting</li>
<li>
<strong>Weighted-Incidence Syndromic Combination Antibiogram
(WISCA)</strong> e.g, for the susceptibility of <em>Pseudomonas
aeruginosa</em> to TZP among respiratory specimens (obtained among ICU
patients only) for male patients age &gt;=65 years with heart
failure</li>
(WISCA)</strong> estimated empirical coverage of a <em>regimen</em>
for a <em>syndrome</em>, weighted by pathogen incidence and with
quantified uncertainty</li>
</ol>
<p>In this section, we show how to use the <code><a href="../reference/antibiogram.html">antibiogram()</a></code>
function to create any of the above antibiogram types. For starters,
this is what the included <code>example_isolates</code> data set looks
like:</p>
<p><strong>If your goal is to guide empirical therapy, WISCA should be
your default.</strong> The reason is simple: when you start empirical
treatment, you do not know which pathogen is causing the infection. Your
next patient will not present with a species label attached to them.
What matters is the probability that the <em>regimen</em> you choose
will cover <em>whatever pathogen turns out to be the cause</em>, given
the local epidemiology of the syndrome. Traditional antibiograms do not
answer that question. They fragment information by species, ignore how
frequently each species causes the syndrome, do not evaluate combination
regimens, and provide no measure of uncertainty. WISCA addresses all of
these limitations using a Bayesian framework (Hebert <em>et al.</em>,
2012; Bielicki <em>et al.</em>, 2016). See the <a href="https://amr-for-r.org/articles/WISCA.html">WISCA vignette</a> for
the full explanation.</p>
<p>Traditional, combination, and syndromic antibiograms remain useful
for <strong>surveillance</strong> purposes, i.e., tracking resistance
trends per species over time. But if you care about clinical impact,
about choosing the right empirical regimen for your patient, use
WISCA.</p>
<p>For starters, this is what the included <code>example_isolates</code>
data set looks like:</p>
<div class="sourceCode" id="cb15"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">example_isolates</span></span>
<span><span class="co">#&gt; <span style="color: #949494;"># A tibble: 2,000 × 46</span></span></span>
@@ -686,13 +695,162 @@ like:</p>
<span><span class="co">#&gt; <span style="color: #949494;"># TCY &lt;sir&gt;, TGC &lt;sir&gt;, DOX &lt;sir&gt;, ERY &lt;sir&gt;, CLI &lt;sir&gt;, AZM &lt;sir&gt;,</span></span></span>
<span><span class="co">#&gt; <span style="color: #949494;"># IPM &lt;sir&gt;, MEM &lt;sir&gt;, MTR &lt;sir&gt;, CHL &lt;sir&gt;, COL &lt;sir&gt;, MUP &lt;sir&gt;, …</span></span></span></code></pre></div>
<div class="section level4">
<h4 id="wisca-recommended-for-empirical-therapy-guidance">WISCA (recommended for empirical therapy guidance)<a class="anchor" aria-label="anchor" href="#wisca-recommended-for-empirical-therapy-guidance"></a>
</h4>
<p>Use the <code><a href="../reference/antibiogram.html">wisca()</a></code> function, or equivalently
<code>antibiogram(..., wisca = TRUE)</code>. WISCA produces a single
coverage estimate per regimen for the entire syndrome, weighted by
pathogen incidence, with a 95% credible interval from Bayesian Monte
Carlo simulation:</p>
<div class="sourceCode" id="cb16"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">wisca_result</span> <span class="op">&lt;-</span> <span class="va">example_isolates</span> <span class="op"><a href="https://magrittr.tidyverse.org/reference/pipe.html" class="external-link">%&gt;%</a></span></span>
<span> <span class="fu"><a href="../reference/antibiogram.html">wisca</a></span><span class="op">(</span></span>
<span> antimicrobials <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"TZP"</span>, <span class="st">"TZP+TOB"</span>, <span class="st">"TZP+GEN"</span><span class="op">)</span>,</span>
<span> minimum <span class="op">=</span> <span class="fl">10</span></span>
<span> <span class="op">)</span> <span class="co"># Recommended threshold: ≥30</span></span>
<span><span class="va">wisca_result</span></span></code></pre></div>
<table style="width:100%;" class="table">
<colgroup>
<col width="24%">
<col width="37%">
<col width="37%">
</colgroup>
<thead><tr class="header">
<th align="left">Piperacillin/tazobactam</th>
<th align="left">Piperacillin/tazobactam + Gentamicin</th>
<th align="left">Piperacillin/tazobactam + Tobramycin</th>
</tr></thead>
<tbody><tr class="odd">
<td align="left">70.2% (64.8-75.2%)</td>
<td align="left">93.6% (92.2-95%)</td>
<td align="left">89.9% (87-92.3%)</td>
</tr></tbody>
</table>
<p>The output tells you: <em>“given the species distribution in your
data, there is an estimated X% probability that this regimen covers the
infection, with 95% credible interval [lower, upper]”</em>. That is the
clinically relevant question.</p>
<p>For <strong>syndrome-specific</strong> or <strong>patient-specific
WISCA</strong>, use the <code>syndromic_group</code> argument or group
your data first. You can stratify by anything: ward, age group, risk
profile, acquisition type. The <code>syndromic_group</code> argument
accepts any column or expression:</p>
<div class="sourceCode" id="cb17"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">wisca_out</span> <span class="op">&lt;-</span> <span class="va">example_isolates</span> <span class="op"><a href="https://magrittr.tidyverse.org/reference/pipe.html" class="external-link">%&gt;%</a></span></span>
<span> <span class="fu"><a href="../reference/top_n_microorganisms.html">top_n_microorganisms</a></span><span class="op">(</span>n <span class="op">=</span> <span class="fl">10</span><span class="op">)</span> <span class="op"><a href="https://magrittr.tidyverse.org/reference/pipe.html" class="external-link">%&gt;%</a></span></span>
<span> <span class="fu"><a href="https://dplyr.tidyverse.org/reference/group_by.html" class="external-link">group_by</a></span><span class="op">(</span></span>
<span> age_group <span class="op">=</span> <span class="fu"><a href="../reference/age_groups.html">age_groups</a></span><span class="op">(</span><span class="va">age</span>, <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="fl">25</span>, <span class="fl">50</span>, <span class="fl">75</span><span class="op">)</span><span class="op">)</span>,</span>
<span> <span class="va">gender</span></span>
<span> <span class="op">)</span> <span class="op"><a href="https://magrittr.tidyverse.org/reference/pipe.html" class="external-link">%&gt;%</a></span></span>
<span> <span class="fu"><a href="../reference/antibiogram.html">wisca</a></span><span class="op">(</span>antimicrobials <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"TZP"</span>, <span class="st">"TZP+TOB"</span>, <span class="st">"TZP+GEN"</span><span class="op">)</span><span class="op">)</span></span>
<span></span>
<span><span class="va">wisca_out</span></span></code></pre></div>
<table class="table">
<colgroup>
<col width="8%">
<col width="6%">
<col width="20%">
<col width="32%">
<col width="32%">
</colgroup>
<thead><tr class="header">
<th align="left">age_group</th>
<th align="left">gender</th>
<th align="left">Piperacillin/tazobactam</th>
<th align="left">Piperacillin/tazobactam + Gentamicin</th>
<th align="left">Piperacillin/tazobactam + Tobramycin</th>
</tr></thead>
<tbody>
<tr class="odd">
<td align="left">0-24</td>
<td align="left">F</td>
<td align="left">56.8% (29.9-81.3%)</td>
<td align="left">70.7% (45.2-89%)</td>
<td align="left">65.9% (42.3-86.6%)</td>
</tr>
<tr class="even">
<td align="left">0-24</td>
<td align="left">M</td>
<td align="left">59.5% (31.2-85.5%)</td>
<td align="left">76.1% (56.5-92%)</td>
<td align="left">59.6% (31.7-85.1%)</td>
</tr>
<tr class="odd">
<td align="left">25-49</td>
<td align="left">F</td>
<td align="left">67.7% (43.9-89.7%)</td>
<td align="left">93.8% (87.4-98.1%)</td>
<td align="left">87% (70.1-97%)</td>
</tr>
<tr class="even">
<td align="left">25-49</td>
<td align="left">M</td>
<td align="left">56.9% (26.6-86.2%)</td>
<td align="left">91% (82-97.2%)</td>
<td align="left">76.6% (51.4-93.5%)</td>
</tr>
<tr class="odd">
<td align="left">50-74</td>
<td align="left">F</td>
<td align="left">68% (54.1-81.8%)</td>
<td align="left">96.9% (94.6-98.5%)</td>
<td align="left">90.2% (82-96.2%)</td>
</tr>
<tr class="even">
<td align="left">50-74</td>
<td align="left">M</td>
<td align="left">67% (56-78.5%)</td>
<td align="left">96.7% (94.1-98.5%)</td>
<td align="left">86.7% (77.3-94.4%)</td>
</tr>
<tr class="odd">
<td align="left">75+</td>
<td align="left">F</td>
<td align="left">73.1% (61.8-84.1%)</td>
<td align="left">97.7% (95.9-99%)</td>
<td align="left">92.8% (85.7-97.2%)</td>
</tr>
<tr class="even">
<td align="left">75+</td>
<td align="left">M</td>
<td align="left">74% (63.6-82.6%)</td>
<td align="left">97.9% (96-99%)</td>
<td align="left">94.7% (89.3-97.9%)</td>
</tr>
</tbody>
</table>
<p>Keep in mind that more granular stratification produces more relevant
estimates for each subgroup, but with wider credible intervals due to
smaller sample sizes. There is always a trade-off between granularity
and precision. If local numbers are small, consider pooling data from
multiple sites (Bielicki <em>et al.</em>, 2016).</p>
<p>For reliable WISCA results, ensure your data includes <strong>only
first isolates</strong> (use <code><a href="../reference/first_isolate.html">first_isolate()</a></code>) and consider
filtering for <strong>the top <em>n</em> species</strong> (use
<code><a href="../reference/top_n_microorganisms.html">top_n_microorganisms()</a></code>), since rare contaminants can
distort coverage estimates.</p>
<p>After creating the WISCA model, assessments can be done on the
distributions of the Monte Carlo simulations that WISCA carried out:</p>
<div class="sourceCode" id="cb18"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="../reference/antibiogram.html">wisca_plot</a></span><span class="op">(</span><span class="va">wisca_out</span><span class="op">)</span></span></code></pre></div>
<p><img src="AMR_files/figure-html/wisca_plots-1.png" class="r-plt" alt="" width="720"></p>
<div class="sourceCode" id="cb19"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="../reference/antibiogram.html">wisca_plot</a></span><span class="op">(</span><span class="va">wisca_out</span>, wisca_plot_type <span class="op">=</span> <span class="st">"posterior_coverage"</span><span class="op">)</span></span></code></pre></div>
<p><img src="AMR_files/figure-html/wisca_plots-2.png" class="r-plt" alt="" width="720"></p>
<div class="sourceCode" id="cb20"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span></span>
<span><span class="co"># a ggplot2 extension for WISCAs and other antibiograms:</span></span>
<span><span class="fu">ggplot2</span><span class="fu">::</span><span class="fu"><a href="https://ggplot2.tidyverse.org/reference/autoplot.html" class="external-link">autoplot</a></span><span class="op">(</span><span class="va">wisca_out</span><span class="op">)</span></span></code></pre></div>
<p><img src="AMR_files/figure-html/wisca_plots-3.png" class="r-plt" alt="" width="720"></p>
</div>
<div class="section level4">
<h4 id="traditional-antibiogram">Traditional Antibiogram<a class="anchor" aria-label="anchor" href="#traditional-antibiogram"></a>
</h4>
<p>To create a traditional antibiogram, simply state which antibiotics
should be used. The <code>antibiotics</code> argument in the
<code><a href="../reference/antibiogram.html">antibiogram()</a></code> function supports any (combination) of the
previously mentioned antibiotic class selectors:</p>
<div class="sourceCode" id="cb16"><pre class="downlit sourceCode r">
<p>If you need per-species susceptibility rates, e.g., for AMR
surveillance reports, the traditional antibiogram remains the right
tool. It reports the proportion of susceptible isolates per species per
antibiotic:</p>
<div class="sourceCode" id="cb21"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="../reference/antibiogram.html">antibiogram</a></span><span class="op">(</span><span class="va">example_isolates</span>,</span>
<span> antibiotics <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="fu"><a href="../reference/antimicrobial_selectors.html">aminoglycosides</a></span><span class="op">(</span><span class="op">)</span>, <span class="fu"><a href="../reference/antimicrobial_selectors.html">carbapenems</a></span><span class="op">(</span><span class="op">)</span><span class="op">)</span></span>
<span><span class="op">)</span></span>
@@ -821,7 +979,7 @@ Greek, Hindi, Indonesian, Italian, Japanese, Korean, Norwegian, Polish,
Portuguese, Romanian, Russian, Spanish, Swahili, Swedish, Turkish,
Ukrainian, Urdu, or Vietnamese. In this next example, we force the
language to be Spanish using the <code>language</code> argument:</p>
<div class="sourceCode" id="cb17"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb22"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="../reference/antibiogram.html">antibiogram</a></span><span class="op">(</span><span class="va">example_isolates</span>,</span>
<span> mo_transform <span class="op">=</span> <span class="st">"gramstain"</span>,</span>
<span> antibiotics <span class="op">=</span> <span class="fu"><a href="../reference/antimicrobial_selectors.html">aminoglycosides</a></span><span class="op">(</span><span class="op">)</span>,</span>
@@ -864,11 +1022,13 @@ language to be Spanish using the <code>language</code> argument:</p>
</table>
</div>
<div class="section level4">
<h4 id="combined-antibiogram">Combined Antibiogram<a class="anchor" aria-label="anchor" href="#combined-antibiogram"></a>
<h4 id="combination-antibiogram">Combination Antibiogram<a class="anchor" aria-label="anchor" href="#combination-antibiogram"></a>
</h4>
<p>To create a combined antibiogram, use antibiotic codes or names with
a plus <code>+</code> character like this:</p>
<div class="sourceCode" id="cb18"><pre class="downlit sourceCode r">
<p>A combination antibiogram shows how much additional susceptibility a
second agent adds for a given species. This is useful for surveillance
of combination regimens, but note that it is still species-stratified
and does not account for pathogen incidence in the syndrome:</p>
<div class="sourceCode" id="cb23"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">combined_ab</span> <span class="op">&lt;-</span> <span class="fu"><a href="../reference/antibiogram.html">antibiogram</a></span><span class="op">(</span><span class="va">example_isolates</span>,</span>
<span> antibiotics <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"TZP"</span>, <span class="st">"TZP+TOB"</span>, <span class="st">"TZP+GEN"</span><span class="op">)</span>,</span>
<span> ab_transform <span class="op">=</span> <span class="cn">NULL</span></span>
@@ -948,10 +1108,13 @@ a plus <code>+</code> character like this:</p>
<div class="section level4">
<h4 id="syndromic-antibiogram">Syndromic Antibiogram<a class="anchor" aria-label="anchor" href="#syndromic-antibiogram"></a>
</h4>
<p>To create a syndromic antibiogram, the <code>syndromic_group</code>
argument must be used. This can be any column in the data, or e.g. an
<code><a href="https://rdrr.io/r/base/ifelse.html" class="external-link">ifelse()</a></code> with calculations based on certain columns:</p>
<div class="sourceCode" id="cb19"><pre class="downlit sourceCode r">
<p>A syndromic antibiogram stratifies per-species susceptibility by
clinical context (ward, specimen type, etc.). It adds clinical context
to the traditional antibiogram but is still species-level, without
incidence weighting or uncertainty quantification. For surveillance by
setting this is fine; for empirical therapy guidance, WISCA is
preferred:</p>
<div class="sourceCode" id="cb24"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="../reference/antibiogram.html">antibiogram</a></span><span class="op">(</span><span class="va">example_isolates</span>,</span>
<span> antibiotics <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="fu"><a href="../reference/antimicrobial_selectors.html">aminoglycosides</a></span><span class="op">(</span><span class="op">)</span>, <span class="fu"><a href="../reference/antimicrobial_selectors.html">carbapenems</a></span><span class="op">(</span><span class="op">)</span><span class="op">)</span>,</span>
<span> syndromic_group <span class="op">=</span> <span class="st">"ward"</span></span>
@@ -1125,511 +1288,14 @@ argument must be used. This can be any column in the data, or e.g. an
</table>
</div>
<div class="section level4">
<h4 id="weighted-incidence-syndromic-combination-antibiogram-wisca">Weighted-Incidence Syndromic Combination Antibiogram (WISCA)<a class="anchor" aria-label="anchor" href="#weighted-incidence-syndromic-combination-antibiogram-wisca"></a>
</h4>
<p>To create a <strong>Weighted-Incidence Syndromic Combination
Antibiogram (WISCA)</strong>, simply set <code>wisca = TRUE</code> in
the <code><a href="../reference/antibiogram.html">antibiogram()</a></code> function, or use the dedicated
<code><a href="../reference/antibiogram.html">wisca()</a></code> function. Unlike traditional antibiograms, WISCA
provides syndrome-based susceptibility estimates, weighted by pathogen
incidence and antimicrobial susceptibility patterns.</p>
<div class="sourceCode" id="cb20"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">example_isolates</span> <span class="op"><a href="https://magrittr.tidyverse.org/reference/pipe.html" class="external-link">%&gt;%</a></span></span>
<span> <span class="fu"><a href="../reference/antibiogram.html">wisca</a></span><span class="op">(</span></span>
<span> antibiotics <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"TZP"</span>, <span class="st">"TZP+TOB"</span>, <span class="st">"TZP+GEN"</span><span class="op">)</span>,</span>
<span> minimum <span class="op">=</span> <span class="fl">10</span></span>
<span> <span class="op">)</span> <span class="co"># Recommended threshold: ≥30</span></span></code></pre></div>
<table style="width:100%;" class="table">
<colgroup>
<col width="24%">
<col width="37%">
<col width="37%">
</colgroup>
<thead><tr class="header">
<th align="left">Piperacillin/tazobactam</th>
<th align="left">Piperacillin/tazobactam + Gentamicin</th>
<th align="left">Piperacillin/tazobactam + Tobramycin</th>
</tr></thead>
<tbody><tr class="odd">
<td align="left">69.4% (64.3-74.3%)</td>
<td align="left">92.6% (91.1-93.9%)</td>
<td align="left">88.7% (85.8-91.2%)</td>
</tr></tbody>
</table>
<p>WISCA uses a <strong>Bayesian decision model</strong> to integrate
data from multiple pathogens, improving empirical therapy guidance,
especially for low-incidence infections. It is
<strong>pathogen-agnostic</strong>, meaning results are syndrome-based
rather than stratified by microorganism.</p>
<p>For reliable results, ensure your data includes <strong>only first
isolates</strong> (use <code><a href="../reference/first_isolate.html">first_isolate()</a></code>) and consider
filtering for <strong>the top <em>n</em> species</strong> (use
<code><a href="../reference/top_n_microorganisms.html">top_n_microorganisms()</a></code>), as WISCA outcomes are most
meaningful when based on robust incidence estimates.</p>
<p>For <strong>patient- or syndrome-specific WISCA</strong>, run the
function on a grouped <code>tibble</code>, i.e., using
<code><a href="https://dplyr.tidyverse.org/reference/group_by.html" class="external-link">group_by()</a></code> first:</p>
<div class="sourceCode" id="cb21"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">example_isolates</span> <span class="op"><a href="https://magrittr.tidyverse.org/reference/pipe.html" class="external-link">%&gt;%</a></span></span>
<span> <span class="fu"><a href="../reference/top_n_microorganisms.html">top_n_microorganisms</a></span><span class="op">(</span>n <span class="op">=</span> <span class="fl">10</span><span class="op">)</span> <span class="op"><a href="https://magrittr.tidyverse.org/reference/pipe.html" class="external-link">%&gt;%</a></span></span>
<span> <span class="fu"><a href="https://dplyr.tidyverse.org/reference/group_by.html" class="external-link">group_by</a></span><span class="op">(</span></span>
<span> age_group <span class="op">=</span> <span class="fu"><a href="../reference/age_groups.html">age_groups</a></span><span class="op">(</span><span class="va">age</span>, <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="fl">25</span>, <span class="fl">50</span>, <span class="fl">75</span><span class="op">)</span><span class="op">)</span>,</span>
<span> <span class="va">gender</span></span>
<span> <span class="op">)</span> <span class="op"><a href="https://magrittr.tidyverse.org/reference/pipe.html" class="external-link">%&gt;%</a></span></span>
<span> <span class="fu"><a href="../reference/antibiogram.html">wisca</a></span><span class="op">(</span>antibiotics <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"TZP"</span>, <span class="st">"TZP+TOB"</span>, <span class="st">"TZP+GEN"</span><span class="op">)</span><span class="op">)</span></span></code></pre></div>
<table style="width:100%;" class="table">
<colgroup>
<col width="1%">
<col width="0%">
<col width="2%">
<col width="2%">
<col width="3%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="2%">
<col width="3%">
<col width="2%">
</colgroup>
<thead><tr class="header">
<th align="left">age_group</th>
<th align="left">gender</th>
<th align="left">Amikacin</th>
<th align="left">Amoxicillin</th>
<th align="left">Amoxicillin/clavulanic acid</th>
<th align="left">Ampicillin</th>
<th align="left">Azithromycin</th>
<th align="left">Benzylpenicillin</th>
<th align="left">Cefazolin</th>
<th align="left">Cefepime</th>
<th align="left">Cefotaxime</th>
<th align="left">Cefoxitin</th>
<th align="left">Ceftazidime</th>
<th align="left">Ceftriaxone</th>
<th align="left">Cefuroxime</th>
<th align="left">Chloramphenicol</th>
<th align="left">Ciprofloxacin</th>
<th align="left">Clindamycin</th>
<th align="left">Colistin</th>
<th align="left">Doxycycline</th>
<th align="left">Erythromycin</th>
<th align="left">Flucloxacillin</th>
<th align="left">Fosfomycin</th>
<th align="left">Gentamicin</th>
<th align="left">Imipenem</th>
<th align="left">Kanamycin</th>
<th align="left">Linezolid</th>
<th align="left">Meropenem</th>
<th align="left">Metronidazole</th>
<th align="left">Moxifloxacin</th>
<th align="left">Mupirocin</th>
<th align="left">Nitrofurantoin</th>
<th align="left">Oxacillin</th>
<th align="left">Piperacillin/tazobactam</th>
<th align="left">Rifampicin</th>
<th align="left">Teicoplanin</th>
<th align="left">Tetracycline</th>
<th align="left">Tigecycline</th>
<th align="left">Tobramycin</th>
<th align="left">Trimethoprim</th>
<th align="left">Trimethoprim/sulfamethoxazole</th>
<th align="left">Vancomycin</th>
</tr></thead>
<tbody>
<tr class="odd">
<td align="left">0-24</td>
<td align="left">F</td>
<td align="left">45.4% (15.4-79%)</td>
<td align="left">50.1% (20.5-77.6%)</td>
<td align="left">69% (44.5-88.5%)</td>
<td align="left">50.4% (20.6-77.3%)</td>
<td align="left">41.9% (18.1-65.6%)</td>
<td align="left">36.1% (12.3-64.3%)</td>
<td align="left">NA</td>
<td align="left">NA</td>
<td align="left">63.9% (34.6-87.6%)</td>
<td align="left">56.7% (25.9-85.8%)</td>
<td align="left">51.5% (25.6-74.4%)</td>
<td align="left">63.4% (32-88.1%)</td>
<td align="left">70.4% (45.4-89.1%)</td>
<td align="left">54% (22.3-85.3%)</td>
<td align="left">69.8% (45.9-88.9%)</td>
<td align="left">39.3% (17.7-64.6%)</td>
<td align="left">45.3% (18.1-75.9%)</td>
<td align="left">50.1% (21.5-80.5%)</td>
<td align="left">41.7% (19.1-67.6%)</td>
<td align="left">55.8% (23.7-83.3%)</td>
<td align="left">63.5% (32.6-89.4%)</td>
<td align="left">69.3% (44.6-88.3%)</td>
<td align="left">63.6% (36.1-88.2%)</td>
<td align="left">45.5% (15.7-77.7%)</td>
<td align="left">43.3% (17.8-71.2%)</td>
<td align="left">55.9% (24.3-82.2%)</td>
<td align="left">NA</td>
<td align="left">NA</td>
<td align="left">56.5% (24.3-85%)</td>
<td align="left">56.8% (30.9-82.3%)</td>
<td align="left">50.5% (19.4-80.8%)</td>
<td align="left">56.9% (26.7-85%)</td>
<td align="left">42.3% (18.3-68.8%)</td>
<td align="left">40.2% (17.6-67.7%)</td>
<td align="left">49.8% (20-79.3%)</td>
<td align="left">56.1% (22-85.4%)</td>
<td align="left">64.5% (39.6-85.5%)</td>
<td align="left">69.7% (42.3-90.4%)</td>
<td align="left">75.4% (52.1-91.7%)</td>
<td align="left">48.5% (24.3-72.6%)</td>
</tr>
<tr class="even">
<td align="left">0-24</td>
<td align="left">M</td>
<td align="left">41.9% (15.2-72.5%)</td>
<td align="left">49.4% (23.3-75.5%)</td>
<td align="left">73.8% (51.8-90.1%)</td>
<td align="left">49.3% (22.7-76%)</td>
<td align="left">63.4% (40.7-83.5%)</td>
<td align="left">41.8% (20.4-64.8%)</td>
<td align="left">56.8% (25.2-83.5%)</td>
<td align="left">58.2% (29.1-85.8%)</td>
<td align="left">59.7% (29.1-87.4%)</td>
<td align="left">59.3% (29.1-86.6%)</td>
<td align="left">24.9% (8.9-47.3%)</td>
<td align="left">58.5% (28-86.5%)</td>
<td align="left">72.1% (47.9-90.5%)</td>
<td align="left">NA</td>
<td align="left">77.2% (53-93.2%)</td>
<td align="left">61.6% (36.2-83.6%)</td>
<td align="left">25.5% (8.7-46.1%)</td>
<td align="left">69.4% (44.6-89.4%)</td>
<td align="left">63.4% (41.8-82.7%)</td>
<td align="left">64% (37.6-85.6%)</td>
<td align="left">NA</td>
<td align="left">63.5% (40.9-83.1%)</td>
<td align="left">58.7% (27.6-86.5%)</td>
<td align="left">41.8% (13.6-71.2%)</td>
<td align="left">48.3% (17.9-78%)</td>
<td align="left">59.2% (27.4-86.4%)</td>
<td align="left">NA</td>
<td align="left">NA</td>
<td align="left">NA</td>
<td align="left">53% (21.3-83.7%)</td>
<td align="left">57.2% (24.6-84.6%)</td>
<td align="left">59.9% (29.7-85.6%)</td>
<td align="left">48.2% (16.1-80.4%)</td>
<td align="left">48.4% (17.4-79.8%)</td>
<td align="left">68% (43.5-87.3%)</td>
<td align="left">65.7% (36-89.2%)</td>
<td align="left">44.3% (17.2-73.4%)</td>
<td align="left">69.4% (46.9-87.8%)</td>
<td align="left">74% (50.8-90.9%)</td>
<td align="left">75.3% (52.4-92.2%)</td>
</tr>
<tr class="odd">
<td align="left">25-49</td>
<td align="left">F</td>
<td align="left">46.8% (26.7-65.6%)</td>
<td align="left">39% (26.3-52.9%)</td>
<td align="left">73.8% (63.5-82.6%)</td>
<td align="left">39.3% (27.2-54.4%)</td>
<td align="left">54.8% (44.9-64.8%)</td>
<td align="left">36.5% (26.3-47.1%)</td>
<td align="left">66.4% (46.1-85%)</td>
<td align="left">69.2% (49.1-86.2%)</td>
<td align="left">70.2% (50.5-86.2%)</td>
<td align="left">68.1% (48.6-85.4%)</td>
<td align="left">27.9% (19.2-37.9%)</td>
<td align="left">70.1% (50.5-87.1%)</td>
<td align="left">71.4% (61.7-80.4%)</td>
<td align="left">58.2% (35.3-79.9%)</td>
<td align="left">85.5% (74.1-94.2%)</td>
<td align="left">67.1% (55.8-77.4%)</td>
<td align="left">25.8% (17-36%)</td>
<td align="left">75.5% (61.2-88.2%)</td>
<td align="left">54.9% (44.8-65.6%)</td>
<td align="left">55.2% (37.8-72.5%)</td>
<td align="left">60.9% (38.3-81.8%)</td>
<td align="left">75.2% (65.7-83.5%)</td>
<td align="left">69.9% (50.1-86.6%)</td>
<td align="left">37.5% (17.7-57.9%)</td>
<td align="left">50.7% (30.8-68.7%)</td>
<td align="left">69.4% (48.6-86.7%)</td>
<td align="left">NA</td>
<td align="left">56.9% (36.2-77.7%)</td>
<td align="left">53.3% (30.9-75.6%)</td>
<td align="left">60.1% (38.1-81.8%)</td>
<td align="left">64.3% (43.2-83.6%)</td>
<td align="left">66% (45.7-85.2%)</td>
<td align="left">50.1% (30-69.6%)</td>
<td align="left">38.8% (19.6-58.9%)</td>
<td align="left">75.8% (61.6-88.1%)</td>
<td align="left">73.3% (56.6-89.5%)</td>
<td align="left">62.7% (47.6-77.1%)</td>
<td align="left">70.4% (58.7-80.2%)</td>
<td align="left">90% (82.9-95.4%)</td>
<td align="left">71.6% (61.7-80.4%)</td>
</tr>
<tr class="even">
<td align="left">25-49</td>
<td align="left">M</td>
<td align="left">49.8% (24.2-75.8%)</td>
<td align="left">16.5% (8.1-27.4%)</td>
<td align="left">72.4% (60.5-83.5%)</td>
<td align="left">16.6% (7.7-28.2%)</td>
<td align="left">55.9% (43.6-67.9%)</td>
<td align="left">24.9% (14.7-37.6%)</td>
<td align="left">60.3% (33.2-82.4%)</td>
<td align="left">55.3% (27.6-81.8%)</td>
<td align="left">55.9% (29.7-81.1%)</td>
<td align="left">56.2% (27.7-82.1%)</td>
<td align="left">22.2% (12.7-33.9%)</td>
<td align="left">55.6% (29.1-81.8%)</td>
<td align="left">73.7% (62.6-83.8%)</td>
<td align="left">52.9% (25.2-79.6%)</td>
<td align="left">67.1% (53-79.8%)</td>
<td align="left">57.8% (43.5-71.8%)</td>
<td align="left">22.3% (12.6-33.6%)</td>
<td align="left">73% (57.8-85.5%)</td>
<td align="left">55.8% (43-68.2%)</td>
<td align="left">66.5% (51.6-79.4%)</td>
<td align="left">63.1% (40.3-84.5%)</td>
<td align="left">83.9% (74.5-91.7%)</td>
<td align="left">56.4% (28.4-84%)</td>
<td align="left">45.4% (18.9-73.8%)</td>
<td align="left">59.4% (37.6-77.9%)</td>
<td align="left">56.3% (28.8-81.1%)</td>
<td align="left">NA</td>
<td align="left">52.8% (24.7-78.7%)</td>
<td align="left">64.2% (40.2-84.5%)</td>
<td align="left">62.9% (37.7-85.1%)</td>
<td align="left">60.5% (37.1-80.7%)</td>
<td align="left">55.8% (29.4-82.9%)</td>
<td align="left">65.4% (48.7-80.8%)</td>
<td align="left">54.5% (31.7-73.7%)</td>
<td align="left">72.8% (58.7-84.8%)</td>
<td align="left">84.8% (72.4-93.6%)</td>
<td align="left">66.7% (44.5-84.1%)</td>
<td align="left">71.4% (58.9-82.6%)</td>
<td align="left">86.6% (77.9-93.7%)</td>
<td align="left">77.1% (65.5-87.1%)</td>
</tr>
<tr class="odd">
<td align="left">50-74</td>
<td align="left">F</td>
<td align="left">44.8% (35.8-54.1%)</td>
<td align="left">30.1% (24.9-35.3%)</td>
<td align="left">74.1% (69.2-78.7%)</td>
<td align="left">30% (24.6-35.4%)</td>
<td align="left">41.9% (36.5-47.3%)</td>
<td align="left">23.5% (18.6-29%)</td>
<td align="left">73.1% (62-82.9%)</td>
<td align="left">76.6% (66.1-86%)</td>
<td align="left">74.8% (64.9-84.5%)</td>
<td align="left">74.6% (64.2-83.3%)</td>
<td align="left">37.5% (32.3-43.4%)</td>
<td align="left">74.8% (64.4-83.8%)</td>
<td align="left">74.5% (69.7-78.9%)</td>
<td align="left">61.2% (40.3-82.4%)</td>
<td align="left">79.4% (73-85%)</td>
<td align="left">44.9% (38.7-51%)</td>
<td align="left">37.8% (32.7-43.3%)</td>
<td align="left">63.8% (47.6-80.1%)</td>
<td align="left">41.7% (36.6-46.9%)</td>
<td align="left">58.1% (40-75.1%)</td>
<td align="left">65.2% (53.5-76.6%)</td>
<td align="left">78.7% (73.8-83.2%)</td>
<td align="left">80.6% (70.3-90%)</td>
<td align="left">28.1% (10.1-46.6%)</td>
<td align="left">53.2% (42.9-62.4%)</td>
<td align="left">79.3% (68.7-88.6%)</td>
<td align="left">NA</td>
<td align="left">49.5% (37.5-61.8%)</td>
<td align="left">67.8% (48.5-86%)</td>
<td align="left">75.1% (63.3-86.3%)</td>
<td align="left">56.6% (37.8-74.2%)</td>
<td align="left">67.7% (56.4-79.6%)</td>
<td align="left">50.6% (40.9-59.1%)</td>
<td align="left">41.3% (31.5-50.4%)</td>
<td align="left">59% (48.3-74.5%)</td>
<td align="left">87.7% (80.4-94.1%)</td>
<td align="left">62.2% (55.4-68.4%)</td>
<td align="left">55.5% (49.8-61.1%)</td>
<td align="left">68% (62.7-73.3%)</td>
<td align="left">60.9% (55.8-66.1%)</td>
</tr>
<tr class="even">
<td align="left">50-74</td>
<td align="left">M</td>
<td align="left">38.8% (30.6-48.6%)</td>
<td align="left">34.6% (29.1-40.3%)</td>
<td align="left">75% (70-79.5%)</td>
<td align="left">34.7% (29.2-40.5%)</td>
<td align="left">43.4% (37.8-48.5%)</td>
<td align="left">21% (16.5-26.4%)</td>
<td align="left">64.3% (54.1-74.1%)</td>
<td align="left">65.9% (56.5-75.4%)</td>
<td align="left">67.3% (58.3-77%)</td>
<td align="left">65.9% (56.1-75.9%)</td>
<td align="left">32.9% (27.6-38%)</td>
<td align="left">67.3% (57.4-76.8%)</td>
<td align="left">74.1% (69.2-78.8%)</td>
<td align="left">63.5% (42.4-83%)</td>
<td align="left">76.9% (71.6-81.9%)</td>
<td align="left">47.3% (40.9-53.8%)</td>
<td align="left">30.8% (26.1-36.1%)</td>
<td align="left">68.5% (53.5-81.9%)</td>
<td align="left">43.4% (37.7-48.8%)</td>
<td align="left">58.1% (42.4-73.2%)</td>
<td align="left">68.1% (53.5-82.2%)</td>
<td align="left">79.1% (74.4-83.1%)</td>
<td align="left">69% (59.7-78.3%)</td>
<td align="left">24.8% (9.5-40.5%)</td>
<td align="left">49.7% (35-63.2%)</td>
<td align="left">68.1% (58.1-77.6%)</td>
<td align="left">53.8% (32-75%)</td>
<td align="left">51.7% (36.1-67.3%)</td>
<td align="left">68.8% (51.1-85.7%)</td>
<td align="left">70.2% (54.7-85.3%)</td>
<td align="left">53.2% (37.5-68.7%)</td>
<td align="left">66.5% (55-76.8%)</td>
<td align="left">56.2% (45.8-65.4%)</td>
<td align="left">44% (30.3-57.5%)</td>
<td align="left">71.9% (58.2-82.2%)</td>
<td align="left">86.8% (77.3-93.6%)</td>
<td align="left">54.1% (46.9-61.4%)</td>
<td align="left">67.1% (61.5-72.5%)</td>
<td align="left">81% (76.4-85.2%)</td>
<td align="left">66.3% (61-71.2%)</td>
</tr>
<tr class="odd">
<td align="left">75+</td>
<td align="left">F</td>
<td align="left">51.4% (41.7-62%)</td>
<td align="left">30.9% (26.2-36.5%)</td>
<td align="left">74.4% (70.3-78.6%)</td>
<td align="left">30.9% (25.7-36.1%)</td>
<td align="left">36.6% (32-41.6%)</td>
<td align="left">20.7% (16.2-25.4%)</td>
<td align="left">73.6% (63.6-82.5%)</td>
<td align="left">79.1% (70.6-86.8%)</td>
<td align="left">78.6% (69.9-86.3%)</td>
<td align="left">76% (67.5-83.7%)</td>
<td align="left">43.1% (38.6-48%)</td>
<td align="left">78.9% (70.5-86.4%)</td>
<td align="left">77% (72.6-81.3%)</td>
<td align="left">63.2% (43.2-84.1%)</td>
<td align="left">77.7% (72.1-83.2%)</td>
<td align="left">41.2% (36-46.4%)</td>
<td align="left">39.1% (34.2-44.4%)</td>
<td align="left">63.7% (46.3-80.6%)</td>
<td align="left">36.5% (31.9-41.2%)</td>
<td align="left">57.1% (39.8-76%)</td>
<td align="left">65.8% (57.2-73.5%)</td>
<td align="left">84.6% (80.6-88%)</td>
<td align="left">81.9% (73.7-89.5%)</td>
<td align="left">33.3% (13.7-53%)</td>
<td align="left">49.6% (42.3-56.1%)</td>
<td align="left">81.3% (73.2-88.9%)</td>
<td align="left">55.9% (33.5-76.5%)</td>
<td align="left">41% (31.4-51.8%)</td>
<td align="left">63.7% (43.8-82.3%)</td>
<td align="left">77.8% (66-87.4%)</td>
<td align="left">56.3% (37.3-75.1%)</td>
<td align="left">71.8% (62-82.2%)</td>
<td align="left">48.3% (41.5-54.9%)</td>
<td align="left">43.3% (36.2-50.7%)</td>
<td align="left">63% (45.3-80.3%)</td>
<td align="left">85.9% (79.9-90.9%)</td>
<td align="left">70.4% (64.1-76.8%)</td>
<td align="left">60.4% (55.1-65.8%)</td>
<td align="left">77.6% (73.4-82.1%)</td>
<td align="left">55.3% (50.4-60.1%)</td>
</tr>
<tr class="even">
<td align="left">75+</td>
<td align="left">M</td>
<td align="left">52.6% (43.3-62.6%)</td>
<td align="left">33% (28.1-38%)</td>
<td align="left">77.4% (73.3-81.5%)</td>
<td align="left">33% (28.2-38.2%)</td>
<td align="left">36.8% (32.3-41.8%)</td>
<td align="left">17.9% (12.6-23.2%)</td>
<td align="left">64.4% (55.4-73.3%)</td>
<td align="left">71.2% (63.1-79.1%)</td>
<td align="left">67.9% (59.5-75.8%)</td>
<td align="left">65.3% (56.3-73.6%)</td>
<td align="left">42.6% (37.8-47.4%)</td>
<td align="left">68.2% (59.7-76.4%)</td>
<td align="left">75.1% (70.9-79.2%)</td>
<td align="left">64.1% (45.8-81.8%)</td>
<td align="left">77.6% (72-82.6%)</td>
<td align="left">41% (36-46.4%)</td>
<td align="left">39.9% (35.1-44.5%)</td>
<td align="left">62.1% (46-78.8%)</td>
<td align="left">36.9% (32.4-41.4%)</td>
<td align="left">59.7% (43.4-76.6%)</td>
<td align="left">64.7% (56.6-73.6%)</td>
<td align="left">83% (79.4-86.7%)</td>
<td align="left">75.7% (66.6-83%)</td>
<td align="left">31.6% (12.1-51.7%)</td>
<td align="left">51.8% (44.9-58%)</td>
<td align="left">74.2% (65.8-82.7%)</td>
<td align="left">NA</td>
<td align="left">52.2% (41.5-60.8%)</td>
<td align="left">69.3% (50.5-86.4%)</td>
<td align="left">72.2% (58.7-83.4%)</td>
<td align="left">59.3% (41.6-76.7%)</td>
<td align="left">73.1% (64.3-81.4%)</td>
<td align="left">49.9% (42.4-56.9%)</td>
<td align="left">46.3% (38.2-53.1%)</td>
<td align="left">59.7% (44.2-75.7%)</td>
<td align="left">86.8% (81.4-91.3%)</td>
<td align="left">72% (66.3-77.6%)</td>
<td align="left">55.8% (50.3-61.1%)</td>
<td align="left">73.3% (68.9-77.6%)</td>
<td align="left">57% (52.2-61.6%)</td>
</tr>
</tbody>
</table>
</div>
<div class="section level4">
<h4 id="plotting-antibiograms">Plotting antibiograms<a class="anchor" aria-label="anchor" href="#plotting-antibiograms"></a>
</h4>
<p>Antibiograms can be plotted using <code><a href="https://ggplot2.tidyverse.org/reference/autoplot.html" class="external-link">autoplot()</a></code> from the
<code>ggplot2</code> packages, since this <code>AMR</code> package
provides an extension to that function:</p>
<div class="sourceCode" id="cb22"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://ggplot2.tidyverse.org/reference/autoplot.html" class="external-link">autoplot</a></span><span class="op">(</span><span class="va">combined_ab</span><span class="op">)</span></span></code></pre></div>
<p>All antibiogram types, including WISCA, can be plotted using
<code><a href="https://ggplot2.tidyverse.org/reference/autoplot.html" class="external-link">autoplot()</a></code> from the <code>ggplot2</code> package, since
this <code>AMR</code> package provides an extension to that
function:</p>
<div class="sourceCode" id="cb25"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://ggplot2.tidyverse.org/reference/autoplot.html" class="external-link">autoplot</a></span><span class="op">(</span><span class="va">wisca_result</span><span class="op">)</span></span></code></pre></div>
<p><img src="AMR_files/figure-html/unnamed-chunk-10-1.png" class="r-plt" alt="" width="720"></p>
<p>To calculate antimicrobial resistance in a more sensible way, also by
correcting for too few results, we use the <code><a href="../reference/proportion.html">resistance()</a></code> and
@@ -1657,7 +1323,7 @@ proportion of R (<code><a href="../reference/proportion.html">proportion_R()</a>
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="cb23"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb26"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">our_data_1st</span> <span class="op"><a href="https://magrittr.tidyverse.org/reference/pipe.html" class="external-link">%&gt;%</a></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>
<span><span class="co">#&gt; <span style="color: #00BBBB;"></span> `resistance()` assumes the EUCAST guideline and thus considers the 'I'</span></span>
<span><span class="co">#&gt; category susceptible. Set the `guideline` argument or the `AMR_guideline`</span></span>
@@ -1666,7 +1332,7 @@ own:</p>
<span><span class="co">#&gt; [1] 0.4203377</span></span></code></pre></div>
<p>Or can be used in conjunction with <code><a href="https://dplyr.tidyverse.org/reference/group_by.html" class="external-link">group_by()</a></code> and
<code><a href="https://dplyr.tidyverse.org/reference/summarise.html" class="external-link">summarise()</a></code>, both from the <code>dplyr</code> package:</p>
<div class="sourceCode" id="cb24"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb27"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">our_data_1st</span> <span class="op"><a href="https://magrittr.tidyverse.org/reference/pipe.html" class="external-link">%&gt;%</a></span></span>
<span> <span class="fu"><a href="https://dplyr.tidyverse.org/reference/group_by.html" class="external-link">group_by</a></span><span class="op">(</span><span class="va">hospital</span><span class="op">)</span> <span class="op"><a href="https://magrittr.tidyverse.org/reference/pipe.html" class="external-link">%&gt;%</a></span></span>
<span> <span class="fu"><a href="https://dplyr.tidyverse.org/reference/summarise.html" class="external-link">summarise</a></span><span class="op">(</span>amoxicillin <span class="op">=</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="op">)</span></span>
@@ -1684,7 +1350,7 @@ own:</p>
diameters can be interpreted into clinical breakpoints (SIR) using
<code><a href="../reference/as.sir.html">as.sir()</a></code>. Heres an example with randomly generated MIC
values for <em>Klebsiella pneumoniae</em> and ciprofloxacin:</p>
<div class="sourceCode" id="cb25"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb28"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/base/Random.html" class="external-link">set.seed</a></span><span class="op">(</span><span class="fl">123</span><span class="op">)</span></span>
<span><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><span class="fl">100</span><span class="op">)</span></span>
<span><span class="va">sir_values</span> <span class="op">&lt;-</span> <span class="fu"><a href="../reference/as.sir.html">as.sir</a></span><span class="op">(</span><span class="va">mic_values</span>, mo <span class="op">=</span> <span class="st">"K. pneumoniae"</span>, ab <span class="op">=</span> <span class="st">"cipro"</span>, guideline <span class="op">=</span> <span class="st">"EUCAST 2024"</span><span class="op">)</span></span>
@@ -1715,7 +1381,7 @@ breakpoints, facilitating automated AMR data processing.</p>
using <code>ggplot2</code>, using the new <code><a href="../reference/plot.html">scale_y_mic()</a></code> for
the y-axis and <code><a href="../reference/plot.html">scale_colour_sir()</a></code> to colour-code SIR
categories.</p>
<div class="sourceCode" id="cb26"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb29"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="co"># add a group</span></span>
<span><span class="va">my_data</span><span class="op">$</span><span class="va">group</span> <span class="op">&lt;-</span> <span class="fu"><a href="https://rdrr.io/r/base/rep.html" class="external-link">rep</a></span><span class="op">(</span><span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"A"</span>, <span class="st">"B"</span>, <span class="st">"C"</span>, <span class="st">"D"</span><span class="op">)</span>, each <span class="op">=</span> <span class="fl">25</span><span class="op">)</span></span>
<span></span>
@@ -1739,16 +1405,16 @@ across different groups while incorporating clinical breakpoints.</p>
<code>ggplot2</code>s function <code><a href="https://ggplot2.tidyverse.org/reference/autoplot.html" class="external-link">autoplot()</a></code> has been
extended by this package to directly plot MIC and disk diffusion
values:</p>
<div class="sourceCode" id="cb27"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb30"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://ggplot2.tidyverse.org/reference/autoplot.html" class="external-link">autoplot</a></span><span class="op">(</span><span class="va">mic_values</span><span class="op">)</span></span></code></pre></div>
<p><img src="AMR_files/figure-html/autoplot-1.png" class="r-plt" alt="" width="720"></p>
<div class="sourceCode" id="cb28"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb31"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span></span>
<span><span class="co"># by providing `mo` and `ab`, colours will indicate the SIR interpretation:</span></span>
<span><span class="fu"><a href="https://ggplot2.tidyverse.org/reference/autoplot.html" class="external-link">autoplot</a></span><span class="op">(</span><span class="va">mic_values</span>, mo <span class="op">=</span> <span class="st">"K. pneumoniae"</span>, ab <span class="op">=</span> <span class="st">"cipro"</span>, guideline <span class="op">=</span> <span class="st">"EUCAST 2024"</span><span class="op">)</span></span></code></pre></div>
<p><img src="AMR_files/figure-html/autoplot-2.png" class="r-plt" alt="" width="720"></p>
<hr>
<p><em>Author: Dr. Matthijs Berends, 23rd Feb 2025</em></p>
<p><em>Author: Dr. Matthijs Berends, 23rd June 2026</em></p>
</div>
</div>
</main><aside class="col-md-3"><nav id="toc" aria-label="Table of contents"><h2>On this page</h2>

View File

@@ -3,7 +3,7 @@
**Note:** values on this page will change with every website update
since they are based on randomly created values and the page was written
in [R Markdown](https://rmarkdown.rstudio.com/). However, the
methodology remains unchanged. This page was generated on 02 May 2026.
methodology remains unchanged. This page was generated on 23 June 2026.
## Introduction
@@ -51,9 +51,9 @@ structure of your data generally look like this:
| date | patient_id | mo | AMX | CIP |
|:----------:|:----------:|:----------------:|:---:|:---:|
| 2026-05-02 | abcd | Escherichia coli | S | S |
| 2026-05-02 | abcd | Escherichia coli | S | R |
| 2026-05-02 | efgh | Escherichia coli | R | S |
| 2026-06-23 | abcd | Escherichia coli | S | S |
| 2026-06-23 | abcd | Escherichia coli | S | R |
| 2026-06-23 | efgh | Escherichia coli | R | S |
### Needed R packages
@@ -112,7 +112,7 @@ SIR values as well.
With [`as.mo()`](https://amr-for-r.org/reference/as.mo.md), users can
transform arbitrary microorganism names or codes to current taxonomy.
The `AMR` package contains up-to-date taxonomic data. To be specific,
currently included data were retrieved on 24 Jun 2024.
currently included data were retrieved on 07 May 2026.
The codes of the AMR packages that come from
[`as.mo()`](https://amr-for-r.org/reference/as.mo.md) are short, but
@@ -199,24 +199,23 @@ mo_uncertainties()
#> Also matched: Klebsiella pneumoniae complex (0.707), Klebsiella pneumoniae
#> ozaenae (0.707), Klebsiella pneumoniae pneumoniae (0.688), Klebsiella
#> pneumoniae rhinoscleromatis (0.658), Klebsiella pasteurii (0.500), Klebsiella
#> planticola (0.500), Kingella potus (0.400), Kluyveromyces pseudotropicale
#> (0.386), Kluyveromyces pseudotropicalis (0.363), and Kosakonia pseudosacchari
#> (0.361)
#> planticola (0.500), Kosakonia pseudosacchari (0.471), Kaistella palustris
#> (0.435), Kingella potus (0.435), and Kocuria palustris (0.435)
#> -------------------------------------------------------------------------------
#> "S. aureus" -> Staphylococcus aureus (B_STPHY_AURS, 0.690)
#> Also matched: Staphylococcus aureus aureus (0.643), Staphylococcus argenteus
#> (0.625), Staphylococcus aureus anaerobius (0.625), Staphylococcus auricularis
#> (0.615), Salmonella Aurelianis (0.595), Salmonella Aarhus (0.588), Salmonella
#> Amounderness (0.587), Staphylococcus argensis (0.587), Streptococcus australis
#> (0.587), and Salmonella choleraesuis arizonae (0.562)
#> (0.625), Staphylococcus aureus anaerobius (0.625), Streptomyces aureus (0.618),
#> Staphylococcus auricularis (0.615), Streptomyces azureus (0.609), Salmonella
#> Aurelianis (0.595), Salmonella Aarhus (0.588), Salmonella Amounderness (0.587),
#> and Staphylococcus argensis (0.587)
#> -------------------------------------------------------------------------------
#> "S. pneumoniae" -> Streptococcus pneumoniae (B_STRPT_PNMN, 0.750)
#> Also matched: Streptococcus pseudopneumoniae (0.700), Streptococcus phocae
#> salmonis (0.552), Serratia proteamaculans quinovora (0.545), Streptococcus
#> pseudoporcinus (0.536), Staphylococcus piscifermentans (0.533), Staphylococcus
#> pseudintermedius (0.532), Serratia proteamaculans proteamaculans (0.526),
#> Streptococcus gallolyticus pasteurianus (0.526), Salmonella Portanigra (0.524),
#> and Streptococcus periodonticum (0.519)
#> Also matched: Streptococcus parapneumoniae (0.714), Streptococcus
#> pseudopneumoniae (0.700), Serratia proteamaculans quinivorans (0.557),
#> Streptococcus phocae salmonis (0.552), Serratia proteamaculans quinovora
#> (0.545), Sphingomonas piscinae (0.538), Streptococcus pseudoporcinus (0.536),
#> Staphylococcus piscifermentans (0.533), Staphylococcus pseudintermedius
#> (0.532), and Serratia proteamaculans proteamaculans (0.526)
#> Only the first 10 other matches of each record are shown. Run ``
#> `print(mo_uncertainties(), n = ...)` `` to view more entries, or save
#> `mo_uncertainties()` to an object.
@@ -575,33 +574,42 @@ our_data_1st[all(betalactams() == "R"), ]
### Generate antibiograms
Since AMR v2.0 (March 2023), it is very easy to create different types
of antibiograms, with support for 20 different languages.
The `AMR` package supports 28 different languages for antibiograms and
provides four types, as proposed by Klinker *et al.* (2021, [DOI
10.1177/20499361211011373](https://doi.org/10.1177/20499361211011373)):
There are four antibiogram types, as proposed by Klinker *et al.* (2021,
[DOI
10.1177/20499361211011373](https://doi.org/10.1177/20499361211011373)),
and they are all supported by the new
[`antibiogram()`](https://amr-for-r.org/reference/antibiogram.md)
function:
1. **Traditional Antibiogram (TA)** susceptibility of a species to
individual antibiotics
2. **Combination Antibiogram (CA)** susceptibility of a species to
combination regimens
3. **Syndromic Antibiogram (SA)** susceptibility of a species,
stratified by clinical syndrome or setting
4. **Weighted-Incidence Syndromic Combination Antibiogram (WISCA)**
estimated empirical coverage of a *regimen* for a *syndrome*,
weighted by pathogen incidence and with quantified uncertainty
1. **Traditional Antibiogram (TA)** e.g, for the susceptibility of
*Pseudomonas aeruginosa* to piperacillin/tazobactam (TZP)
2. **Combination Antibiogram (CA)** e.g, for the sdditional
susceptibility of *Pseudomonas aeruginosa* to TZP + tobramycin
versus TZP alone
3. **Syndromic Antibiogram (SA)** e.g, for the susceptibility of
*Pseudomonas aeruginosa* to TZP among respiratory specimens
(obtained among ICU patients only)
4. **Weighted-Incidence Syndromic Combination Antibiogram (WISCA)**
e.g, for the susceptibility of *Pseudomonas aeruginosa* to TZP among
respiratory specimens (obtained among ICU patients only) for male
patients age \>=65 years with heart failure
**If your goal is to guide empirical therapy, WISCA should be your
default.** The reason is simple: when you start empirical treatment, you
do not know which pathogen is causing the infection. Your next patient
will not present with a species label attached to them. What matters is
the probability that the *regimen* you choose will cover *whatever
pathogen turns out to be the cause*, given the local epidemiology of the
syndrome. Traditional antibiograms do not answer that question. They
fragment information by species, ignore how frequently each species
causes the syndrome, do not evaluate combination regimens, and provide
no measure of uncertainty. WISCA addresses all of these limitations
using a Bayesian framework (Hebert *et al.*, 2012; Bielicki *et al.*,
2016). See the [WISCA
vignette](https://amr-for-r.org/articles/WISCA.html) for the full
explanation.
In this section, we show how to use the
[`antibiogram()`](https://amr-for-r.org/reference/antibiogram.md)
function to create any of the above antibiogram types. For starters,
this is what the included `example_isolates` data set looks like:
Traditional, combination, and syndromic antibiograms remain useful for
**surveillance** purposes, i.e., tracking resistance trends per species
over time. But if you care about clinical impact, about choosing the
right empirical regimen for your patient, use WISCA.
For starters, this is what the included `example_isolates` data set
looks like:
``` r
@@ -628,13 +636,106 @@ example_isolates
#> # IPM <sir>, MEM <sir>, MTR <sir>, CHL <sir>, COL <sir>, MUP <sir>, …
```
#### WISCA (recommended for empirical therapy guidance)
Use the [`wisca()`](https://amr-for-r.org/reference/antibiogram.md)
function, or equivalently `antibiogram(..., wisca = TRUE)`. WISCA
produces a single coverage estimate per regimen for the entire syndrome,
weighted by pathogen incidence, with a 95% credible interval from
Bayesian Monte Carlo simulation:
``` r
wisca_result <- example_isolates %>%
wisca(
antimicrobials = c("TZP", "TZP+TOB", "TZP+GEN"),
minimum = 10
) # Recommended threshold: ≥30
wisca_result
```
| Piperacillin/tazobactam | Piperacillin/tazobactam + Gentamicin | Piperacillin/tazobactam + Tobramycin |
|:---|:---|:---|
| 70.2% (64.8-75.2%) | 93.6% (92.2-95%) | 89.9% (87-92.3%) |
The output tells you: *“given the species distribution in your data,
there is an estimated X% probability that this regimen covers the
infection, with 95% credible interval \[lower, upper\]”*. That is the
clinically relevant question.
For **syndrome-specific** or **patient-specific WISCA**, use the
`syndromic_group` argument or group your data first. You can stratify by
anything: ward, age group, risk profile, acquisition type. The
`syndromic_group` argument accepts any column or expression:
``` r
wisca_out <- example_isolates %>%
top_n_microorganisms(n = 10) %>%
group_by(
age_group = age_groups(age, c(25, 50, 75)),
gender
) %>%
wisca(antimicrobials = c("TZP", "TZP+TOB", "TZP+GEN"))
wisca_out
```
| age_group | gender | Piperacillin/tazobactam | Piperacillin/tazobactam + Gentamicin | Piperacillin/tazobactam + Tobramycin |
|:---|:---|:---|:---|:---|
| 0-24 | F | 56.8% (29.9-81.3%) | 70.7% (45.2-89%) | 65.9% (42.3-86.6%) |
| 0-24 | M | 59.5% (31.2-85.5%) | 76.1% (56.5-92%) | 59.6% (31.7-85.1%) |
| 25-49 | F | 67.7% (43.9-89.7%) | 93.8% (87.4-98.1%) | 87% (70.1-97%) |
| 25-49 | M | 56.9% (26.6-86.2%) | 91% (82-97.2%) | 76.6% (51.4-93.5%) |
| 50-74 | F | 68% (54.1-81.8%) | 96.9% (94.6-98.5%) | 90.2% (82-96.2%) |
| 50-74 | M | 67% (56-78.5%) | 96.7% (94.1-98.5%) | 86.7% (77.3-94.4%) |
| 75+ | F | 73.1% (61.8-84.1%) | 97.7% (95.9-99%) | 92.8% (85.7-97.2%) |
| 75+ | M | 74% (63.6-82.6%) | 97.9% (96-99%) | 94.7% (89.3-97.9%) |
Keep in mind that more granular stratification produces more relevant
estimates for each subgroup, but with wider credible intervals due to
smaller sample sizes. There is always a trade-off between granularity
and precision. If local numbers are small, consider pooling data from
multiple sites (Bielicki *et al.*, 2016).
For reliable WISCA results, ensure your data includes **only first
isolates** (use
[`first_isolate()`](https://amr-for-r.org/reference/first_isolate.md))
and consider filtering for **the top *n* species** (use
[`top_n_microorganisms()`](https://amr-for-r.org/reference/top_n_microorganisms.md)),
since rare contaminants can distort coverage estimates.
After creating the WISCA model, assessments can be done on the
distributions of the Monte Carlo simulations that WISCA carried out:
``` r
wisca_plot(wisca_out)
```
![](AMR_files/figure-html/wisca_plots-1.png)
``` r
wisca_plot(wisca_out, wisca_plot_type = "posterior_coverage")
```
![](AMR_files/figure-html/wisca_plots-2.png)
``` r
# a ggplot2 extension for WISCAs and other antibiograms:
ggplot2::autoplot(wisca_out)
```
![](AMR_files/figure-html/wisca_plots-3.png)
#### Traditional Antibiogram
To create a traditional antibiogram, simply state which antibiotics
should be used. The `antibiotics` argument in the
[`antibiogram()`](https://amr-for-r.org/reference/antibiogram.md)
function supports any (combination) of the previously mentioned
antibiotic class selectors:
If you need per-species susceptibility rates, e.g., for AMR surveillance
reports, the traditional antibiogram remains the right tool. It reports
the proportion of susceptible isolates per species per antibiotic:
``` r
@@ -691,10 +792,12 @@ antibiogram(example_isolates,
| Gram negativo | 98% (96-99%,N=256) | 96% (95-98%,N=684) | 0% (0-10%,N=35) | 96% (94-97%,N=686) |
| Gram positivo | 0% (0-1%,N=436) | 63% (60-66%,N=1170) | 0% (0-1%,N=436) | 34% (31-38%,N=665) |
#### Combined Antibiogram
#### Combination Antibiogram
To create a combined antibiogram, use antibiotic codes or names with a
plus `+` character like this:
A combination antibiogram shows how much additional susceptibility a
second agent adds for a given species. This is useful for surveillance
of combination regimens, but note that it is still species-stratified
and does not account for pathogen incidence in the syndrome:
``` r
@@ -719,10 +822,12 @@ combined_ab
#### Syndromic Antibiogram
To create a syndromic antibiogram, the `syndromic_group` argument must
be used. This can be any column in the data, or e.g. an
[`ifelse()`](https://rdrr.io/r/base/ifelse.html) with calculations based
on certain columns:
A syndromic antibiogram stratifies per-species susceptibility by
clinical context (ward, specimen type, etc.). It adds clinical context
to the traditional antibiogram but is still species-level, without
incidence weighting or uncertainty quantification. For surveillance by
setting this is fine; for empirical therapy guidance, WISCA is
preferred:
``` r
@@ -752,80 +857,16 @@ antibiogram(example_isolates,
| Clinical | *S. pneumoniae* | 0% (0-5%,N=78) | 0% (0-5%,N=78) | NA | 0% (0-5%,N=78) | NA | 0% (0-5%,N=78) |
| ICU | *S. pneumoniae* | 0% (0-12%,N=30) | 0% (0-12%,N=30) | NA | 0% (0-12%,N=30) | NA | 0% (0-12%,N=30) |
#### Weighted-Incidence Syndromic Combination Antibiogram (WISCA)
To create a **Weighted-Incidence Syndromic Combination Antibiogram
(WISCA)**, simply set `wisca = TRUE` in the
[`antibiogram()`](https://amr-for-r.org/reference/antibiogram.md)
function, or use the dedicated
[`wisca()`](https://amr-for-r.org/reference/antibiogram.md) function.
Unlike traditional antibiograms, WISCA provides syndrome-based
susceptibility estimates, weighted by pathogen incidence and
antimicrobial susceptibility patterns.
``` r
example_isolates %>%
wisca(
antibiotics = c("TZP", "TZP+TOB", "TZP+GEN"),
minimum = 10
) # Recommended threshold: ≥30
```
| Piperacillin/tazobactam | Piperacillin/tazobactam + Gentamicin | Piperacillin/tazobactam + Tobramycin |
|:---|:---|:---|
| 69.4% (64.3-74.3%) | 92.6% (91.1-93.9%) | 88.7% (85.8-91.2%) |
WISCA uses a **Bayesian decision model** to integrate data from multiple
pathogens, improving empirical therapy guidance, especially for
low-incidence infections. It is **pathogen-agnostic**, meaning results
are syndrome-based rather than stratified by microorganism.
For reliable results, ensure your data includes **only first isolates**
(use
[`first_isolate()`](https://amr-for-r.org/reference/first_isolate.md))
and consider filtering for **the top *n* species** (use
[`top_n_microorganisms()`](https://amr-for-r.org/reference/top_n_microorganisms.md)),
as WISCA outcomes are most meaningful when based on robust incidence
estimates.
For **patient- or syndrome-specific WISCA**, run the function on a
grouped `tibble`, i.e., using
[`group_by()`](https://dplyr.tidyverse.org/reference/group_by.html)
first:
``` r
example_isolates %>%
top_n_microorganisms(n = 10) %>%
group_by(
age_group = age_groups(age, c(25, 50, 75)),
gender
) %>%
wisca(antibiotics = c("TZP", "TZP+TOB", "TZP+GEN"))
```
| age_group | gender | Amikacin | Amoxicillin | Amoxicillin/clavulanic acid | Ampicillin | Azithromycin | Benzylpenicillin | Cefazolin | Cefepime | Cefotaxime | Cefoxitin | Ceftazidime | Ceftriaxone | Cefuroxime | Chloramphenicol | Ciprofloxacin | Clindamycin | Colistin | Doxycycline | Erythromycin | Flucloxacillin | Fosfomycin | Gentamicin | Imipenem | Kanamycin | Linezolid | Meropenem | Metronidazole | Moxifloxacin | Mupirocin | Nitrofurantoin | Oxacillin | Piperacillin/tazobactam | Rifampicin | Teicoplanin | Tetracycline | Tigecycline | Tobramycin | Trimethoprim | Trimethoprim/sulfamethoxazole | Vancomycin |
|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|:---|
| 0-24 | F | 45.4% (15.4-79%) | 50.1% (20.5-77.6%) | 69% (44.5-88.5%) | 50.4% (20.6-77.3%) | 41.9% (18.1-65.6%) | 36.1% (12.3-64.3%) | NA | NA | 63.9% (34.6-87.6%) | 56.7% (25.9-85.8%) | 51.5% (25.6-74.4%) | 63.4% (32-88.1%) | 70.4% (45.4-89.1%) | 54% (22.3-85.3%) | 69.8% (45.9-88.9%) | 39.3% (17.7-64.6%) | 45.3% (18.1-75.9%) | 50.1% (21.5-80.5%) | 41.7% (19.1-67.6%) | 55.8% (23.7-83.3%) | 63.5% (32.6-89.4%) | 69.3% (44.6-88.3%) | 63.6% (36.1-88.2%) | 45.5% (15.7-77.7%) | 43.3% (17.8-71.2%) | 55.9% (24.3-82.2%) | NA | NA | 56.5% (24.3-85%) | 56.8% (30.9-82.3%) | 50.5% (19.4-80.8%) | 56.9% (26.7-85%) | 42.3% (18.3-68.8%) | 40.2% (17.6-67.7%) | 49.8% (20-79.3%) | 56.1% (22-85.4%) | 64.5% (39.6-85.5%) | 69.7% (42.3-90.4%) | 75.4% (52.1-91.7%) | 48.5% (24.3-72.6%) |
| 0-24 | M | 41.9% (15.2-72.5%) | 49.4% (23.3-75.5%) | 73.8% (51.8-90.1%) | 49.3% (22.7-76%) | 63.4% (40.7-83.5%) | 41.8% (20.4-64.8%) | 56.8% (25.2-83.5%) | 58.2% (29.1-85.8%) | 59.7% (29.1-87.4%) | 59.3% (29.1-86.6%) | 24.9% (8.9-47.3%) | 58.5% (28-86.5%) | 72.1% (47.9-90.5%) | NA | 77.2% (53-93.2%) | 61.6% (36.2-83.6%) | 25.5% (8.7-46.1%) | 69.4% (44.6-89.4%) | 63.4% (41.8-82.7%) | 64% (37.6-85.6%) | NA | 63.5% (40.9-83.1%) | 58.7% (27.6-86.5%) | 41.8% (13.6-71.2%) | 48.3% (17.9-78%) | 59.2% (27.4-86.4%) | NA | NA | NA | 53% (21.3-83.7%) | 57.2% (24.6-84.6%) | 59.9% (29.7-85.6%) | 48.2% (16.1-80.4%) | 48.4% (17.4-79.8%) | 68% (43.5-87.3%) | 65.7% (36-89.2%) | 44.3% (17.2-73.4%) | 69.4% (46.9-87.8%) | 74% (50.8-90.9%) | 75.3% (52.4-92.2%) |
| 25-49 | F | 46.8% (26.7-65.6%) | 39% (26.3-52.9%) | 73.8% (63.5-82.6%) | 39.3% (27.2-54.4%) | 54.8% (44.9-64.8%) | 36.5% (26.3-47.1%) | 66.4% (46.1-85%) | 69.2% (49.1-86.2%) | 70.2% (50.5-86.2%) | 68.1% (48.6-85.4%) | 27.9% (19.2-37.9%) | 70.1% (50.5-87.1%) | 71.4% (61.7-80.4%) | 58.2% (35.3-79.9%) | 85.5% (74.1-94.2%) | 67.1% (55.8-77.4%) | 25.8% (17-36%) | 75.5% (61.2-88.2%) | 54.9% (44.8-65.6%) | 55.2% (37.8-72.5%) | 60.9% (38.3-81.8%) | 75.2% (65.7-83.5%) | 69.9% (50.1-86.6%) | 37.5% (17.7-57.9%) | 50.7% (30.8-68.7%) | 69.4% (48.6-86.7%) | NA | 56.9% (36.2-77.7%) | 53.3% (30.9-75.6%) | 60.1% (38.1-81.8%) | 64.3% (43.2-83.6%) | 66% (45.7-85.2%) | 50.1% (30-69.6%) | 38.8% (19.6-58.9%) | 75.8% (61.6-88.1%) | 73.3% (56.6-89.5%) | 62.7% (47.6-77.1%) | 70.4% (58.7-80.2%) | 90% (82.9-95.4%) | 71.6% (61.7-80.4%) |
| 25-49 | M | 49.8% (24.2-75.8%) | 16.5% (8.1-27.4%) | 72.4% (60.5-83.5%) | 16.6% (7.7-28.2%) | 55.9% (43.6-67.9%) | 24.9% (14.7-37.6%) | 60.3% (33.2-82.4%) | 55.3% (27.6-81.8%) | 55.9% (29.7-81.1%) | 56.2% (27.7-82.1%) | 22.2% (12.7-33.9%) | 55.6% (29.1-81.8%) | 73.7% (62.6-83.8%) | 52.9% (25.2-79.6%) | 67.1% (53-79.8%) | 57.8% (43.5-71.8%) | 22.3% (12.6-33.6%) | 73% (57.8-85.5%) | 55.8% (43-68.2%) | 66.5% (51.6-79.4%) | 63.1% (40.3-84.5%) | 83.9% (74.5-91.7%) | 56.4% (28.4-84%) | 45.4% (18.9-73.8%) | 59.4% (37.6-77.9%) | 56.3% (28.8-81.1%) | NA | 52.8% (24.7-78.7%) | 64.2% (40.2-84.5%) | 62.9% (37.7-85.1%) | 60.5% (37.1-80.7%) | 55.8% (29.4-82.9%) | 65.4% (48.7-80.8%) | 54.5% (31.7-73.7%) | 72.8% (58.7-84.8%) | 84.8% (72.4-93.6%) | 66.7% (44.5-84.1%) | 71.4% (58.9-82.6%) | 86.6% (77.9-93.7%) | 77.1% (65.5-87.1%) |
| 50-74 | F | 44.8% (35.8-54.1%) | 30.1% (24.9-35.3%) | 74.1% (69.2-78.7%) | 30% (24.6-35.4%) | 41.9% (36.5-47.3%) | 23.5% (18.6-29%) | 73.1% (62-82.9%) | 76.6% (66.1-86%) | 74.8% (64.9-84.5%) | 74.6% (64.2-83.3%) | 37.5% (32.3-43.4%) | 74.8% (64.4-83.8%) | 74.5% (69.7-78.9%) | 61.2% (40.3-82.4%) | 79.4% (73-85%) | 44.9% (38.7-51%) | 37.8% (32.7-43.3%) | 63.8% (47.6-80.1%) | 41.7% (36.6-46.9%) | 58.1% (40-75.1%) | 65.2% (53.5-76.6%) | 78.7% (73.8-83.2%) | 80.6% (70.3-90%) | 28.1% (10.1-46.6%) | 53.2% (42.9-62.4%) | 79.3% (68.7-88.6%) | NA | 49.5% (37.5-61.8%) | 67.8% (48.5-86%) | 75.1% (63.3-86.3%) | 56.6% (37.8-74.2%) | 67.7% (56.4-79.6%) | 50.6% (40.9-59.1%) | 41.3% (31.5-50.4%) | 59% (48.3-74.5%) | 87.7% (80.4-94.1%) | 62.2% (55.4-68.4%) | 55.5% (49.8-61.1%) | 68% (62.7-73.3%) | 60.9% (55.8-66.1%) |
| 50-74 | M | 38.8% (30.6-48.6%) | 34.6% (29.1-40.3%) | 75% (70-79.5%) | 34.7% (29.2-40.5%) | 43.4% (37.8-48.5%) | 21% (16.5-26.4%) | 64.3% (54.1-74.1%) | 65.9% (56.5-75.4%) | 67.3% (58.3-77%) | 65.9% (56.1-75.9%) | 32.9% (27.6-38%) | 67.3% (57.4-76.8%) | 74.1% (69.2-78.8%) | 63.5% (42.4-83%) | 76.9% (71.6-81.9%) | 47.3% (40.9-53.8%) | 30.8% (26.1-36.1%) | 68.5% (53.5-81.9%) | 43.4% (37.7-48.8%) | 58.1% (42.4-73.2%) | 68.1% (53.5-82.2%) | 79.1% (74.4-83.1%) | 69% (59.7-78.3%) | 24.8% (9.5-40.5%) | 49.7% (35-63.2%) | 68.1% (58.1-77.6%) | 53.8% (32-75%) | 51.7% (36.1-67.3%) | 68.8% (51.1-85.7%) | 70.2% (54.7-85.3%) | 53.2% (37.5-68.7%) | 66.5% (55-76.8%) | 56.2% (45.8-65.4%) | 44% (30.3-57.5%) | 71.9% (58.2-82.2%) | 86.8% (77.3-93.6%) | 54.1% (46.9-61.4%) | 67.1% (61.5-72.5%) | 81% (76.4-85.2%) | 66.3% (61-71.2%) |
| 75+ | F | 51.4% (41.7-62%) | 30.9% (26.2-36.5%) | 74.4% (70.3-78.6%) | 30.9% (25.7-36.1%) | 36.6% (32-41.6%) | 20.7% (16.2-25.4%) | 73.6% (63.6-82.5%) | 79.1% (70.6-86.8%) | 78.6% (69.9-86.3%) | 76% (67.5-83.7%) | 43.1% (38.6-48%) | 78.9% (70.5-86.4%) | 77% (72.6-81.3%) | 63.2% (43.2-84.1%) | 77.7% (72.1-83.2%) | 41.2% (36-46.4%) | 39.1% (34.2-44.4%) | 63.7% (46.3-80.6%) | 36.5% (31.9-41.2%) | 57.1% (39.8-76%) | 65.8% (57.2-73.5%) | 84.6% (80.6-88%) | 81.9% (73.7-89.5%) | 33.3% (13.7-53%) | 49.6% (42.3-56.1%) | 81.3% (73.2-88.9%) | 55.9% (33.5-76.5%) | 41% (31.4-51.8%) | 63.7% (43.8-82.3%) | 77.8% (66-87.4%) | 56.3% (37.3-75.1%) | 71.8% (62-82.2%) | 48.3% (41.5-54.9%) | 43.3% (36.2-50.7%) | 63% (45.3-80.3%) | 85.9% (79.9-90.9%) | 70.4% (64.1-76.8%) | 60.4% (55.1-65.8%) | 77.6% (73.4-82.1%) | 55.3% (50.4-60.1%) |
| 75+ | M | 52.6% (43.3-62.6%) | 33% (28.1-38%) | 77.4% (73.3-81.5%) | 33% (28.2-38.2%) | 36.8% (32.3-41.8%) | 17.9% (12.6-23.2%) | 64.4% (55.4-73.3%) | 71.2% (63.1-79.1%) | 67.9% (59.5-75.8%) | 65.3% (56.3-73.6%) | 42.6% (37.8-47.4%) | 68.2% (59.7-76.4%) | 75.1% (70.9-79.2%) | 64.1% (45.8-81.8%) | 77.6% (72-82.6%) | 41% (36-46.4%) | 39.9% (35.1-44.5%) | 62.1% (46-78.8%) | 36.9% (32.4-41.4%) | 59.7% (43.4-76.6%) | 64.7% (56.6-73.6%) | 83% (79.4-86.7%) | 75.7% (66.6-83%) | 31.6% (12.1-51.7%) | 51.8% (44.9-58%) | 74.2% (65.8-82.7%) | NA | 52.2% (41.5-60.8%) | 69.3% (50.5-86.4%) | 72.2% (58.7-83.4%) | 59.3% (41.6-76.7%) | 73.1% (64.3-81.4%) | 49.9% (42.4-56.9%) | 46.3% (38.2-53.1%) | 59.7% (44.2-75.7%) | 86.8% (81.4-91.3%) | 72% (66.3-77.6%) | 55.8% (50.3-61.1%) | 73.3% (68.9-77.6%) | 57% (52.2-61.6%) |
#### Plotting antibiograms
Antibiograms can be plotted using
All antibiogram types, including WISCA, can be plotted using
[`autoplot()`](https://ggplot2.tidyverse.org/reference/autoplot.html)
from the `ggplot2` packages, since this `AMR` package provides an
from the `ggplot2` package, since this `AMR` package provides an
extension to that function:
``` r
autoplot(combined_ab)
autoplot(wisca_result)
```
![](AMR_files/figure-html/unnamed-chunk-10-1.png)
@@ -989,4 +1030,4 @@ autoplot(mic_values, mo = "K. pneumoniae", ab = "cipro", guideline = "EUCAST 202
------------------------------------------------------------------------
*Author: Dr. Matthijs Berends, 23rd Feb 2025*
*Author: Dr. Matthijs Berends, 23rd June 2026*

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 750 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

View File

@@ -12,8 +12,8 @@
<link rel="icon" sizes="any" href="../favicon.ico">
<link rel="manifest" href="../site.webmanifest">
<script src="../deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link href="../deps/bootstrap-5.3.1/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.1/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/bootstrap-5.3.8/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.8/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/Fira_Code-0.4.10/font.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet">
@@ -30,7 +30,7 @@
<a class="navbar-brand me-2" href="../index.html">AMR (for R)</a>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9057</small>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9061</small>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">

View File

@@ -12,8 +12,8 @@
<link rel="icon" sizes="any" href="../favicon.ico">
<link rel="manifest" href="../site.webmanifest">
<script src="../deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link href="../deps/bootstrap-5.3.1/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.1/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/bootstrap-5.3.8/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.8/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/Fira_Code-0.4.10/font.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet">
@@ -30,7 +30,7 @@
<a class="navbar-brand me-2" href="../index.html">AMR (for R)</a>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9057</small>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9061</small>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">

View File

@@ -12,8 +12,8 @@
<link rel="icon" sizes="any" href="../favicon.ico">
<link rel="manifest" href="../site.webmanifest">
<script src="../deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link href="../deps/bootstrap-5.3.1/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.1/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/bootstrap-5.3.8/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.8/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/Fira_Code-0.4.10/font.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet">
@@ -30,7 +30,7 @@
<a class="navbar-brand me-2" href="../index.html">AMR (for R)</a>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9057</small>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9061</small>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">

View File

@@ -12,8 +12,8 @@
<link rel="icon" sizes="any" href="../favicon.ico">
<link rel="manifest" href="../site.webmanifest">
<script src="../deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link href="../deps/bootstrap-5.3.1/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.1/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/bootstrap-5.3.8/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.8/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/Fira_Code-0.4.10/font.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet">
@@ -30,7 +30,7 @@
<a class="navbar-brand me-2" href="../index.html">AMR (for R)</a>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9057</small>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9061</small>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
@@ -200,7 +200,7 @@ function:</p>
<span><span class="co">#&gt; [1] "Caryophanales" "Enterobacterales" "Lactobacillales" "Pseudomonadales"</span></span>
<span><span class="co">#&gt; Importance of components:</span></span>
<span><span class="co">#&gt; PC1 PC2 PC3 PC4 PC5 PC6 PC7</span></span>
<span><span class="co">#&gt; Standard deviation 2.1539 1.6807 0.6138 0.33879 0.20808 0.03140 9.577e-17</span></span>
<span><span class="co">#&gt; Standard deviation 2.1539 1.6807 0.6138 0.33879 0.20808 0.03140 1.232e-16</span></span>
<span><span class="co">#&gt; Proportion of Variance 0.5799 0.3531 0.0471 0.01435 0.00541 0.00012 0.000e+00</span></span>
<span><span class="co">#&gt; Cumulative Proportion 0.5799 0.9330 0.9801 0.99446 0.99988 1.00000 1.000e+00</span></span></code></pre></div>
<pre><code><span><span class="co">#&gt; Groups (n=4, named as 'order'):</span></span>

View File

@@ -123,7 +123,7 @@ summary(pca_result)
#> [1] "Caryophanales" "Enterobacterales" "Lactobacillales" "Pseudomonadales"
#> Importance of components:
#> PC1 PC2 PC3 PC4 PC5 PC6 PC7
#> Standard deviation 2.1539 1.6807 0.6138 0.33879 0.20808 0.03140 9.577e-17
#> Standard deviation 2.1539 1.6807 0.6138 0.33879 0.20808 0.03140 1.232e-16
#> Proportion of Variance 0.5799 0.3531 0.0471 0.01435 0.00541 0.00012 0.000e+00
#> Cumulative Proportion 0.5799 0.9330 0.9801 0.99446 0.99988 1.00000 1.000e+00
```

View File

@@ -12,8 +12,8 @@
<link rel="icon" sizes="any" href="../favicon.ico">
<link rel="manifest" href="../site.webmanifest">
<script src="../deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link href="../deps/bootstrap-5.3.1/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.1/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/bootstrap-5.3.8/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.8/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/Fira_Code-0.4.10/font.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet">
@@ -30,7 +30,7 @@
<a class="navbar-brand me-2" href="../index.html">AMR (for R)</a>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9057</small>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9061</small>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">

View File

@@ -12,8 +12,8 @@
<link rel="icon" sizes="any" href="../favicon.ico">
<link rel="manifest" href="../site.webmanifest">
<script src="../deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link href="../deps/bootstrap-5.3.1/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.1/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/bootstrap-5.3.8/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.8/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/Fira_Code-0.4.10/font.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet">
@@ -30,7 +30,7 @@
<a class="navbar-brand me-2" href="../index.html">AMR (for R)</a>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9057</small>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9061</small>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
@@ -87,89 +87,98 @@
<blockquote>
<p>This explainer was largely written by our <a href="https://chat.amr-for-r.org" class="external-link">AMR for R Assistant</a>, a ChatGPT
manually-trained model able to answer any question about the
<code>AMR</code> package.</p>
</blockquote>
<div class="section level2">
<h2 id="introduction">Introduction<a class="anchor" aria-label="anchor" href="#introduction"></a>
<h2 id="why-wisca">Why WISCA?<a class="anchor" aria-label="anchor" href="#why-wisca"></a>
</h2>
<p>Clinical guidelines for empirical antimicrobial therapy require
<em>probabilistic reasoning</em>: what is the chance that a regimen will
cover the likely infecting organisms, before culture results are
available?</p>
<p>This is the purpose of <strong>WISCA</strong>, or
<strong>Weighted-Incidence Syndromic Combination
Antibiogram</strong>.</p>
<p>WISCA is a Bayesian approach that integrates:</p>
<p>When a clinician starts empirical antimicrobial therapy, the
causative pathogen is unknown. The question they need answered is not
<em>“what proportion of</em> E. coli <em>is susceptible to
ciprofloxacin?“</em> but rather <em>“what is the probability that this
regimen will adequately cover whatever pathogen turns out to be causing
my patients infection?”</em></p>
<p>The traditional cumulative antibiogram, as standardised by CLSI M39,
cannot answer that question. It presents susceptibility percentages per
species per antibiotic, but:</p>
<ul>
<li>
<strong>Pathogen prevalence</strong> (how often each species causes
the syndrome),</li>
<strong>It fragments information by organism.</strong> The clinician
must mentally combine susceptibility rates across multiple species,
weighting by how often each species causes the syndrome, a calculation
nobody does at the bedside.</li>
<li>
<strong>Regimen susceptibility</strong> (how often a regimen works
<em>if</em> the pathogen is known),</li>
<strong>It ignores pathogen incidence.</strong> A species that
causes 2% of infections is given the same visual weight as one that
causes 60%.</li>
<li>
<strong>It does not evaluate combination regimens.</strong> Much
empirical therapy consists of two or more agents, but the traditional
antibiogram only shows monotherapy per organism.</li>
<li>
<strong>It provides no measure of uncertainty.</strong> A reported
“90% susceptible” based on 50 isolates has a 95% confidence interval of
roughly 78-97% (Clopper-Pearson), yet the antibiogram presents it as a
point estimate without context.</li>
</ul>
<p>to estimate the <strong>overall empirical coverage</strong> of
antimicrobial regimens, with quantified uncertainty.</p>
<p>This vignette explains how WISCA works, why it is useful, and how to
apply it using the <code>AMR</code> package.</p>
<p><strong>WISCA</strong> (Weighted-Incidence Syndromic Combination
Antibiogram) resolves all four limitations. It estimates the probability
that a regimen will provide adequate empirical coverage for a given
infection syndrome, weighted by local pathogen incidence, with full
uncertainty quantification via Bayesian inference.</p>
<p>The concept was introduced by Hebert <em>et al.</em> (2012), who
demonstrated that traditional antibiogram susceptibility rates could be
misleading: ciprofloxacin appeared 84% effective against <em>E.
coli</em> in the traditional antibiogram, but WISCA revealed only 62%
coverage for UTI and 37% for abdominal infections, because enterococci
(intrinsically resistant) and other species contribute substantially to
these syndromes. Randhawa <em>et al.</em> (2014) showed that
WISCA-guided regimen selection could improve time-to-adequate-coverage
on the ICU by over 40%. Bielicki <em>et al.</em> (2016) introduced the
Bayesian framework now used in this package, enabling credible intervals
and multi-centre pooling. Cook <em>et al.</em> (2022) applied it
globally across 52 hospitals in 23 countries.</p>
</div>
<div class="section level2">
<h2 id="why-traditional-antibiograms-fall-short">Why traditional antibiograms fall short<a class="anchor" aria-label="anchor" href="#why-traditional-antibiograms-fall-short"></a>
</h2>
<p>A standard antibiogram gives you:</p>
<pre><code>Species → Antibiotic → Susceptibility %</code></pre>
<p>But clinicians dont know the species <em>a priori</em>. They need to
choose a regimen that covers the <strong>likely pathogens</strong>,
without knowing which one is present.</p>
<p>Traditional antibiograms calculate the susceptibility % as just the
number of resistant isolates divided by the total number of tested
isolates. Therefore, traditional antibiograms:</p>
<ul>
<li>Fragment information by organism,</li>
<li>Do not weight by real-world prevalence,</li>
<li>Do not account for combination therapy or sample size,</li>
<li>Do not provide uncertainty.</li>
</ul>
</div>
<div class="section level2">
<h2 id="the-idea-of-wisca">The idea of WISCA<a class="anchor" aria-label="anchor" href="#the-idea-of-wisca"></a>
<h2 id="the-idea">The idea<a class="anchor" aria-label="anchor" href="#the-idea"></a>
</h2>
<p>WISCA asks:</p>
<blockquote>
<p>“What is the <strong>probability</strong> that this regimen
<strong>will cover</strong> the pathogen, given the syndrome?”</p>
</blockquote>
<p>This means combining two things:</p>
<p>This means combining two quantities:</p>
<ul>
<li>
<strong>Incidence</strong> of each pathogen in the syndrome,</li>
<strong>Pathogen incidence</strong> in the syndrome (how often each
species causes it),</li>
<li>
<strong>Susceptibility</strong> of each pathogen to the
regimen.</li>
</ul>
<p>We can write this as:</p>
<p><math display="block" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mtext mathvariant="normal">Coverage</mtext><mo>=</mo><munder><mo></mo><mi>i</mi></munder><mo stretchy="false" form="prefix">(</mo><msub><mtext mathvariant="normal">Incidence</mtext><mi>i</mi></msub><mo>×</mo><msub><mtext mathvariant="normal">Susceptibility</mtext><mi>i</mi></msub><mo stretchy="false" form="postfix">)</mo></mrow><annotation encoding="application/x-tex">\text{Coverage} = \sum_i (\text{Incidence}_i \times \text{Susceptibility}_i)</annotation></semantics></math></p>
<p>For example, suppose:</p>
<p>For example, suppose in your hospital:</p>
<ul>
<li>
<em>E. coli</em> causes 60% of cases, and 90% of <em>E. coli</em>
are susceptible to a drug.</li>
<em>E. coli</em> causes 60% of UTIs, and 90% of <em>E. coli</em> are
susceptible to a drug.</li>
<li>
<em>Klebsiella</em> causes 40% of cases, and 70% of
<em>Klebsiella</em> causes 40% of UTIs, and 70% of
<em>Klebsiella</em> are susceptible.</li>
</ul>
<p>Then:</p>
<p><math display="block" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mtext mathvariant="normal">Coverage</mtext><mo>=</mo><mo stretchy="false" form="prefix">(</mo><mn>0.6</mn><mo>×</mo><mn>0.9</mn><mo stretchy="false" form="postfix">)</mo><mo>+</mo><mo stretchy="false" form="prefix">(</mo><mn>0.4</mn><mo>×</mo><mn>0.7</mn><mo stretchy="false" form="postfix">)</mo><mo>=</mo><mn>0.82</mn></mrow><annotation encoding="application/x-tex">\text{Coverage} = (0.6 \times 0.9) + (0.4 \times 0.7) = 0.82</annotation></semantics></math></p>
<p>But in real data, incidence and susceptibility are <strong>estimated
from samples</strong>, so they carry uncertainty. WISCA models this
<strong>probabilistically</strong>, using conjugate Bayesian
<p>That 82% is a far more clinically meaningful number than the
species-level “90% of <em>E. coli</em>” and “70% of <em>Klebsiella</em>
reported separately in a traditional antibiogram, because it directly
answers the question the clinician actually faces.</p>
<p>But in real data, both incidence and susceptibility are
<strong>estimated from finite samples</strong>, so they carry
uncertainty. A sample of 50 isolates is not a census. WISCA models this
uncertainty <strong>probabilistically</strong>, using conjugate Bayesian
distributions.</p>
</div>
<div class="section level2">
<h2 id="the-bayesian-engine-behind-wisca">The Bayesian engine behind WISCA<a class="anchor" aria-label="anchor" href="#the-bayesian-engine-behind-wisca"></a>
<h2 id="the-bayesian-engine">The Bayesian engine<a class="anchor" aria-label="anchor" href="#the-bayesian-engine"></a>
</h2>
<div class="section level3">
<h3 id="pathogen-incidence">Pathogen incidence<a class="anchor" aria-label="anchor" href="#pathogen-incidence"></a>
@@ -180,27 +189,38 @@ distributions.</p>
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mi>K</mi><annotation encoding="application/x-tex">K</annotation></semantics></math>
be the number of pathogens,</li>
<li>
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>α</mi><mo>=</mo><mo stretchy="false" form="prefix">(</mo><mn>1</mn><mo>,</mo><mn>1</mn><mo>,</mo><mi></mi><mo>,</mo><mn>1</mn><mo stretchy="false" form="postfix">)</mo></mrow><annotation encoding="application/x-tex">\alpha = (1, 1, \ldots, 1)</annotation></semantics></math>
be a <strong>Dirichlet</strong> prior (uniform),</li>
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>𝛂</mi><mo>=</mo><mo stretchy="false" form="prefix">(</mo><mn>1</mn><mo>,</mo><mn>1</mn><mo>,</mo><mi></mi><mo>,</mo><mn>1</mn><mo stretchy="false" form="postfix">)</mo></mrow><annotation encoding="application/x-tex">\boldsymbol{\alpha} = (1, 1, \ldots, 1)</annotation></semantics></math>
be a
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mtext mathvariant="normal">Dirichlet</mtext><annotation encoding="application/x-tex">\text{Dirichlet}</annotation></semantics></math>
prior (uniform, non-informative),</li>
<li>
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>n</mi><mo>=</mo><mo stretchy="false" form="prefix">(</mo><msub><mi>n</mi><mn>1</mn></msub><mo>,</mo><mi></mi><mo>,</mo><msub><mi>n</mi><mi>K</mi></msub><mo stretchy="false" form="postfix">)</mo></mrow><annotation encoding="application/x-tex">n = (n_1, \ldots, n_K)</annotation></semantics></math>
be the observed counts per species.</li>
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>𝐧</mi><mo>=</mo><mo stretchy="false" form="prefix">(</mo><msub><mi>n</mi><mn>1</mn></msub><mo>,</mo><mi></mi><mo>,</mo><msub><mi>n</mi><mi>K</mi></msub><mo stretchy="false" form="postfix">)</mo></mrow><annotation encoding="application/x-tex">\boldsymbol{n} = (n_1, \ldots, n_K)</annotation></semantics></math>
be the observed isolate counts per species.</li>
</ul>
<p>Then the posterior incidence is:</p>
<p><math display="block" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>p</mi><mo></mo><mtext mathvariant="normal">Dirichlet</mtext><mo stretchy="false" form="prefix">(</mo><msub><mi>α</mi><mn>1</mn></msub><mo>+</mo><msub><mi>n</mi><mn>1</mn></msub><mo>,</mo><mi></mi><mo>,</mo><msub><mi>α</mi><mi>K</mi></msub><mo>+</mo><msub><mi>n</mi><mi>K</mi></msub><mo stretchy="false" form="postfix">)</mo></mrow><annotation encoding="application/x-tex">p \sim \text{Dirichlet}(\alpha_1 + n_1, \ldots, \alpha_K + n_K)</annotation></semantics></math></p>
<p><math display="block" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>𝐩</mi><mo></mo><mtext mathvariant="normal">Dirichlet</mtext><mo stretchy="false" form="prefix">(</mo><msub><mi>α</mi><mn>1</mn></msub><mo>+</mo><msub><mi>n</mi><mn>1</mn></msub><mo>,</mo><mi></mi><mo>,</mo><msub><mi>α</mi><mi>K</mi></msub><mo>+</mo><msub><mi>n</mi><mi>K</mi></msub><mo stretchy="false" form="postfix">)</mo></mrow><annotation encoding="application/x-tex">\boldsymbol{p} \sim \text{Dirichlet}(\alpha_1 + n_1, \ldots, \alpha_K + n_K)</annotation></semantics></math></p>
<p>To simulate from this, we use:</p>
<p><math display="block" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><msub><mi>x</mi><mi>i</mi></msub><mo></mo><mtext mathvariant="normal">Gamma</mtext><mo stretchy="false" form="prefix">(</mo><msub><mi>α</mi><mi>i</mi></msub><mo>+</mo><msub><mi>n</mi><mi>i</mi></msub><mo>,</mo><mspace width="0.222em"></mspace><mn>1</mn><mo stretchy="false" form="postfix">)</mo><mo>,</mo><mspace width="1.0em"></mspace><msub><mi>p</mi><mi>i</mi></msub><mo>=</mo><mfrac><msub><mi>x</mi><mi>i</mi></msub><mrow><munderover><mo></mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>K</mi></munderover><msub><mi>x</mi><mi>j</mi></msub></mrow></mfrac></mrow><annotation encoding="application/x-tex">x_i \sim \text{Gamma}(\alpha_i + n_i,\ 1), \quad p_i = \frac{x_i}{\sum_{j=1}^{K} x_j}</annotation></semantics></math></p>
<p>The Dirichlet is the conjugate prior for multinomial data. With the
non-informative prior
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mtext mathvariant="normal">Dirichlet</mtext><mo stretchy="false" form="prefix">(</mo><mn>1</mn><mo>,</mo><mn>1</mn><mo>,</mo><mi></mi><mo>,</mo><mn>1</mn><mo stretchy="false" form="postfix">)</mo></mrow><annotation encoding="application/x-tex">\text{Dirichlet}(1, 1, \ldots, 1)</annotation></semantics></math>,
the posterior is dominated by the data once sample sizes are reasonable.
With small samples, the posterior is appropriately more diffuse,
reflecting genuine uncertainty, and the resulting credible intervals
will be wider.</p>
</div>
<div class="section level3">
<h3 id="susceptibility">Susceptibility<a class="anchor" aria-label="anchor" href="#susceptibility"></a>
</h3>
<p>Each pathogenregimen pair has a prior and data:</p>
<p>Each pathogen-regimen pair has a prior and observed data:</p>
<ul>
<li>Prior:
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mtext mathvariant="normal">Beta</mtext><mo stretchy="false" form="prefix">(</mo><msub><mi>α</mi><mn>0</mn></msub><mo>,</mo><msub><mi>β</mi><mn>0</mn></msub><mo stretchy="false" form="postfix">)</mo></mrow><annotation encoding="application/x-tex">\text{Beta}(\alpha_0, \beta_0)</annotation></semantics></math>,
with default
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><msub><mi>α</mi><mn>0</mn></msub><mo>=</mo><msub><mi>β</mi><mn>0</mn></msub><mo>=</mo><mn>1</mn></mrow><annotation encoding="application/x-tex">\alpha_0 = \beta_0 = 1</annotation></semantics></math>
</li>
<li>Default prior:
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mtext mathvariant="normal">Beta</mtext><mo stretchy="false" form="prefix">(</mo><mn>0.5</mn><mo>,</mo><mn>0.5</mn><mo stretchy="false" form="postfix">)</mo></mrow><annotation encoding="application/x-tex">\text{Beta}(0.5, 0.5)</annotation></semantics></math>
(Jeffreys prior)</li>
<li>Intrinsically resistant pairs:
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mtext mathvariant="normal">Beta</mtext><mo stretchy="false" form="prefix">(</mo><mn>1</mn><mo>,</mo><mn>9999</mn><mo stretchy="false" form="postfix">)</mo></mrow><annotation encoding="application/x-tex">\text{Beta}(1, 9999)</annotation></semantics></math>,
forcing near-zero susceptibility regardless of observed data (based on
EUCAST Expected Resistant Phenotypes)</li>
<li>Data:
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mi>S</mi><annotation encoding="application/x-tex">S</annotation></semantics></math>
susceptible out of
@@ -224,27 +244,76 @@ I (intermediate [CLSI], or susceptible, increased exposure
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>𝐩</mi><mo></mo><mtext mathvariant="normal">Dirichlet</mtext></mrow><annotation encoding="application/x-tex">\boldsymbol{p} \sim \text{Dirichlet}</annotation></semantics></math>
</li>
<li>Simulate susceptibility:
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><msub><mi>θ</mi><mi>i</mi></msub><mo></mo><mtext mathvariant="normal">Beta</mtext><mo stretchy="false" form="prefix">(</mo><mn>1</mn><mo>+</mo><msub><mi>S</mi><mi>i</mi></msub><mo>,</mo><mspace width="0.222em"></mspace><mn>1</mn><mo>+</mo><msub><mi>R</mi><mi>i</mi></msub><mo stretchy="false" form="postfix">)</mo></mrow><annotation encoding="application/x-tex">\theta_i \sim \text{Beta}(1 + S_i,\ 1 + R_i)</annotation></semantics></math>
<math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><msub><mi>θ</mi><mi>i</mi></msub><mo></mo><mtext mathvariant="normal">Beta</mtext><mo stretchy="false" form="prefix">(</mo><msub><mi>α</mi><mn>0</mn></msub><mo>+</mo><msub><mi>S</mi><mi>i</mi></msub><mo>,</mo><mspace width="0.222em"></mspace><msub><mi>β</mi><mn>0</mn></msub><mo>+</mo><msub><mi>N</mi><mi>i</mi></msub><mo></mo><msub><mi>S</mi><mi>i</mi></msub><mo stretchy="false" form="postfix">)</mo></mrow><annotation encoding="application/x-tex">\theta_i \sim \text{Beta}(\alpha_0 + S_i,\ \beta_0 + N_i - S_i)</annotation></semantics></math>
</li>
<li>Combine:</li>
</ol>
<p><math display="block" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mtext mathvariant="normal">Coverage</mtext><mo>=</mo><munderover><mo></mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>K</mi></munderover><msub><mi>p</mi><mi>i</mi></msub><mo></mo><msub><mi>θ</mi><mi>i</mi></msub></mrow><annotation encoding="application/x-tex">\text{Coverage} = \sum_{i=1}^{K} p_i \cdot \theta_i</annotation></semantics></math></p>
<p>Repeat this simulation (e.g. 1000×) and summarise:</p>
<p>Repeat this simulation (e.g., 1000 times) and summarise:</p>
<ul>
<li>
<strong>Mean</strong> = expected coverage</li>
<li>
<strong>Quantiles</strong> = credible interval</li>
<strong>Quantiles</strong> = credible interval (95% by default)</li>
</ul>
<p>Because each simulation draws from the full posterior, the resulting
distribution of coverage estimates naturally captures the joint
uncertainty in both pathogen incidence and susceptibility. The credible
interval tells you how confident you can be in the coverage estimate,
something a traditional antibiogram never provides.</p>
</div>
</div>
<div class="section level2">
<h2 id="when-to-use-wisca-vs--traditional-antibiograms">When to use WISCA vs. traditional antibiograms<a class="anchor" aria-label="anchor" href="#when-to-use-wisca-vs--traditional-antibiograms"></a>
</h2>
<table class="table">
<thead><tr class="header">
<th>Goal</th>
<th>Recommended approach</th>
</tr></thead>
<tbody>
<tr class="odd">
<td>Guide empirical therapy decisions</td>
<td><strong>WISCA</strong></td>
</tr>
<tr class="even">
<td>Compare regimens for a syndrome</td>
<td><strong>WISCA</strong></td>
</tr>
<tr class="odd">
<td>Evaluate combination regimens</td>
<td><strong>WISCA</strong></td>
</tr>
<tr class="even">
<td>Antimicrobial stewardship (A-team)</td>
<td><strong>WISCA</strong></td>
</tr>
<tr class="odd">
<td>Track resistance trends per species</td>
<td>Traditional / Combination</td>
</tr>
<tr class="even">
<td>AMR surveillance reporting</td>
<td>Traditional / Syndromic</td>
</tr>
<tr class="odd">
<td>Understand species-level epidemiology</td>
<td>Traditional</td>
</tr>
</tbody>
</table>
<p>In short: if the end goal involves a <em>patient</em> who does not
yet have a culture result, WISCA is the appropriate tool. If the end
goal is <em>surveillance</em> of resistance at the species level, the
traditional antibiogram remains fit for purpose.</p>
</div>
<div class="section level2">
<h2 id="practical-use-in-the-amr-package">Practical use in the <code>AMR</code> package<a class="anchor" aria-label="anchor" href="#practical-use-in-the-amr-package"></a>
</h2>
<div class="section level3">
<h3 id="prepare-data-and-simulate-synthetic-syndrome">Prepare data and simulate synthetic syndrome<a class="anchor" aria-label="anchor" href="#prepare-data-and-simulate-synthetic-syndrome"></a>
<h3 id="prepare-data">Prepare data<a class="anchor" aria-label="anchor" href="#prepare-data"></a>
</h3>
<div class="sourceCode" id="cb2"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb1"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="kw"><a href="https://rdrr.io/r/base/library.html" class="external-link">library</a></span><span class="op">(</span><span class="va"><a href="https://amr-for-r.org">AMR</a></span><span class="op">)</span></span>
<span><span class="va">data</span> <span class="op">&lt;-</span> <span class="va">example_isolates</span></span>
<span></span>
@@ -271,13 +340,13 @@ I (intermediate [CLSI], or susceptible, increased exposure
<span><span class="co">#&gt; <span style="color: #949494;"># TCY &lt;sir&gt;, TGC &lt;sir&gt;, DOX &lt;sir&gt;, ERY &lt;sir&gt;, CLI &lt;sir&gt;, AZM &lt;sir&gt;,</span></span></span>
<span><span class="co">#&gt; <span style="color: #949494;"># IPM &lt;sir&gt;, MEM &lt;sir&gt;, MTR &lt;sir&gt;, CHL &lt;sir&gt;, COL &lt;sir&gt;, MUP &lt;sir&gt;, …</span></span></span>
<span></span>
<span><span class="co"># Add a fake syndrome column</span></span>
<span><span class="va">data</span><span class="op">$</span><span class="va">syndrome</span> <span class="op">&lt;-</span> <span class="fu"><a href="https://rdrr.io/r/base/ifelse.html" class="external-link">ifelse</a></span><span class="op">(</span><span class="va">data</span><span class="op">$</span><span class="va">mo</span> <span class="op"><a href="../reference/like.html">%like%</a></span> <span class="st">"coli"</span>, <span class="st">"UTI"</span>, <span class="st">"No UTI"</span><span class="op">)</span></span></code></pre></div>
<span><span class="co"># Add a synthetic syndrome column for demonstration</span></span>
<span><span class="va">data</span><span class="op">$</span><span class="va">syndrome</span> <span class="op">&lt;-</span> <span class="fu"><a href="https://rdrr.io/r/base/ifelse.html" class="external-link">ifelse</a></span><span class="op">(</span><span class="va">data</span><span class="op">$</span><span class="va">mo</span> <span class="op"><a href="../reference/like.html">%like%</a></span> <span class="st">"coli"</span>, <span class="st">"UTI"</span>, <span class="st">"Non-UTI"</span><span class="op">)</span></span></code></pre></div>
</div>
<div class="section level3">
<h3 id="basic-wisca-antibiogram">Basic WISCA antibiogram<a class="anchor" aria-label="anchor" href="#basic-wisca-antibiogram"></a>
<h3 id="basic-wisca">Basic WISCA<a class="anchor" aria-label="anchor" href="#basic-wisca"></a>
</h3>
<div class="sourceCode" id="cb3"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb2"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="../reference/antibiogram.html">wisca</a></span><span class="op">(</span><span class="va">data</span>,</span>
<span> antimicrobials <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"AMC"</span>, <span class="st">"CIP"</span>, <span class="st">"GEN"</span><span class="op">)</span></span>
<span><span class="op">)</span></span></code></pre></div>
@@ -288,16 +357,19 @@ I (intermediate [CLSI], or susceptible, increased exposure
<th align="left">Gentamicin</th>
</tr></thead>
<tbody><tr class="odd">
<td align="left">73.7% (71.7-75.8%)</td>
<td align="left">77% (74.3-79.4%)</td>
<td align="left">72.8% (70.7-74.8%)</td>
<td align="left">74.2% (72.1-76.1%)</td>
<td align="left">78.4% (75.6-81.1%)</td>
<td align="left">72.5% (70.4-74.6%)</td>
</tr></tbody>
</table>
</div>
<div class="section level3">
<h3 id="use-combination-regimens">Use combination regimens<a class="anchor" aria-label="anchor" href="#use-combination-regimens"></a>
</h3>
<div class="sourceCode" id="cb4"><pre class="downlit sourceCode r">
<p>Combination regimens are specified with a <code>+</code> separator.
WISCA evaluates whether <em>at least one</em> agent in the combination
covers the pathogen:</p>
<div class="sourceCode" id="cb3"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="../reference/antibiogram.html">wisca</a></span><span class="op">(</span><span class="va">data</span>,</span>
<span> antimicrobials <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"AMC"</span>, <span class="st">"AMC + CIP"</span>, <span class="st">"AMC + GEN"</span><span class="op">)</span></span>
<span><span class="op">)</span></span></code></pre></div>
@@ -313,16 +385,18 @@ I (intermediate [CLSI], or susceptible, increased exposure
<th align="left">Amoxicillin/clavulanic acid + Gentamicin</th>
</tr></thead>
<tbody><tr class="odd">
<td align="left">73.8% (71.8-75.7%)</td>
<td align="left">87.5% (85.9-89%)</td>
<td align="left">89.7% (88.2-91.1%)</td>
<td align="left">74.2% (72.2-76.1%)</td>
<td align="left">88.8% (87.2-90.4%)</td>
<td align="left">90.8% (89.4-92.2%)</td>
</tr></tbody>
</table>
</div>
<div class="section level3">
<h3 id="stratify-by-syndrome">Stratify by syndrome<a class="anchor" aria-label="anchor" href="#stratify-by-syndrome"></a>
</h3>
<div class="sourceCode" id="cb5"><pre class="downlit sourceCode r">
<p>Use <code>syndromic_group</code> to produce separate WISCA estimates
per clinical stratum. You can pass a column name or any expression:</p>
<div class="sourceCode" id="cb4"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="../reference/antibiogram.html">wisca</a></span><span class="op">(</span><span class="va">data</span>,</span>
<span> antimicrobials <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"AMC"</span>, <span class="st">"AMC + CIP"</span>, <span class="st">"AMC + GEN"</span><span class="op">)</span>,</span>
<span> syndromic_group <span class="op">=</span> <span class="st">"syndrome"</span></span>
@@ -342,22 +416,22 @@ I (intermediate [CLSI], or susceptible, increased exposure
</tr></thead>
<tbody>
<tr class="odd">
<td align="left">No UTI</td>
<td align="left">70.1% (67.8-72.3%)</td>
<td align="left">85.2% (83.1-87.2%)</td>
<td align="left">87.1% (85.3-88.7%)</td>
<td align="left">Non-UTI</td>
<td align="left">70.3% (67.9-72.7%)</td>
<td align="left">86.8% (84.9-88.7%)</td>
<td align="left">88.4% (86.4-90.2%)</td>
</tr>
<tr class="even">
<td align="left">UTI</td>
<td align="left">80.9% (77.7-83.8%)</td>
<td align="left">88.2% (85.7-90.5%)</td>
<td align="left">90.9% (88.7-93%)</td>
<td align="left">80.3% (77-83.3%)</td>
<td align="left">88.4% (85.7-90.8%)</td>
<td align="left">91% (88.3-93.3%)</td>
</tr>
</tbody>
</table>
<p>The <code>AMR</code> package is available in 28 languages, which can
all be used for the <code><a href="../reference/antibiogram.html">wisca()</a></code> function too:</p>
<div class="sourceCode" id="cb6"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb5"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="../reference/antibiogram.html">wisca</a></span><span class="op">(</span><span class="va">data</span>,</span>
<span> antimicrobials <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">"AMC"</span>, <span class="st">"AMC + CIP"</span>, <span class="st">"AMC + GEN"</span><span class="op">)</span>,</span>
<span> syndromic_group <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/grep.html" class="external-link">gsub</a></span><span class="op">(</span><span class="st">"UTI"</span>, <span class="st">"UCI"</span>, <span class="va">data</span><span class="op">$</span><span class="va">syndrome</span><span class="op">)</span>,</span>
@@ -378,20 +452,36 @@ all be used for the <code><a href="../reference/antibiogram.html">wisca()</a></c
</tr></thead>
<tbody>
<tr class="odd">
<td align="left">No UCI</td>
<td align="left">70% (67.8-72.4%)</td>
<td align="left">85.3% (83.3-87.2%)</td>
<td align="left">87% (85.3-88.8%)</td>
<td align="left">Non-UCI</td>
<td align="left">70.4% (68-72.8%)</td>
<td align="left">86.7% (84.6-88.7%)</td>
<td align="left">88.5% (86.5-90.2%)</td>
</tr>
<tr class="even">
<td align="left">UCI</td>
<td align="left">80.9% (77.7-83.9%)</td>
<td align="left">88.2% (85.5-90.6%)</td>
<td align="left">90.9% (88.7-93%)</td>
<td align="left">80.3% (77.2-83.5%)</td>
<td align="left">88.4% (85.5-90.8%)</td>
<td align="left">91% (88.4-93.1%)</td>
</tr>
</tbody>
</table>
</div>
<div class="section level3">
<h3 id="interpreting-the-output">Interpreting the output<a class="anchor" aria-label="anchor" href="#interpreting-the-output"></a>
</h3>
<p>Each row shows the estimated empirical coverage for a regimen, with a
95% credible interval. When comparing regimens:</p>
<ul>
<li>
<strong>Overlapping credible intervals</strong> mean there is no
statistically significant difference in coverage. If a narrower-spectrum
regimen overlaps with a broader one, the narrower-spectrum option can be
preferred on stewardship grounds.</li>
<li>
<strong>Non-overlapping credible intervals</strong> indicate a
clinically meaningful difference in coverage.</li>
</ul>
</div>
</div>
<div class="section level2">
<h2 id="sensible-defaults-which-can-be-customised">Sensible defaults, which can be customised<a class="anchor" aria-label="anchor" href="#sensible-defaults-which-can-be-customised"></a>
@@ -407,14 +497,43 @@ susceptible</li>
</ul>
</div>
<div class="section level2">
<h2 id="practical-considerations">Practical considerations<a class="anchor" aria-label="anchor" href="#practical-considerations"></a>
</h2>
<ul>
<li>
<strong>First isolates only</strong>: always deduplicate using
<code><a href="../reference/first_isolate.html">first_isolate()</a></code> before running WISCA. Repeat isolates
introduce bias.</li>
<li>
<strong>Pathogen selection</strong>: consider filtering with
<code><a href="../reference/top_n_microorganisms.html">top_n_microorganisms()</a></code>. Including rare contaminants
(e.g. CoNS without clinical context) can distort estimates and may
artificially lower coverage (Cook <em>et al.</em>, 2022).</li>
<li>
<strong>Sample size</strong>: coverage estimates become reliable
with approximately 100+ isolates. For smaller datasets, consider pooling
data from multiple sites, but only after verifying that pathogen
distributions are sufficiently similar (Bielicki <em>et al.</em>,
2016).</li>
<li>
<strong>Culture request bias</strong>: WISCA is only as good as the
data it is based on. If cultures are selectively requested (e.g. only
after treatment failure), the dataset will be biased towards resistant
isolates. A robust culture policy is essential for reliable
estimates.</li>
</ul>
</div>
<div class="section level2">
<h2 id="limitations">Limitations<a class="anchor" aria-label="anchor" href="#limitations"></a>
</h2>
<ul>
<li>It assumes your data are representative</li>
<li>No adjustment for patient-level covariates, although these could be
passed onto the <code>syndromic_group</code> argument</li>
<li>WISCA does not model resistance over time, you might want to use
<code>tidymodels</code> for that, for which we <a href="https://amr-for-r.org/articles/AMR_with_tidymodels.html">wrote a
<li>It assumes your data are representative of the patient population
you are treating</li>
<li>No direct adjustment for patient-level covariates, although these
can be passed onto the <code>syndromic_group</code> argument for
stratification</li>
<li>WISCA does not model resistance trends over time; for that, you
might want to use <code>tidymodels</code>, for which we <a href="https://amr-for-r.org/articles/AMR_with_tidymodels.html">wrote a
basic introduction</a>
</li>
</ul>
@@ -424,24 +543,48 @@ basic introduction</a>
</h2>
<p>WISCA enables:</p>
<ul>
<li>Empirical regimen comparison,</li>
<li>Syndrome-specific coverage estimation,</li>
<li>Fully probabilistic interpretation.</li>
<li>
<strong>Empirical regimen comparison</strong>, answering the
clinicians actual question</li>
<li>
<strong>Syndrome-specific coverage estimation</strong>, stratifiable
by any clinical variable</li>
<li>
<strong>Fully probabilistic interpretation</strong>, with credible
intervals that honestly communicate uncertainty</li>
</ul>
<p>It is available in the <code>AMR</code> package via either:</p>
<div class="sourceCode" id="cb7"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb6"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="../reference/antibiogram.html">wisca</a></span><span class="op">(</span><span class="va">...</span><span class="op">)</span></span>
<span></span>
<span><span class="fu"><a href="../reference/antibiogram.html">antibiogram</a></span><span class="op">(</span><span class="va">...</span>, wisca <span class="op">=</span> <span class="cn">TRUE</span><span class="op">)</span></span></code></pre></div>
</div>
<div class="section level2">
<h2 id="reference">Reference<a class="anchor" aria-label="anchor" href="#reference"></a>
<h2 id="references">References<a class="anchor" aria-label="anchor" href="#references"></a>
</h2>
<p>Bielicki, JA, et al. (2016). <em>Selecting appropriate empirical
antibiotic regimens for paediatric bloodstream infections: application
of a Bayesian decision model to local and pooled antimicrobial
resistance surveillance data.</em> <strong>J Antimicrob
Chemother</strong>. 71(3):794-802. <a href="https://doi.org/10.1093/jac/dkv397" class="external-link uri">https://doi.org/10.1093/jac/dkv397</a></p>
<ol style="list-style-type: decimal">
<li>Hebert C, Ridgway J, Vekhter B, Brown EC, Weber SG, Robicsek A.
Demonstration of the weighted-incidence syndromic combination
antibiogram: an empiric prescribing decision aid. <em>Infect Control
Hosp Epidemiol.</em> 2012;33(4):381-388. <a href="https://doi.org/10.1086/664768" class="external-link uri">https://doi.org/10.1086/664768</a>
</li>
<li>Randhawa V, Sarwar S, Walker S, Elligsen M, Palmay L, Daneman N.
Weighted-incidence syndromic combination antibiograms to guide empiric
treatment of critical care infections: a retrospective cohort study.
<em>Crit Care.</em> 2014;18(3):R112. <a href="https://doi.org/10.1186/cc13901" class="external-link uri">https://doi.org/10.1186/cc13901</a>
</li>
<li>Bielicki JA, Sharland M, Johnson AP, Henderson KL, Cromwell DA.
Selecting appropriate empirical antibiotic regimens for paediatric
bloodstream infections: application of a Bayesian decision model to
local and pooled antimicrobial resistance surveillance data. <em>J
Antimicrob Chemother.</em> 2016;71(3):794-802. <a href="https://doi.org/10.1093/jac/dkv397" class="external-link uri">https://doi.org/10.1093/jac/dkv397</a>
</li>
<li>Cook A, Sharland M, Yau Y, Bielicki J. Improving empiric antibiotic
prescribing in pediatric bloodstream infections: a potential application
of weighted-incidence syndromic combination antibiograms (WISCA).
<em>Expert Rev Anti Infect Ther.</em> 2022;20(3):445-456. <a href="https://doi.org/10.1080/14787210.2021.1967145" class="external-link uri">https://doi.org/10.1080/14787210.2021.1967145</a>
</li>
</ol>
</div>
</main><aside class="col-md-3"><nav id="toc" aria-label="Table of contents"><h2>On this page</h2>
</nav></aside>

View File

@@ -1,59 +1,61 @@
# Estimating Empirical Coverage with WISCA
> This explainer was largely written by our [AMR for R
> Assistant](https://chat.amr-for-r.org), a ChatGPT manually-trained
> model able to answer any question about the `AMR` package.
## Why WISCA?
## Introduction
When a clinician starts empirical antimicrobial therapy, the causative
pathogen is unknown. The question they need answered is not *“what
proportion of* E. coli *is susceptible to ciprofloxacin?“* but rather
*“what is the probability that this regimen will adequately cover
whatever pathogen turns out to be causing my patients infection?”*
Clinical guidelines for empirical antimicrobial therapy require
*probabilistic reasoning*: what is the chance that a regimen will cover
the likely infecting organisms, before culture results are available?
The traditional cumulative antibiogram, as standardised by CLSI M39,
cannot answer that question. It presents susceptibility percentages per
species per antibiotic, but:
This is the purpose of **WISCA**, or **Weighted-Incidence Syndromic
Combination Antibiogram**.
- **It fragments information by organism.** The clinician must mentally
combine susceptibility rates across multiple species, weighting by how
often each species causes the syndrome, a calculation nobody does at
the bedside.
- **It ignores pathogen incidence.** A species that causes 2% of
infections is given the same visual weight as one that causes 60%.
- **It does not evaluate combination regimens.** Much empirical therapy
consists of two or more agents, but the traditional antibiogram only
shows monotherapy per organism.
- **It provides no measure of uncertainty.** A reported “90%
susceptible” based on 50 isolates has a 95% confidence interval of
roughly 78-97% (Clopper-Pearson), yet the antibiogram presents it as a
point estimate without context.
WISCA is a Bayesian approach that integrates:
**WISCA** (Weighted-Incidence Syndromic Combination Antibiogram)
resolves all four limitations. It estimates the probability that a
regimen will provide adequate empirical coverage for a given infection
syndrome, weighted by local pathogen incidence, with full uncertainty
quantification via Bayesian inference.
- **Pathogen prevalence** (how often each species causes the syndrome),
- **Regimen susceptibility** (how often a regimen works *if* the
pathogen is known),
The concept was introduced by Hebert *et al.* (2012), who demonstrated
that traditional antibiogram susceptibility rates could be misleading:
ciprofloxacin appeared 84% effective against *E. coli* in the
traditional antibiogram, but WISCA revealed only 62% coverage for UTI
and 37% for abdominal infections, because enterococci (intrinsically
resistant) and other species contribute substantially to these
syndromes. Randhawa *et al.* (2014) showed that WISCA-guided regimen
selection could improve time-to-adequate-coverage on the ICU by over
40%. Bielicki *et al.* (2016) introduced the Bayesian framework now used
in this package, enabling credible intervals and multi-centre pooling.
Cook *et al.* (2022) applied it globally across 52 hospitals in 23
countries.
to estimate the **overall empirical coverage** of antimicrobial
regimens, with quantified uncertainty.
This vignette explains how WISCA works, why it is useful, and how to
apply it using the `AMR` package.
## Why traditional antibiograms fall short
A standard antibiogram gives you:
Species → Antibiotic → Susceptibility %
But clinicians dont know the species *a priori*. They need to choose a
regimen that covers the **likely pathogens**, without knowing which one
is present.
Traditional antibiograms calculate the susceptibility % as just the
number of resistant isolates divided by the total number of tested
isolates. Therefore, traditional antibiograms:
- Fragment information by organism,
- Do not weight by real-world prevalence,
- Do not account for combination therapy or sample size,
- Do not provide uncertainty.
## The idea of WISCA
## The idea
WISCA asks:
> “What is the **probability** that this regimen **will cover** the
> pathogen, given the syndrome?”
This means combining two things:
This means combining two quantities:
- **Incidence** of each pathogen in the syndrome,
- **Pathogen incidence** in the syndrome (how often each species causes
it),
- **Susceptibility** of each pathogen to the regimen.
We can write this as:
@@ -62,11 +64,11 @@ We can write this as:
\text{Coverage} = \sum_i (\text{Incidence}_i \times \text{Susceptibility}_i)
```
For example, suppose:
For example, suppose in your hospital:
- *E. coli* causes 60% of cases, and 90% of *E. coli* are susceptible to
- *E. coli* causes 60% of UTIs, and 90% of *E. coli* are susceptible to
a drug.
- *Klebsiella* causes 40% of cases, and 70% of *Klebsiella* are
- *Klebsiella* causes 40% of UTIs, and 70% of *Klebsiella* are
susceptible.
Then:
@@ -75,24 +77,32 @@ Then:
\text{Coverage} = (0.6 \times 0.9) + (0.4 \times 0.7) = 0.82
```
But in real data, incidence and susceptibility are **estimated from
samples**, so they carry uncertainty. WISCA models this
**probabilistically**, using conjugate Bayesian distributions.
That 82% is a far more clinically meaningful number than the
species-level “90% of *E. coli*” and “70% of *Klebsiella*” reported
separately in a traditional antibiogram, because it directly answers the
question the clinician actually faces.
## The Bayesian engine behind WISCA
But in real data, both incidence and susceptibility are **estimated from
finite samples**, so they carry uncertainty. A sample of 50 isolates is
not a census. WISCA models this uncertainty **probabilistically**, using
conjugate Bayesian distributions.
## The Bayesian engine
### Pathogen incidence
Let:
- $`K`$ be the number of pathogens,
- $`\alpha = (1, 1, \ldots, 1)`$ be a **Dirichlet** prior (uniform),
- $`n = (n_1, \ldots, n_K)`$ be the observed counts per species.
- $`\boldsymbol{\alpha} = (1, 1, \ldots, 1)`$ be a $`\text{Dirichlet}`$
prior (uniform, non-informative),
- $`\boldsymbol{n} = (n_1, \ldots, n_K)`$ be the observed isolate counts
per species.
Then the posterior incidence is:
``` math
p \sim \text{Dirichlet}(\alpha_1 + n_1, \ldots, \alpha_K + n_K)
\boldsymbol{p} \sim \text{Dirichlet}(\alpha_1 + n_1, \ldots, \alpha_K + n_K)
```
To simulate from this, we use:
@@ -101,12 +111,21 @@ To simulate from this, we use:
x_i \sim \text{Gamma}(\alpha_i + n_i,\ 1), \quad p_i = \frac{x_i}{\sum_{j=1}^{K} x_j}
```
The Dirichlet is the conjugate prior for multinomial data. With the
non-informative prior $`\text{Dirichlet}(1, 1, \ldots, 1)`$, the
posterior is dominated by the data once sample sizes are reasonable.
With small samples, the posterior is appropriately more diffuse,
reflecting genuine uncertainty, and the resulting credible intervals
will be wider.
### Susceptibility
Each pathogenregimen pair has a prior and data:
Each pathogen-regimen pair has a prior and observed data:
- Prior: $`\text{Beta}(\alpha_0, \beta_0)`$, with default
$`\alpha_0 = \beta_0 = 1`$
- Default prior: $`\text{Beta}(0.5, 0.5)`$ (Jeffreys prior)
- Intrinsically resistant pairs: $`\text{Beta}(1, 9999)`$, forcing
near-zero susceptibility regardless of observed data (based on EUCAST
Expected Resistant Phenotypes)
- Data: $`S`$ susceptible out of $`N`$ tested
The $`S`$ category could also include values SDD (susceptible,
@@ -126,21 +145,44 @@ Putting it together:
1. Simulate pathogen incidence:
$`\boldsymbol{p} \sim \text{Dirichlet}`$
2. Simulate susceptibility:
$`\theta_i \sim \text{Beta}(1 + S_i,\ 1 + R_i)`$
$`\theta_i \sim \text{Beta}(\alpha_0 + S_i,\ \beta_0 + N_i - S_i)`$
3. Combine:
``` math
\text{Coverage} = \sum_{i=1}^{K} p_i \cdot \theta_i
```
Repeat this simulation (e.g. 1000×) and summarise:
Repeat this simulation (e.g., 1000 times) and summarise:
- **Mean** = expected coverage
- **Quantiles** = credible interval
- **Quantiles** = credible interval (95% by default)
Because each simulation draws from the full posterior, the resulting
distribution of coverage estimates naturally captures the joint
uncertainty in both pathogen incidence and susceptibility. The credible
interval tells you how confident you can be in the coverage estimate,
something a traditional antibiogram never provides.
## When to use WISCA vs. traditional antibiograms
| Goal | Recommended approach |
|---------------------------------------|---------------------------|
| Guide empirical therapy decisions | **WISCA** |
| Compare regimens for a syndrome | **WISCA** |
| Evaluate combination regimens | **WISCA** |
| Antimicrobial stewardship (A-team) | **WISCA** |
| Track resistance trends per species | Traditional / Combination |
| AMR surveillance reporting | Traditional / Syndromic |
| Understand species-level epidemiology | Traditional |
In short: if the end goal involves a *patient* who does not yet have a
culture result, WISCA is the appropriate tool. If the end goal is
*surveillance* of resistance at the species level, the traditional
antibiogram remains fit for purpose.
## Practical use in the `AMR` package
### Prepare data and simulate synthetic syndrome
### Prepare data
``` r
@@ -170,11 +212,11 @@ data
#> # TCY <sir>, TGC <sir>, DOX <sir>, ERY <sir>, CLI <sir>, AZM <sir>,
#> # IPM <sir>, MEM <sir>, MTR <sir>, CHL <sir>, COL <sir>, MUP <sir>, …
# Add a fake syndrome column
data$syndrome <- ifelse(data$mo %like% "coli", "UTI", "No UTI")
# Add a synthetic syndrome column for demonstration
data$syndrome <- ifelse(data$mo %like% "coli", "UTI", "Non-UTI")
```
### Basic WISCA antibiogram
### Basic WISCA
``` r
@@ -183,12 +225,15 @@ wisca(data,
)
```
| Amoxicillin/clavulanic acid | Ciprofloxacin | Gentamicin |
|:----------------------------|:-----------------|:-------------------|
| 73.7% (71.7-75.8%) | 77% (74.3-79.4%) | 72.8% (70.7-74.8%) |
| Amoxicillin/clavulanic acid | Ciprofloxacin | Gentamicin |
|:----------------------------|:-------------------|:-------------------|
| 74.2% (72.1-76.1%) | 78.4% (75.6-81.1%) | 72.5% (70.4-74.6%) |
### Use combination regimens
Combination regimens are specified with a `+` separator. WISCA evaluates
whether *at least one* agent in the combination covers the pathogen:
``` r
wisca(data,
@@ -198,10 +243,13 @@ wisca(data,
| Amoxicillin/clavulanic acid | Amoxicillin/clavulanic acid + Ciprofloxacin | Amoxicillin/clavulanic acid + Gentamicin |
|:---|:---|:---|
| 73.8% (71.8-75.7%) | 87.5% (85.9-89%) | 89.7% (88.2-91.1%) |
| 74.2% (72.2-76.1%) | 88.8% (87.2-90.4%) | 90.8% (89.4-92.2%) |
### Stratify by syndrome
Use `syndromic_group` to produce separate WISCA estimates per clinical
stratum. You can pass a column name or any expression:
``` r
wisca(data,
@@ -212,8 +260,8 @@ wisca(data,
| Syndromic Group | Amoxicillin/clavulanic acid | Amoxicillin/clavulanic acid + Ciprofloxacin | Amoxicillin/clavulanic acid + Gentamicin |
|:---|:---|:---|:---|
| No UTI | 70.1% (67.8-72.3%) | 85.2% (83.1-87.2%) | 87.1% (85.3-88.7%) |
| UTI | 80.9% (77.7-83.8%) | 88.2% (85.7-90.5%) | 90.9% (88.7-93%) |
| Non-UTI | 70.3% (67.9-72.7%) | 86.8% (84.9-88.7%) | 88.4% (86.4-90.2%) |
| UTI | 80.3% (77-83.3%) | 88.4% (85.7-90.8%) | 91% (88.3-93.3%) |
The `AMR` package is available in 28 languages, which can all be used
for the [`wisca()`](https://amr-for-r.org/reference/antibiogram.md)
@@ -230,8 +278,20 @@ wisca(data,
| Grupo sindrómico | Amoxicilina/ácido clavulánico | Amoxicilina/ácido clavulánico + Ciprofloxacina | Amoxicilina/ácido clavulánico + Gentamicina |
|:---|:---|:---|:---|
| No UCI | 70% (67.8-72.4%) | 85.3% (83.3-87.2%) | 87% (85.3-88.8%) |
| UCI | 80.9% (77.7-83.9%) | 88.2% (85.5-90.6%) | 90.9% (88.7-93%) |
| Non-UCI | 70.4% (68-72.8%) | 86.7% (84.6-88.7%) | 88.5% (86.5-90.2%) |
| UCI | 80.3% (77.2-83.5%) | 88.4% (85.5-90.8%) | 91% (88.4-93.1%) |
### Interpreting the output
Each row shows the estimated empirical coverage for a regimen, with a
95% credible interval. When comparing regimens:
- **Overlapping credible intervals** mean there is no statistically
significant difference in coverage. If a narrower-spectrum regimen
overlaps with a broader one, the narrower-spectrum option can be
preferred on stewardship grounds.
- **Non-overlapping credible intervals** indicate a clinically
meaningful difference in coverage.
## Sensible defaults, which can be customised
@@ -239,22 +299,45 @@ wisca(data,
- `conf_interval = 0.95`: coverage interval width
- `combine_SI = TRUE`: count “I” and “SDD” as susceptible
## Practical considerations
- **First isolates only**: always deduplicate using
[`first_isolate()`](https://amr-for-r.org/reference/first_isolate.md)
before running WISCA. Repeat isolates introduce bias.
- **Pathogen selection**: consider filtering with
[`top_n_microorganisms()`](https://amr-for-r.org/reference/top_n_microorganisms.md).
Including rare contaminants (e.g. CoNS without clinical context) can
distort estimates and may artificially lower coverage (Cook *et al.*,
2022).
- **Sample size**: coverage estimates become reliable with approximately
100+ isolates. For smaller datasets, consider pooling data from
multiple sites, but only after verifying that pathogen distributions
are sufficiently similar (Bielicki *et al.*, 2016).
- **Culture request bias**: WISCA is only as good as the data it is
based on. If cultures are selectively requested (e.g. only after
treatment failure), the dataset will be biased towards resistant
isolates. A robust culture policy is essential for reliable estimates.
## Limitations
- It assumes your data are representative
- No adjustment for patient-level covariates, although these could be
passed onto the `syndromic_group` argument
- WISCA does not model resistance over time, you might want to use
`tidymodels` for that, for which we [wrote a basic
- It assumes your data are representative of the patient population you
are treating
- No direct adjustment for patient-level covariates, although these can
be passed onto the `syndromic_group` argument for stratification
- WISCA does not model resistance trends over time; for that, you might
want to use `tidymodels`, for which we [wrote a basic
introduction](https://amr-for-r.org/articles/AMR_with_tidymodels.html)
## Summary
WISCA enables:
- Empirical regimen comparison,
- Syndrome-specific coverage estimation,
- Fully probabilistic interpretation.
- **Empirical regimen comparison**, answering the clinicians actual
question
- **Syndrome-specific coverage estimation**, stratifiable by any
clinical variable
- **Fully probabilistic interpretation**, with credible intervals that
honestly communicate uncertainty
It is available in the `AMR` package via either:
@@ -265,10 +348,26 @@ wisca(...)
antibiogram(..., wisca = TRUE)
```
## Reference
## References
Bielicki, JA, et al. (2016). *Selecting appropriate empirical antibiotic
regimens for paediatric bloodstream infections: application of a
Bayesian decision model to local and pooled antimicrobial resistance
surveillance data.* **J Antimicrob Chemother**. 71(3):794-802.
<https://doi.org/10.1093/jac/dkv397>
1. Hebert C, Ridgway J, Vekhter B, Brown EC, Weber SG, Robicsek A.
Demonstration of the weighted-incidence syndromic combination
antibiogram: an empiric prescribing decision aid. *Infect Control
Hosp Epidemiol.* 2012;33(4):381-388.
<https://doi.org/10.1086/664768>
2. Randhawa V, Sarwar S, Walker S, Elligsen M, Palmay L, Daneman N.
Weighted-incidence syndromic combination antibiograms to guide
empiric treatment of critical care infections: a retrospective
cohort study. *Crit Care.* 2014;18(3):R112.
<https://doi.org/10.1186/cc13901>
3. Bielicki JA, Sharland M, Johnson AP, Henderson KL, Cromwell DA.
Selecting appropriate empirical antibiotic regimens for paediatric
bloodstream infections: application of a Bayesian decision model to
local and pooled antimicrobial resistance surveillance data. *J
Antimicrob Chemother.* 2016;71(3):794-802.
<https://doi.org/10.1093/jac/dkv397>
4. Cook A, Sharland M, Yau Y, Bielicki J. Improving empiric antibiotic
prescribing in pediatric bloodstream infections: a potential
application of weighted-incidence syndromic combination antibiograms
(WISCA). *Expert Rev Anti Infect Ther.* 2022;20(3):445-456.
<https://doi.org/10.1080/14787210.2021.1967145>

View File

@@ -12,8 +12,8 @@
<link rel="icon" sizes="any" href="../favicon.ico">
<link rel="manifest" href="../site.webmanifest">
<script src="../deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link href="../deps/bootstrap-5.3.1/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.1/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/bootstrap-5.3.8/bootstrap.min.css" rel="stylesheet">
<script src="../deps/bootstrap-5.3.8/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet">
<link href="../deps/Fira_Code-0.4.10/font.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet">
<link href="../deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet">
@@ -30,7 +30,7 @@
<a class="navbar-brand me-2" href="../index.html">AMR (for R)</a>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9057</small>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9061</small>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
@@ -80,7 +80,7 @@
<main id="main" class="col-md-9"><div class="page-header">
<img src="../logo.svg" class="logo" alt=""><h1>Download data sets for download / own use</h1>
<h4 data-toc-skip class="date">02 May 2026</h4>
<h4 data-toc-skip class="date">23 June 2026</h4>
<small class="dont-index">Source: <a href="https://github.com/msberends/AMR/blob/main/vignettes/datasets.Rmd" class="external-link"><code>vignettes/datasets.Rmd</code></a></small>
<div class="d-none name"><code>datasets.Rmd</code></div>
@@ -104,42 +104,43 @@ available in Python.</p>
<h2 id="microorganisms-full-microbial-taxonomy">
<code>microorganisms</code>: Full Microbial Taxonomy<a class="anchor" aria-label="anchor" href="#microorganisms-full-microbial-taxonomy"></a>
</h2>
<p>A data set with 78 679 rows and 26 columns, containing the following
column names:<br><em>mo</em>, <em>fullname</em>, <em>status</em>, <em>kingdom</em>,
<em>phylum</em>, <em>class</em>, <em>order</em>, <em>family</em>,
<em>genus</em>, <em>species</em>, <em>subspecies</em>, <em>rank</em>,
<em>ref</em>, <em>oxygen_tolerance</em>, <em>source</em>, <em>lpsn</em>,
<p>A data set with 96 982 rows and 28 columns, containing the following
column names:<br><em>mo</em>, <em>fullname</em>, <em>status</em>, <em>domain</em>,
<em>kingdom</em>, <em>phylum</em>, <em>class</em>, <em>order</em>,
<em>family</em>, <em>genus</em>, <em>species</em>, <em>subspecies</em>,
<em>rank</em>, <em>ref</em>, <em>oxygen_tolerance</em>,
<em>morphology</em>, <em>source</em>, <em>lpsn</em>,
<em>lpsn_parent</em>, <em>lpsn_renamed_to</em>, <em>mycobank</em>,
<em>mycobank_parent</em>, <em>mycobank_renamed_to</em>, <em>gbif</em>,
<em>gbif_parent</em>, <em>gbif_renamed_to</em>, <em>prevalence</em>, and
<em>snomed</em>.</p>
<p>This data set is in R available as <code>microorganisms</code>, after
you load the <code>AMR</code> package.</p>
<p>It was last updated on 18 September 2025 12:58:34 UTC. Find more info
<p>It was last updated on 22 June 2026 23:38:13 UTC. Find more info
about the contents, (scientific) source, and structure of this <a href="https://amr-for-r.org/reference/microorganisms.html">data set
here</a>.</p>
<p><strong>Direct download links:</strong></p>
<ul>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.rds" class="external-link">original
R Data Structure (RDS) file</a> (1.8 MB)<br>
R Data Structure (RDS) file</a> (2.2 MB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.txt" class="external-link">tab-separated
text file</a> (17.7 MB)<br>
text file</a> (23.1 MB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.xlsx" class="external-link">Microsoft
Excel workbook</a> (8.8 MB)<br>
Excel workbook</a> (11.4 MB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.feather" class="external-link">Apache
Feather file</a> (8.4 MB)<br>
Feather file</a> (11 MB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.parquet" class="external-link">Apache
Parquet file</a> (3.8 MB)<br>
Parquet file</a> (4.6 MB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.sav" class="external-link">IBM
SPSS Statistics data file</a> (28.4 MB)<br>
SPSS Statistics data file</a> (35.2 MB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.dta" class="external-link">Stata
DTA file</a> (89.5 MB)</li>
DTA file</a> (96.6 MB)</li>
</ul>
<p><strong>NOTE: The exported files for SPSS and Stata contain only the
first 50 SNOMED codes per record, as their file size would otherwise
@@ -157,41 +158,42 @@ all SNOMED codes as comma separated values.</p>
</tr></thead>
<tbody>
<tr class="odd">
<td align="center">(unknown kingdom)</td>
<td align="center">1</td>
<td align="center"></td>
<td align="center">20</td>
</tr>
<tr class="even">
<td align="center">Animalia</td>
<td align="center">1 628</td>
<td align="center">(unknown kingdom)</td>
<td align="center">8</td>
</tr>
<tr class="odd">
<td align="center">Animalia</td>
<td align="center">2 015</td>
</tr>
<tr class="even">
<td align="center">Archaea</td>
<td align="center">1 419</td>
<td align="center">150</td>
</tr>
<tr class="odd">
<td align="center">Bacillati</td>
<td align="center">24 200</td>
</tr>
<tr class="even">
<td align="center">Bacteria</td>
<td align="center">39 249</td>
</tr>
<tr class="odd">
<td align="center">Chromista</td>
<td align="center">178</td>
</tr>
<tr class="even">
<td align="center">Fungi</td>
<td align="center">28 137</td>
<td align="center">2</td>
</tr>
</tbody>
</table>
<p>First 6 rows when filtering on genus <em>Escherichia</em>:</p>
<table style="width:100%;" class="table">
<table class="table">
<colgroup>
<col width="4%">
<col width="6%">
<col width="5%">
<col width="2%">
<col width="2%">
<col width="3%">
<col width="3%">
<col width="4%">
<col width="4%">
<col width="3%">
<col width="4%">
<col width="2%">
<col width="3%">
@@ -199,6 +201,7 @@ all SNOMED codes as comma separated values.</p>
<col width="2%">
<col width="5%">
<col width="6%">
<col width="2%">
<col width="1%">
<col width="1%">
<col width="2%">
@@ -210,12 +213,13 @@ all SNOMED codes as comma separated values.</p>
<col width="2%">
<col width="3%">
<col width="2%">
<col width="10%">
<col width="9%">
</colgroup>
<thead><tr class="header">
<th align="center">mo</th>
<th align="center">fullname</th>
<th align="center">status</th>
<th align="center">domain</th>
<th align="center">kingdom</th>
<th align="center">phylum</th>
<th align="center">class</th>
@@ -227,6 +231,7 @@ all SNOMED codes as comma separated values.</p>
<th align="center">rank</th>
<th align="center">ref</th>
<th align="center">oxygen_tolerance</th>
<th align="center">morphology</th>
<th align="center">source</th>
<th align="center">lpsn</th>
<th align="center">lpsn_parent</th>
@@ -246,6 +251,7 @@ all SNOMED codes as comma separated values.</p>
<td align="center">Escherichia</td>
<td align="center">accepted</td>
<td align="center">Bacteria</td>
<td align="center">Pseudomonadati</td>
<td align="center">Pseudomonadota</td>
<td align="center">Gammaproteobacteria</td>
<td align="center">Enterobacterales</td>
@@ -256,6 +262,7 @@ all SNOMED codes as comma separated values.</p>
<td align="center">genus</td>
<td align="center">Castellani et al., 1919</td>
<td align="center">facultative anaerobe</td>
<td align="center">rods</td>
<td align="center">LPSN</td>
<td align="center">515602</td>
<td align="center">482</td>
@@ -263,8 +270,8 @@ all SNOMED codes as comma separated values.</p>
<td align="center"></td>
<td align="center"></td>
<td align="center"></td>
<td align="center"></td>
<td align="center">11158430</td>
<td align="center">CS33H</td>
<td align="center">CRYWR</td>
<td align="center"></td>
<td align="center">1</td>
<td align="center">407310004, 407251000, 407281008, …</td>
@@ -274,6 +281,7 @@ all SNOMED codes as comma separated values.</p>
<td align="center">Escherichia adecarboxylata</td>
<td align="center">synonym</td>
<td align="center">Bacteria</td>
<td align="center">Pseudomonadati</td>
<td align="center">Pseudomonadota</td>
<td align="center">Gammaproteobacteria</td>
<td align="center">Enterobacterales</td>
@@ -284,6 +292,7 @@ all SNOMED codes as comma separated values.</p>
<td align="center">species</td>
<td align="center">Leclerc, 1962</td>
<td align="center">likely facultative anaerobe</td>
<td align="center">rods</td>
<td align="center">LPSN</td>
<td align="center">776052</td>
<td align="center">515602</td>
@@ -291,9 +300,9 @@ all SNOMED codes as comma separated values.</p>
<td align="center"></td>
<td align="center"></td>
<td align="center"></td>
<td align="center"></td>
<td align="center"></td>
<td align="center"></td>
<td align="center">CS33J</td>
<td align="center">CS33H</td>
<td align="center">3SVX6</td>
<td align="center">1</td>
<td align="center"></td>
</tr>
@@ -302,6 +311,7 @@ all SNOMED codes as comma separated values.</p>
<td align="center">Escherichia albertii</td>
<td align="center">accepted</td>
<td align="center">Bacteria</td>
<td align="center">Pseudomonadati</td>
<td align="center">Pseudomonadota</td>
<td align="center">Gammaproteobacteria</td>
<td align="center">Enterobacterales</td>
@@ -312,6 +322,7 @@ all SNOMED codes as comma separated values.</p>
<td align="center">species</td>
<td align="center">Huys et al., 2003</td>
<td align="center">facultative anaerobe</td>
<td align="center">rods</td>
<td align="center">LPSN</td>
<td align="center">776053</td>
<td align="center">515602</td>
@@ -319,8 +330,8 @@ all SNOMED codes as comma separated values.</p>
<td align="center"></td>
<td align="center"></td>
<td align="center"></td>
<td align="center">5427575</td>
<td align="center"></td>
<td align="center">3BGTB</td>
<td align="center">CS33H</td>
<td align="center"></td>
<td align="center">1</td>
<td align="center">419388003</td>
@@ -330,6 +341,7 @@ all SNOMED codes as comma separated values.</p>
<td align="center">Escherichia blattae</td>
<td align="center">synonym</td>
<td align="center">Bacteria</td>
<td align="center">Pseudomonadati</td>
<td align="center">Pseudomonadota</td>
<td align="center">Gammaproteobacteria</td>
<td align="center">Enterobacterales</td>
@@ -340,6 +352,7 @@ all SNOMED codes as comma separated values.</p>
<td align="center">species</td>
<td align="center">Burgess et al., 1973</td>
<td align="center">likely facultative anaerobe</td>
<td align="center">rods</td>
<td align="center">LPSN</td>
<td align="center">776056</td>
<td align="center">515602</td>
@@ -347,9 +360,9 @@ all SNOMED codes as comma separated values.</p>
<td align="center"></td>
<td align="center"></td>
<td align="center"></td>
<td align="center"></td>
<td align="center"></td>
<td align="center"></td>
<td align="center">CS33K</td>
<td align="center">CS33H</td>
<td align="center">4X4P7</td>
<td align="center">1</td>
<td align="center"></td>
</tr>
@@ -358,6 +371,7 @@ all SNOMED codes as comma separated values.</p>
<td align="center">Escherichia coli</td>
<td align="center">accepted</td>
<td align="center">Bacteria</td>
<td align="center">Pseudomonadati</td>
<td align="center">Pseudomonadota</td>
<td align="center">Gammaproteobacteria</td>
<td align="center">Enterobacterales</td>
@@ -368,6 +382,7 @@ all SNOMED codes as comma separated values.</p>
<td align="center">species</td>
<td align="center">Castellani et al., 1919</td>
<td align="center">facultative anaerobe</td>
<td align="center">rods</td>
<td align="center">LPSN</td>
<td align="center">776057</td>
<td align="center">515602</td>
@@ -375,8 +390,8 @@ all SNOMED codes as comma separated values.</p>
<td align="center"></td>
<td align="center"></td>
<td align="center"></td>
<td align="center">11286021</td>
<td align="center"></td>
<td align="center">NT3L7</td>
<td align="center">CS33H</td>
<td align="center"></td>
<td align="center">1</td>
<td align="center">1095001000112106, 715307006, 737528008, …</td>
@@ -386,6 +401,7 @@ all SNOMED codes as comma separated values.</p>
<td align="center">Escherichia coli coli</td>
<td align="center">accepted</td>
<td align="center">Bacteria</td>
<td align="center">Pseudomonadati</td>
<td align="center">Pseudomonadota</td>
<td align="center">Gammaproteobacteria</td>
<td align="center">Enterobacterales</td>
@@ -396,6 +412,7 @@ all SNOMED codes as comma separated values.</p>
<td align="center">subspecies</td>
<td align="center"></td>
<td align="center"></td>
<td align="center"></td>
<td align="center">GBIF</td>
<td align="center"></td>
<td align="center">776057</td>
@@ -404,7 +421,7 @@ all SNOMED codes as comma separated values.</p>
<td align="center"></td>
<td align="center"></td>
<td align="center">12233256</td>
<td align="center">11286021</td>
<td align="center">NT3L7</td>
<td align="center"></td>
<td align="center">1</td>
<td align="center"></td>
@@ -424,8 +441,8 @@ column names:<br><em>ab</em>, <em>cid</em>, <em>name</em>, <em>group</em>, <em>a
<em>iv_ddd</em>, <em>iv_units</em>, and <em>loinc</em>.</p>
<p>This data set is in R available as <code>antimicrobials</code>, after
you load the <code>AMR</code> package.</p>
<p>It was last updated on 2 May 2026 12:56:26 UTC. Find more info about
the contents, (scientific) source, and structure of this <a href="https://amr-for-r.org/reference/antimicrobials.html">data set
<p>It was last updated on 23 June 2026 12:38:59 UTC. Find more info
about the contents, (scientific) source, and structure of this <a href="https://amr-for-r.org/reference/antimicrobials.html">data set
here</a>.</p>
<p><strong>Direct download links:</strong></p>
<ul>
@@ -595,14 +612,14 @@ inhibitors</td>
<code>clinical_breakpoints</code>: Interpretation from MIC values
&amp; disk diameters to SIR<a class="anchor" aria-label="anchor" href="#clinical_breakpoints-interpretation-from-mic-values-disk-diameters-to-sir"></a>
</h2>
<p>A data set with 45 730 rows and 14 columns, containing the following
<p>A data set with 45 555 rows and 14 columns, containing the following
column names:<br><em>guideline</em>, <em>type</em>, <em>host</em>, <em>method</em>,
<em>site</em>, <em>mo</em>, <em>rank_index</em>, <em>ab</em>,
<em>ref_tbl</em>, <em>disk_dose</em>, <em>breakpoint_S</em>,
<em>breakpoint_R</em>, <em>uti</em>, and <em>is_SDD</em>.</p>
<p>This data set is in R available as <code>clinical_breakpoints</code>,
after you load the <code>AMR</code> package.</p>
<p>It was last updated on 2 April 2026 09:42:19 UTC. Find more info
<p>It was last updated on 22 June 2026 23:38:13 UTC. Find more info
about the contents, (scientific) source, and structure of this <a href="https://amr-for-r.org/reference/clinical_breakpoints.html">data
set here</a>.</p>
<p><strong>Direct download links:</strong></p>
@@ -620,7 +637,7 @@ Excel workbook</a> (2.7 MB)<br>
Feather file</a> (2 MB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/clinical_breakpoints.parquet" class="external-link">Apache
Parquet file</a> (0.2 MB)<br>
Parquet file</a> (0.1 MB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/clinical_breakpoints.sav" class="external-link">IBM
SPSS Statistics data file</a> (7.5 MB)<br>
@@ -784,13 +801,13 @@ DTA file</a> (12.6 MB)</li>
<code>microorganisms.groups</code>: Species Groups and
Microbiological Complexes<a class="anchor" aria-label="anchor" href="#microorganisms-groups-species-groups-and-microbiological-complexes"></a>
</h2>
<p>A data set with 534 rows and 4 columns, containing the following
<p>A data set with 530 rows and 4 columns, containing the following
column names:<br><em>mo_group</em>, <em>mo</em>, <em>mo_group_name</em>, and
<em>mo_name</em>.</p>
<p>This data set is in R available as
<code>microorganisms.groups</code>, after you load the <code>AMR</code>
package.</p>
<p>It was last updated on 26 March 2025 16:19:17 UTC. Find more info
<p>It was last updated on 22 June 2026 23:38:13 UTC. Find more info
about the contents, (scientific) source, and structure of this <a href="https://amr-for-r.org/reference/microorganisms.groups.html">data
set here</a>.</p>
<p><strong>Direct download links:</strong></p>
@@ -802,7 +819,7 @@ R Data Structure (RDS) file</a> (6 kB)<br>
text file</a> (50 kB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.groups.xlsx" class="external-link">Microsoft
Excel workbook</a> (20 kB)<br>
Excel workbook</a> (19 kB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.groups.feather" class="external-link">Apache
Feather file</a> (19 kB)<br>
@@ -811,10 +828,10 @@ Feather file</a> (19 kB)<br>
Parquet file</a> (13 kB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.groups.sav" class="external-link">IBM
SPSS Statistics data file</a> (65 kB)<br>
SPSS Statistics data file</a> (64 kB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.groups.dta" class="external-link">Stata
DTA file</a> (83 kB)</li>
DTA file</a> (82 kB)</li>
</ul>
<p><strong>Example content</strong></p>
<table class="table">
@@ -876,11 +893,11 @@ DTA file</a> (83 kB)</li>
<code>intrinsic_resistant</code>: Intrinsic Bacterial
Resistance<a class="anchor" aria-label="anchor" href="#intrinsic_resistant-intrinsic-bacterial-resistance"></a>
</h2>
<p>A data set with 285 928 rows and 2 columns, containing the following
<p>A data set with 294 079 rows and 2 columns, containing the following
column names:<br><em>mo</em> and <em>ab</em>.</p>
<p>This data set is in R available as <code>intrinsic_resistant</code>,
after you load the <code>AMR</code> package.</p>
<p>It was last updated on 22 April 2026 06:16:44 UTC. Find more info
<p>It was last updated on 22 June 2026 23:38:13 UTC. Find more info
about the contents, (scientific) source, and structure of this <a href="https://amr-for-r.org/reference/intrinsic_resistant.html">data set
here</a>.</p>
<p><strong>Direct download links:</strong></p>
@@ -889,10 +906,10 @@ here</a>.</p>
R Data Structure (RDS) file</a> (0.1 MB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/intrinsic_resistant.txt" class="external-link">tab-separated
text file</a> (10.6 MB)<br>
text file</a> (10.9 MB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/intrinsic_resistant.xlsx" class="external-link">Microsoft
Excel workbook</a> (3.3 MB)<br>
Excel workbook</a> (3.1 MB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/intrinsic_resistant.feather" class="external-link">Apache
Feather file</a> (2.5 MB)<br>
@@ -901,10 +918,10 @@ Feather file</a> (2.5 MB)<br>
Parquet file</a> (0.3 MB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/intrinsic_resistant.sav" class="external-link">IBM
SPSS Statistics data file</a> (15.5 MB)<br>
SPSS Statistics data file</a> (16 MB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/intrinsic_resistant.dta" class="external-link">Stata
DTA file</a> (27.5 MB)</li>
DTA file</a> (28.6 MB)</li>
</ul>
<p><strong>Example content</strong></p>
<p>Example rows when filtering on <em>Enterobacter cloacae</em>:</p>
@@ -1810,17 +1827,17 @@ set here</a>.</p>
<h2 id="microorganisms-codes-common-laboratory-codes">
<code>microorganisms.codes</code>: Common Laboratory Codes<a class="anchor" aria-label="anchor" href="#microorganisms-codes-common-laboratory-codes"></a>
</h2>
<p>A data set with 6 050 rows and 2 columns, containing the following
<p>A data set with 6 029 rows and 2 columns, containing the following
column names:<br><em>code</em> and <em>mo</em>.</p>
<p>This data set is in R available as <code>microorganisms.codes</code>,
after you load the <code>AMR</code> package.</p>
<p>It was last updated on 30 March 2026 08:01:49 UTC. Find more info
<p>It was last updated on 22 June 2026 23:38:13 UTC. Find more info
about the contents, (scientific) source, and structure of this <a href="https://amr-for-r.org/reference/microorganisms.codes.html">data
set here</a>.</p>
<p><strong>Direct download links:</strong></p>
<ul>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.codes.rds" class="external-link">original
R Data Structure (RDS) file</a> (28 kB)<br>
R Data Structure (RDS) file</a> (27 kB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.codes.txt" class="external-link">tab-separated
text file</a> (0.1 MB)<br>
@@ -1832,7 +1849,7 @@ Excel workbook</a> (98 kB)<br>
Feather file</a> (0.1 MB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.codes.parquet" class="external-link">Apache
Parquet file</a> (69 kB)<br>
Parquet file</a> (68 kB)<br>
</li>
<li>Download as <a href="https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.codes.sav" class="external-link">IBM
SPSS Statistics data file</a> (0.2 MB)<br>

View File

@@ -15,44 +15,44 @@ laboratory information systems.
## `microorganisms`: Full Microbial Taxonomy
A data set with 78 679 rows and 26 columns, containing the following
A data set with 96 982 rows and 28 columns, containing the following
column names:
*mo*, *fullname*, *status*, *kingdom*, *phylum*, *class*, *order*,
*family*, *genus*, *species*, *subspecies*, *rank*, *ref*,
*oxygen_tolerance*, *source*, *lpsn*, *lpsn_parent*, *lpsn_renamed_to*,
*mycobank*, *mycobank_parent*, *mycobank_renamed_to*, *gbif*,
*gbif_parent*, *gbif_renamed_to*, *prevalence*, and *snomed*.
*mo*, *fullname*, *status*, *domain*, *kingdom*, *phylum*, *class*,
*order*, *family*, *genus*, *species*, *subspecies*, *rank*, *ref*,
*oxygen_tolerance*, *morphology*, *source*, *lpsn*, *lpsn_parent*,
*lpsn_renamed_to*, *mycobank*, *mycobank_parent*, *mycobank_renamed_to*,
*gbif*, *gbif_parent*, *gbif_renamed_to*, *prevalence*, and *snomed*.
This data set is in R available as `microorganisms`, after you load the
`AMR` package.
It was last updated on 18 September 2025 12:58:34 UTC. Find more info
about the contents, (scientific) source, and structure of this [data set
It was last updated on 22 June 2026 23:38:13 UTC. Find more info about
the contents, (scientific) source, and structure of this [data set
here](https://amr-for-r.org/reference/microorganisms.html).
**Direct download links:**
- Download as [original R Data Structure (RDS)
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.rds)
(1.8 MB)
(2.2 MB)
- Download as [tab-separated text
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.txt)
(17.7 MB)
(23.1 MB)
- Download as [Microsoft Excel
workbook](https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.xlsx)
(8.8 MB)
(11.4 MB)
- Download as [Apache Feather
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.feather)
(8.4 MB)
(11 MB)
- Download as [Apache Parquet
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.parquet)
(3.8 MB)
(4.6 MB)
- Download as [IBM SPSS Statistics data
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.sav)
(28.4 MB)
(35.2 MB)
- Download as [Stata DTA
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.dta)
(89.5 MB)
(96.6 MB)
**NOTE: The exported files for SPSS and Stata contain only the first 50
SNOMED codes per record, as their file size would otherwise exceed 100
@@ -69,23 +69,23 @@ Included (sub)species per taxonomic kingdom:
| Kingdom | Number of (sub)species |
|:-----------------:|:----------------------:|
| (unknown kingdom) | 1 |
| Animalia | 1 628 |
| Archaea | 1 419 |
| Bacteria | 39 249 |
| Chromista | 178 |
| Fungi | 28 137 |
| | 20 |
| (unknown kingdom) | 8 |
| Animalia | 2 015 |
| Archaea | 150 |
| Bacillati | 24 200 |
| Bacteria | 2 |
First 6 rows when filtering on genus *Escherichia*:
| mo | fullname | status | kingdom | phylum | class | order | family | genus | species | subspecies | rank | ref | oxygen_tolerance | source | lpsn | lpsn_parent | lpsn_renamed_to | mycobank | mycobank_parent | mycobank_renamed_to | gbif | gbif_parent | gbif_renamed_to | prevalence | snomed |
|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|
| B_ESCHR | Escherichia | accepted | Bacteria | Pseudomonadota | Gammaproteobacteria | Enterobacterales | Enterobacteriaceae | Escherichia | | | genus | Castellani et al., 1919 | facultative anaerobe | LPSN | 515602 | 482 | | | | | | 11158430 | | 1 | 407310004, 407251000, 407281008, … |
| B_ESCHR_ADCR | Escherichia adecarboxylata | synonym | Bacteria | Pseudomonadota | Gammaproteobacteria | Enterobacterales | Enterobacteriaceae | Escherichia | adecarboxylata | | species | Leclerc, 1962 | likely facultative anaerobe | LPSN | 776052 | 515602 | 777447 | | | | | | | 1 | |
| B_ESCHR_ALBR | Escherichia albertii | accepted | Bacteria | Pseudomonadota | Gammaproteobacteria | Enterobacterales | Enterobacteriaceae | Escherichia | albertii | | species | Huys et al., 2003 | facultative anaerobe | LPSN | 776053 | 515602 | | | | | 5427575 | | | 1 | 419388003 |
| B_ESCHR_BLTT | Escherichia blattae | synonym | Bacteria | Pseudomonadota | Gammaproteobacteria | Enterobacterales | Enterobacteriaceae | Escherichia | blattae | | species | Burgess et al., 1973 | likely facultative anaerobe | LPSN | 776056 | 515602 | 788468 | | | | | | | 1 | |
| B_ESCHR_COLI | Escherichia coli | accepted | Bacteria | Pseudomonadota | Gammaproteobacteria | Enterobacterales | Enterobacteriaceae | Escherichia | coli | | species | Castellani et al., 1919 | facultative anaerobe | LPSN | 776057 | 515602 | | | | | 11286021 | | | 1 | 1095001000112106, 715307006, 737528008, … |
| B_ESCHR_COLI_COLI | Escherichia coli coli | accepted | Bacteria | Pseudomonadota | Gammaproteobacteria | Enterobacterales | Enterobacteriaceae | Escherichia | coli | coli | subspecies | | | GBIF | | 776057 | | | | | 12233256 | 11286021 | | 1 | |
| mo | fullname | status | domain | kingdom | phylum | class | order | family | genus | species | subspecies | rank | ref | oxygen_tolerance | morphology | source | lpsn | lpsn_parent | lpsn_renamed_to | mycobank | mycobank_parent | mycobank_renamed_to | gbif | gbif_parent | gbif_renamed_to | prevalence | snomed |
|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|
| B_ESCHR | Escherichia | accepted | Bacteria | Pseudomonadati | Pseudomonadota | Gammaproteobacteria | Enterobacterales | Enterobacteriaceae | Escherichia | | | genus | Castellani et al., 1919 | facultative anaerobe | rods | LPSN | 515602 | 482 | | | | | CS33H | CRYWR | | 1 | 407310004, 407251000, 407281008, … |
| B_ESCHR_ADCR | Escherichia adecarboxylata | synonym | Bacteria | Pseudomonadati | Pseudomonadota | Gammaproteobacteria | Enterobacterales | Enterobacteriaceae | Escherichia | adecarboxylata | | species | Leclerc, 1962 | likely facultative anaerobe | rods | LPSN | 776052 | 515602 | 777447 | | | | CS33J | CS33H | 3SVX6 | 1 | |
| B_ESCHR_ALBR | Escherichia albertii | accepted | Bacteria | Pseudomonadati | Pseudomonadota | Gammaproteobacteria | Enterobacterales | Enterobacteriaceae | Escherichia | albertii | | species | Huys et al., 2003 | facultative anaerobe | rods | LPSN | 776053 | 515602 | | | | | 3BGTB | CS33H | | 1 | 419388003 |
| B_ESCHR_BLTT | Escherichia blattae | synonym | Bacteria | Pseudomonadati | Pseudomonadota | Gammaproteobacteria | Enterobacterales | Enterobacteriaceae | Escherichia | blattae | | species | Burgess et al., 1973 | likely facultative anaerobe | rods | LPSN | 776056 | 515602 | 788468 | | | | CS33K | CS33H | 4X4P7 | 1 | |
| B_ESCHR_COLI | Escherichia coli | accepted | Bacteria | Pseudomonadati | Pseudomonadota | Gammaproteobacteria | Enterobacterales | Enterobacteriaceae | Escherichia | coli | | species | Castellani et al., 1919 | facultative anaerobe | rods | LPSN | 776057 | 515602 | | | | | NT3L7 | CS33H | | 1 | 1095001000112106, 715307006, 737528008, … |
| B_ESCHR_COLI_COLI | Escherichia coli coli | accepted | Bacteria | Pseudomonadati | Pseudomonadota | Gammaproteobacteria | Enterobacterales | Enterobacteriaceae | Escherichia | coli | coli | subspecies | | | | GBIF | | 776057 | | | | | 12233256 | NT3L7 | | 1 | |
------------------------------------------------------------------------
@@ -100,8 +100,8 @@ names:
This data set is in R available as `antimicrobials`, after you load the
`AMR` package.
It was last updated on 2 May 2026 12:56:26 UTC. Find more info about the
contents, (scientific) source, and structure of this [data set
It was last updated on 23 June 2026 12:38:59 UTC. Find more info about
the contents, (scientific) source, and structure of this [data set
here](https://amr-for-r.org/reference/antimicrobials.html).
**Direct download links:**
@@ -147,7 +147,7 @@ as comma separated values.
## `clinical_breakpoints`: Interpretation from MIC values & disk diameters to SIR
A data set with 45 730 rows and 14 columns, containing the following
A data set with 45 555 rows and 14 columns, containing the following
column names:
*guideline*, *type*, *host*, *method*, *site*, *mo*, *rank_index*, *ab*,
*ref_tbl*, *disk_dose*, *breakpoint_S*, *breakpoint_R*, *uti*, and
@@ -156,7 +156,7 @@ column names:
This data set is in R available as `clinical_breakpoints`, after you
load the `AMR` package.
It was last updated on 2 April 2026 09:42:19 UTC. Find more info about
It was last updated on 22 June 2026 23:38:13 UTC. Find more info about
the contents, (scientific) source, and structure of this [data set
here](https://amr-for-r.org/reference/clinical_breakpoints.html).
@@ -176,7 +176,7 @@ here](https://amr-for-r.org/reference/clinical_breakpoints.html).
(2 MB)
- Download as [Apache Parquet
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/clinical_breakpoints.parquet)
(0.2 MB)
(0.1 MB)
- Download as [IBM SPSS Statistics data
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/clinical_breakpoints.sav)
(7.5 MB)
@@ -199,14 +199,14 @@ here](https://amr-for-r.org/reference/clinical_breakpoints.html).
## `microorganisms.groups`: Species Groups and Microbiological Complexes
A data set with 534 rows and 4 columns, containing the following column
A data set with 530 rows and 4 columns, containing the following column
names:
*mo_group*, *mo*, *mo_group_name*, and *mo_name*.
This data set is in R available as `microorganisms.groups`, after you
load the `AMR` package.
It was last updated on 26 March 2025 16:19:17 UTC. Find more info about
It was last updated on 22 June 2026 23:38:13 UTC. Find more info about
the contents, (scientific) source, and structure of this [data set
here](https://amr-for-r.org/reference/microorganisms.groups.html).
@@ -220,7 +220,7 @@ here](https://amr-for-r.org/reference/microorganisms.groups.html).
(50 kB)
- Download as [Microsoft Excel
workbook](https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.groups.xlsx)
(20 kB)
(19 kB)
- Download as [Apache Feather
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.groups.feather)
(19 kB)
@@ -229,10 +229,10 @@ here](https://amr-for-r.org/reference/microorganisms.groups.html).
(13 kB)
- Download as [IBM SPSS Statistics data
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.groups.sav)
(65 kB)
(64 kB)
- Download as [Stata DTA
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.groups.dta)
(83 kB)
(82 kB)
**Example content**
@@ -249,14 +249,14 @@ here](https://amr-for-r.org/reference/microorganisms.groups.html).
## `intrinsic_resistant`: Intrinsic Bacterial Resistance
A data set with 285 928 rows and 2 columns, containing the following
A data set with 294 079 rows and 2 columns, containing the following
column names:
*mo* and *ab*.
This data set is in R available as `intrinsic_resistant`, after you load
the `AMR` package.
It was last updated on 22 April 2026 06:16:44 UTC. Find more info about
It was last updated on 22 June 2026 23:38:13 UTC. Find more info about
the contents, (scientific) source, and structure of this [data set
here](https://amr-for-r.org/reference/intrinsic_resistant.html).
@@ -267,10 +267,10 @@ here](https://amr-for-r.org/reference/intrinsic_resistant.html).
(0.1 MB)
- Download as [tab-separated text
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/intrinsic_resistant.txt)
(10.6 MB)
(10.9 MB)
- Download as [Microsoft Excel
workbook](https://github.com/msberends/AMR/raw/main/data-raw/datasets/intrinsic_resistant.xlsx)
(3.3 MB)
(3.1 MB)
- Download as [Apache Feather
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/intrinsic_resistant.feather)
(2.5 MB)
@@ -279,10 +279,10 @@ here](https://amr-for-r.org/reference/intrinsic_resistant.html).
(0.3 MB)
- Download as [IBM SPSS Statistics data
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/intrinsic_resistant.sav)
(15.5 MB)
(16 MB)
- Download as [Stata DTA
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/intrinsic_resistant.dta)
(27.5 MB)
(28.6 MB)
**Example content**
@@ -464,14 +464,14 @@ here](https://amr-for-r.org/reference/example_isolates_unclean.html).
## `microorganisms.codes`: Common Laboratory Codes
A data set with 6 050 rows and 2 columns, containing the following
A data set with 6 029 rows and 2 columns, containing the following
column names:
*code* and *mo*.
This data set is in R available as `microorganisms.codes`, after you
load the `AMR` package.
It was last updated on 30 March 2026 08:01:49 UTC. Find more info about
It was last updated on 22 June 2026 23:38:13 UTC. Find more info about
the contents, (scientific) source, and structure of this [data set
here](https://amr-for-r.org/reference/microorganisms.codes.html).
@@ -479,7 +479,7 @@ here](https://amr-for-r.org/reference/microorganisms.codes.html).
- Download as [original R Data Structure (RDS)
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.codes.rds)
(28 kB)
(27 kB)
- Download as [tab-separated text
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.codes.txt)
(0.1 MB)
@@ -491,7 +491,7 @@ here](https://amr-for-r.org/reference/microorganisms.codes.html).
(0.1 MB)
- Download as [Apache Parquet
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.codes.parquet)
(69 kB)
(68 kB)
- Download as [IBM SPSS Statistics data
file](https://github.com/msberends/AMR/raw/main/data-raw/datasets/microorganisms.codes.sav)
(0.2 MB)

View File

@@ -1,5 +1,5 @@
<!DOCTYPE html>
<!-- Generated by pkgdown: do not edit by hand --><html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><title>Articles • AMR (for R)</title><!-- favicons --><link rel="icon" type="image/png" sizes="96x96" href="../favicon-96x96.png"><link rel="icon" type="”image/svg+xml”" href="../favicon.svg"><link rel="apple-touch-icon" sizes="180x180" href="../apple-touch-icon.png"><link rel="icon" sizes="any" href="../favicon.ico"><link rel="manifest" href="../site.webmanifest"><script src="../deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><link href="../deps/bootstrap-5.3.1/bootstrap.min.css" rel="stylesheet"><script src="../deps/bootstrap-5.3.1/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet"><link href="../deps/Fira_Code-0.4.10/font.css" rel="stylesheet"><link href="../deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet"><link href="../deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet"><script src="../deps/headroom-0.11.0/headroom.min.js"></script><script src="../deps/headroom-0.11.0/jQuery.headroom.min.js"></script><script src="../deps/bootstrap-toc-1.0.1/bootstrap-toc.min.js"></script><script src="../deps/clipboard.js-2.0.11/clipboard.min.js"></script><script src="../deps/search-1.0.0/autocomplete.jquery.min.js"></script><script src="../deps/search-1.0.0/fuse.min.js"></script><script src="../deps/search-1.0.0/mark.min.js"></script><!-- pkgdown --><script src="../pkgdown.js"></script><link href="../extra.css" rel="stylesheet"><script src="../extra.js"></script><meta property="og:title" content="Articles"><meta property="og:image" content="https://amr-for-r.org/logo.svg"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.css" integrity="sha384-nB0miv6/jRmo5UMMR1wu3Gz6NLsoTkbqJghGIsx//Rlm+ZU03BU6SQNC66uf4l5+" crossorigin="anonymous"><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.js" integrity="sha384-7zkQWkzuo3B5mTepMUcHkMB5jZaolc2xDwL6VFqjFALcbeS9Ggm/Yr2r3Dy4lfFg" crossorigin="anonymous"></script><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/contrib/auto-render.min.js" integrity="sha384-43gviWU0YVjaDtb/GhzOouOXtZMP/7XUzwPTstBeZFe/+rCMvRwr4yROQP43s0Xk" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script></head><body>
<!-- Generated by pkgdown: do not edit by hand --><html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><title>Articles • AMR (for R)</title><!-- favicons --><link rel="icon" type="image/png" sizes="96x96" href="../favicon-96x96.png"><link rel="icon" type="”image/svg+xml”" href="../favicon.svg"><link rel="apple-touch-icon" sizes="180x180" href="../apple-touch-icon.png"><link rel="icon" sizes="any" href="../favicon.ico"><link rel="manifest" href="../site.webmanifest"><script src="../deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><link href="../deps/bootstrap-5.3.8/bootstrap.min.css" rel="stylesheet"><script src="../deps/bootstrap-5.3.8/bootstrap.bundle.min.js"></script><link href="../deps/Lato-0.4.10/font.css" rel="stylesheet"><link href="../deps/Fira_Code-0.4.10/font.css" rel="stylesheet"><link href="../deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet"><link href="../deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet"><script src="../deps/headroom-0.11.0/headroom.min.js"></script><script src="../deps/headroom-0.11.0/jQuery.headroom.min.js"></script><script src="../deps/bootstrap-toc-1.0.1/bootstrap-toc.min.js"></script><script src="../deps/clipboard.js-2.0.11/clipboard.min.js"></script><script src="../deps/search-1.0.0/autocomplete.jquery.min.js"></script><script src="../deps/search-1.0.0/fuse.min.js"></script><script src="../deps/search-1.0.0/mark.min.js"></script><!-- pkgdown --><script src="../pkgdown.js"></script><link href="../extra.css" rel="stylesheet"><script src="../extra.js"></script><meta property="og:title" content="Articles"><meta property="og:image" content="https://amr-for-r.org/logo.svg"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.css" integrity="sha384-nB0miv6/jRmo5UMMR1wu3Gz6NLsoTkbqJghGIsx//Rlm+ZU03BU6SQNC66uf4l5+" crossorigin="anonymous"><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.js" integrity="sha384-7zkQWkzuo3B5mTepMUcHkMB5jZaolc2xDwL6VFqjFALcbeS9Ggm/Yr2r3Dy4lfFg" crossorigin="anonymous"></script><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/contrib/auto-render.min.js" integrity="sha384-43gviWU0YVjaDtb/GhzOouOXtZMP/7XUzwPTstBeZFe/+rCMvRwr4yROQP43s0Xk" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script></head><body>
<a href="#main" class="visually-hidden-focusable">Skip to contents</a>
@@ -7,7 +7,7 @@
<a class="navbar-brand me-2" href="../index.html">AMR (for R)</a>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9057</small>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9061</small>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">

View File

@@ -1,5 +1,5 @@
<!DOCTYPE html>
<!-- Generated by pkgdown: do not edit by hand --><html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><title>Authors and Citation • AMR (for R)</title><!-- favicons --><link rel="icon" type="image/png" sizes="96x96" href="favicon-96x96.png"><link rel="icon" type="”image/svg+xml”" href="favicon.svg"><link rel="apple-touch-icon" sizes="180x180" href="apple-touch-icon.png"><link rel="icon" sizes="any" href="favicon.ico"><link rel="manifest" href="site.webmanifest"><script src="deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><link href="deps/bootstrap-5.3.1/bootstrap.min.css" rel="stylesheet"><script src="deps/bootstrap-5.3.1/bootstrap.bundle.min.js"></script><link href="deps/Lato-0.4.10/font.css" rel="stylesheet"><link href="deps/Fira_Code-0.4.10/font.css" rel="stylesheet"><link href="deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet"><link href="deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet"><script src="deps/headroom-0.11.0/headroom.min.js"></script><script src="deps/headroom-0.11.0/jQuery.headroom.min.js"></script><script src="deps/bootstrap-toc-1.0.1/bootstrap-toc.min.js"></script><script src="deps/clipboard.js-2.0.11/clipboard.min.js"></script><script src="deps/search-1.0.0/autocomplete.jquery.min.js"></script><script src="deps/search-1.0.0/fuse.min.js"></script><script src="deps/search-1.0.0/mark.min.js"></script><!-- pkgdown --><script src="pkgdown.js"></script><link href="extra.css" rel="stylesheet"><script src="extra.js"></script><meta property="og:title" content="Authors and Citation"><meta property="og:image" content="https://amr-for-r.org/logo.svg"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.css" integrity="sha384-nB0miv6/jRmo5UMMR1wu3Gz6NLsoTkbqJghGIsx//Rlm+ZU03BU6SQNC66uf4l5+" crossorigin="anonymous"><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.js" integrity="sha384-7zkQWkzuo3B5mTepMUcHkMB5jZaolc2xDwL6VFqjFALcbeS9Ggm/Yr2r3Dy4lfFg" crossorigin="anonymous"></script><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/contrib/auto-render.min.js" integrity="sha384-43gviWU0YVjaDtb/GhzOouOXtZMP/7XUzwPTstBeZFe/+rCMvRwr4yROQP43s0Xk" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script></head><body>
<!-- Generated by pkgdown: do not edit by hand --><html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><title>Authors and Citation • AMR (for R)</title><!-- favicons --><link rel="icon" type="image/png" sizes="96x96" href="favicon-96x96.png"><link rel="icon" type="”image/svg+xml”" href="favicon.svg"><link rel="apple-touch-icon" sizes="180x180" href="apple-touch-icon.png"><link rel="icon" sizes="any" href="favicon.ico"><link rel="manifest" href="site.webmanifest"><script src="deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><link href="deps/bootstrap-5.3.8/bootstrap.min.css" rel="stylesheet"><script src="deps/bootstrap-5.3.8/bootstrap.bundle.min.js"></script><link href="deps/Lato-0.4.10/font.css" rel="stylesheet"><link href="deps/Fira_Code-0.4.10/font.css" rel="stylesheet"><link href="deps/font-awesome-6.5.2/css/all.min.css" rel="stylesheet"><link href="deps/font-awesome-6.5.2/css/v4-shims.min.css" rel="stylesheet"><script src="deps/headroom-0.11.0/headroom.min.js"></script><script src="deps/headroom-0.11.0/jQuery.headroom.min.js"></script><script src="deps/bootstrap-toc-1.0.1/bootstrap-toc.min.js"></script><script src="deps/clipboard.js-2.0.11/clipboard.min.js"></script><script src="deps/search-1.0.0/autocomplete.jquery.min.js"></script><script src="deps/search-1.0.0/fuse.min.js"></script><script src="deps/search-1.0.0/mark.min.js"></script><!-- pkgdown --><script src="pkgdown.js"></script><link href="extra.css" rel="stylesheet"><script src="extra.js"></script><meta property="og:title" content="Authors and Citation"><meta property="og:image" content="https://amr-for-r.org/logo.svg"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.css" integrity="sha384-nB0miv6/jRmo5UMMR1wu3Gz6NLsoTkbqJghGIsx//Rlm+ZU03BU6SQNC66uf4l5+" crossorigin="anonymous"><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.js" integrity="sha384-7zkQWkzuo3B5mTepMUcHkMB5jZaolc2xDwL6VFqjFALcbeS9Ggm/Yr2r3Dy4lfFg" crossorigin="anonymous"></script><script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/contrib/auto-render.min.js" integrity="sha384-43gviWU0YVjaDtb/GhzOouOXtZMP/7XUzwPTstBeZFe/+rCMvRwr4yROQP43s0Xk" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script></head><body>
<a href="#main" class="visually-hidden-focusable">Skip to contents</a>
@@ -7,7 +7,7 @@
<a class="navbar-brand me-2" href="index.html">AMR (for R)</a>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9057</small>
<small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">3.0.1.9061</small>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show More