AMR/docs/reference/key_antimicrobials.html

448 lines
23 KiB
HTML

<!-- Generated by pkgdown: do not edit by hand -->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>(Key) Antimicrobials for First Weighted Isolates — key_antimicrobials • AMR (for R)</title>
<!-- favicons -->
<link rel="icon" type="image/png" sizes="16x16" href="../favicon-16x16.png">
<link rel="icon" type="image/png" sizes="32x32" href="../favicon-32x32.png">
<link rel="apple-touch-icon" type="image/png" sizes="180x180" href="../apple-touch-icon.png" />
<link rel="apple-touch-icon" type="image/png" sizes="120x120" href="../apple-touch-icon-120x120.png" />
<link rel="apple-touch-icon" type="image/png" sizes="76x76" href="../apple-touch-icon-76x76.png" />
<link rel="apple-touch-icon" type="image/png" sizes="60x60" href="../apple-touch-icon-60x60.png" />
<!-- jquery -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<!-- Bootstrap -->
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootswatch/3.4.0/flatly/bootstrap.min.css" rel="stylesheet" crossorigin="anonymous" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.4.1/js/bootstrap.min.js" integrity="sha256-nuL8/2cJ5NDSSwnKD8VqreErSWHtnEP9E7AySL+1ev4=" crossorigin="anonymous"></script>
<!-- bootstrap-toc -->
<link rel="stylesheet" href="../bootstrap-toc.css">
<script src="../bootstrap-toc.js"></script>
<!-- Font Awesome icons -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/all.min.css" integrity="sha256-mmgLkCYLUQbXn0B1SRqzHar6dCnv9oZFPEC1g1cwlkk=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/v4-shims.min.css" integrity="sha256-wZjR52fzng1pJHwx4aV2AO3yyTOXrcDW7jBpJtTwVxw=" crossorigin="anonymous" />
<!-- clipboard.js -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.6/clipboard.min.js" integrity="sha256-inc5kl9MA1hkeYUt+EC3BhlIgyp/2jDIyBLS6k3UxPI=" crossorigin="anonymous"></script>
<!-- headroom.js -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/headroom.min.js" integrity="sha256-AsUX4SJE1+yuDu5+mAVzJbuYNPHj/WroHuZ8Ir/CkE0=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.11.0/jQuery.headroom.min.js" integrity="sha256-ZX/yNShbjqsohH1k95liqY9Gd8uOiE1S4vZc+9KQ1K4=" crossorigin="anonymous"></script>
<!-- pkgdown -->
<link href="../pkgdown.css" rel="stylesheet">
<script src="../pkgdown.js"></script>
<link href="../extra.css" rel="stylesheet">
<script src="../extra.js"></script>
<meta property="og:title" content="(Key) Antimicrobials for First Weighted Isolates — key_antimicrobials" />
<meta property="og:description" content="These functions can be used to determine first weighted isolates by considering the phenotype for isolate selection (see first_isolate()). Using a phenotype-based method to determine first isolates is more reliable than methods that disregard phenotypes." />
<meta property="og:image" content="https://msberends.github.io/AMR/logo.png" />
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:creator" content="@msberends" />
<meta name="twitter:site" content="@univgroningen" />
<!-- mathjax -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js" integrity="sha256-nvJJv9wWKEm88qvoQl9ekL2J+k/RWIsaSScxxlsrv8k=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/config/TeX-AMS-MML_HTMLorMML.js" integrity="sha256-84DKXVJXs0/F8OTMzX4UR909+jtl4G7SPypPavF+GfA=" crossorigin="anonymous"></script>
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body data-spy="scroll" data-target="#toc">
<div class="container template-reference-topic">
<header>
<div class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<span class="navbar-brand">
<a class="navbar-link" href="../index.html">AMR (for R)</a>
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Latest development version">1.7.1.9030</span>
</span>
</div>
<div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li>
<a href="../index.html">
<span class="fa fa-home"></span>
Home
</a>
</li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
<span class="fa fa-question-circle"></span>
How to
<span class="caret"></span>
</a>
<ul class="dropdown-menu" role="menu">
<li>
<a href="../articles/AMR.html">
<span class="fa fa-directions"></span>
Conduct AMR analysis
</a>
</li>
<li>
<a href="../articles/resistance_predict.html">
<span class="fa fa-dice"></span>
Predict antimicrobial resistance
</a>
</li>
<li>
<a href="../articles/datasets.html">
<span class="fa fa-database"></span>
Data sets for download / own use
</a>
</li>
<li>
<a href="../articles/PCA.html">
<span class="fa fa-compress"></span>
Conduct principal component analysis for AMR
</a>
</li>
<li>
<a href="../articles/MDR.html">
<span class="fa fa-skull-crossbones"></span>
Determine multi-drug resistance (MDR)
</a>
</li>
<li>
<a href="../articles/WHONET.html">
<span class="fa fa-globe-americas"></span>
Work with WHONET data
</a>
</li>
<li>
<a href="../articles/SPSS.html">
<span class="fa fa-file-upload"></span>
Import data from SPSS/SAS/Stata
</a>
</li>
<li>
<a href="../articles/EUCAST.html">
<span class="fa fa-exchange-alt"></span>
Apply EUCAST rules
</a>
</li>
<li>
<a href="../reference/mo_property.html">
<span class="fa fa-bug"></span>
Get properties of a microorganism
</a>
</li>
<li>
<a href="../reference/ab_property.html">
<span class="fa fa-capsules"></span>
Get properties of an antibiotic
</a>
</li>
<li>
<a href="../articles/benchmarks.html">
<span class="fa fa-shipping-fast"></span>
Other: benchmarks
</a>
</li>
</ul>
</li>
<li>
<a href="../reference/index.html">
<span class="fa fa-book-open"></span>
Manual
</a>
</li>
<li>
<a href="../authors.html">
<span class="fa fa-users"></span>
Authors
</a>
</li>
<li>
<a href="../news/index.html">
<span class="far fa-newspaper"></span>
Changelog
</a>
</li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li>
<a href="https://github.com/msberends/AMR">
<span class="fab fa-github"></span>
Source Code
</a>
</li>
</ul>
</div><!--/.nav-collapse -->
</div><!--/.container -->
</div><!--/.navbar -->
</header>
<div class="row">
<div class="col-md-9 contents">
<div class="page-header">
<h1>(Key) Antimicrobials for First Weighted Isolates</h1>
<small class="dont-index">Source: <a href='https://github.com/msberends/AMR/blob/master/R/key_antimicrobials.R'><code>R/key_antimicrobials.R</code></a></small>
<div class="hidden name"><code>key_antimicrobials.Rd</code></div>
</div>
<div class="ref-description">
<p>These functions can be used to determine first weighted isolates by considering the phenotype for isolate selection (see <code><a href='first_isolate.html'>first_isolate()</a></code>). Using a phenotype-based method to determine first isolates is more reliable than methods that disregard phenotypes.</p>
</div>
<div class="ref-usage sourceCode"><pre class='sourceCode r'><code><span class='fu'>key_antimicrobials</span><span class='op'>(</span>
x <span class='op'>=</span> <span class='cn'>NULL</span>,
col_mo <span class='op'>=</span> <span class='cn'>NULL</span>,
universal <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/c.html'>c</a></span><span class='op'>(</span><span class='st'>"ampicillin"</span>, <span class='st'>"amoxicillin/clavulanic acid"</span>, <span class='st'>"cefuroxime"</span>,
<span class='st'>"piperacillin/tazobactam"</span>, <span class='st'>"ciprofloxacin"</span>, <span class='st'>"trimethoprim/sulfamethoxazole"</span><span class='op'>)</span>,
gram_negative <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/c.html'>c</a></span><span class='op'>(</span><span class='st'>"gentamicin"</span>, <span class='st'>"tobramycin"</span>, <span class='st'>"colistin"</span>, <span class='st'>"cefotaxime"</span>,
<span class='st'>"ceftazidime"</span>, <span class='st'>"meropenem"</span><span class='op'>)</span>,
gram_positive <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/c.html'>c</a></span><span class='op'>(</span><span class='st'>"vancomycin"</span>, <span class='st'>"teicoplanin"</span>, <span class='st'>"tetracycline"</span>, <span class='st'>"erythromycin"</span>,
<span class='st'>"oxacillin"</span>, <span class='st'>"rifampin"</span><span class='op'>)</span>,
antifungal <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/c.html'>c</a></span><span class='op'>(</span><span class='st'>"anidulafungin"</span>, <span class='st'>"caspofungin"</span>, <span class='st'>"fluconazole"</span>, <span class='st'>"miconazole"</span>,
<span class='st'>"nystatin"</span>, <span class='st'>"voriconazole"</span><span class='op'>)</span>,
only_rsi_columns <span class='op'>=</span> <span class='cn'>FALSE</span>,
<span class='va'>...</span>
<span class='op'>)</span>
<span class='fu'>all_antimicrobials</span><span class='op'>(</span>x <span class='op'>=</span> <span class='cn'>NULL</span>, only_rsi_columns <span class='op'>=</span> <span class='cn'>FALSE</span>, <span class='va'>...</span><span class='op'>)</span>
<span class='fu'>antimicrobials_equal</span><span class='op'>(</span>
<span class='va'>y</span>,
<span class='va'>z</span>,
type <span class='op'>=</span> <span class='fu'><a href='https://rdrr.io/r/base/c.html'>c</a></span><span class='op'>(</span><span class='st'>"points"</span>, <span class='st'>"keyantimicrobials"</span><span class='op'>)</span>,
ignore_I <span class='op'>=</span> <span class='cn'>TRUE</span>,
points_threshold <span class='op'>=</span> <span class='fl'>2</span>,
<span class='va'>...</span>
<span class='op'>)</span></code></pre></div>
<h2 class="hasAnchor" id="arguments"><a class="anchor" href="#arguments"></a>Arguments</h2>
<table class="ref-arguments">
<colgroup><col class="name" /><col class="desc" /></colgroup>
<tr>
<th>x</th>
<td><p>a <a href='https://rdrr.io/r/base/data.frame.html'>data.frame</a> with antibiotics columns, like <code>AMX</code> or <code>amox</code>. Can be left blank to determine automatically</p></td>
</tr>
<tr>
<th>col_mo</th>
<td><p>column name of the IDs of the microorganisms (see <code><a href='as.mo.html'>as.mo()</a></code>), defaults to the first column of class <code><a href='as.mo.html'>mo</a></code>. Values will be coerced using <code><a href='as.mo.html'>as.mo()</a></code>.</p></td>
</tr>
<tr>
<th>universal</th>
<td><p>names of <strong>broad-spectrum</strong> antimicrobial agents, case-insensitive. Set to <code>NULL</code> to ignore. See <em>Details</em> for the default agents.</p></td>
</tr>
<tr>
<th>gram_negative</th>
<td><p>names of antibiotic agents for <strong>Gram-positives</strong>, case-insensitive. Set to <code>NULL</code> to ignore. See <em>Details</em> for the default agents.</p></td>
</tr>
<tr>
<th>gram_positive</th>
<td><p>names of antibiotic agents for <strong>Gram-negatives</strong>, case-insensitive. Set to <code>NULL</code> to ignore. See <em>Details</em> for the default agents.</p></td>
</tr>
<tr>
<th>antifungal</th>
<td><p>names of antifungal agents for <strong>fungi</strong>, case-insensitive. Set to <code>NULL</code> to ignore. See <em>Details</em> for the default agents.</p></td>
</tr>
<tr>
<th>only_rsi_columns</th>
<td><p>a <a href='https://rdrr.io/r/base/logical.html'>logical</a> to indicate whether only columns must be included that were transformed to class <code>&lt;rsi&gt;</code> (see <code><a href='as.rsi.html'>as.rsi()</a></code>) on beforehand (defaults to <code>FALSE</code>)</p></td>
</tr>
<tr>
<th>...</th>
<td><p>ignored, only in place to allow future extensions</p></td>
</tr>
<tr>
<th>y, z</th>
<td><p><a href='https://rdrr.io/r/base/character.html'>character</a> vectors to compare</p></td>
</tr>
<tr>
<th>type</th>
<td><p>type to determine weighed isolates; can be <code>"keyantimicrobials"</code> or <code>"points"</code>, see <em>Details</em></p></td>
</tr>
<tr>
<th>ignore_I</th>
<td><p><a href='https://rdrr.io/r/base/logical.html'>logical</a> to indicate whether antibiotic interpretations with <code>"I"</code> will be ignored when <code>type = "keyantimicrobials"</code>, see <em>Details</em></p></td>
</tr>
<tr>
<th>points_threshold</th>
<td><p>minimum number of points to require before differences in the antibiogram will lead to inclusion of an isolate when <code>type = "points"</code>, see <em>Details</em></p></td>
</tr>
</table>
<h2 class="hasAnchor" id="details"><a class="anchor" href="#details"></a>Details</h2>
<p>The <code>key_antimicrobials()</code> and <code>all_antimicrobials()</code> functions are context-aware. This means that the <code>x</code> argument can be left blank if used inside a <a href='https://rdrr.io/r/base/data.frame.html'>data.frame</a> call, see <em>Examples</em>.</p>
<p>The function <code>key_antimicrobials()</code> returns a <a href='https://rdrr.io/r/base/character.html'>character</a> vector with 12 antimicrobial results for every isolate. The function <code>all_antimicrobials()</code> returns a <a href='https://rdrr.io/r/base/character.html'>character</a> vector with all antimicrobial results for every isolate. These vectors can then be compared using <code>antimicrobials_equal()</code>, to check if two isolates have generally the same antibiogram. Missing and invalid values are replaced with a dot (<code>"."</code>) by <code>key_antimicrobials()</code> and ignored by <code>antimicrobials_equal()</code>.</p>
<p>Please see the <code><a href='first_isolate.html'>first_isolate()</a></code> function how these important functions enable the 'phenotype-based' method for determination of first isolates.</p>
<p>The default antimicrobial agents used for <strong>all rows</strong> (set in <code>universal</code>) are:</p><ul>
<li><p>Ampicillin</p></li>
<li><p>Amoxicillin/clavulanic acid</p></li>
<li><p>Cefuroxime</p></li>
<li><p>Ciprofloxacin</p></li>
<li><p>Piperacillin/tazobactam</p></li>
<li><p>Trimethoprim/sulfamethoxazole</p></li>
</ul>
<p>The default antimicrobial agents used for <strong>Gram-negative bacteria</strong> (set in <code>gram_negative</code>) are:</p><ul>
<li><p>Cefotaxime</p></li>
<li><p>Ceftazidime</p></li>
<li><p>Colistin</p></li>
<li><p>Gentamicin</p></li>
<li><p>Meropenem</p></li>
<li><p>Tobramycin</p></li>
</ul>
<p>The default antimicrobial agents used for <strong>Gram-positive bacteria</strong> (set in <code>gram_positive</code>) are:</p><ul>
<li><p>Erythromycin</p></li>
<li><p>Oxacillin</p></li>
<li><p>Rifampin</p></li>
<li><p>Teicoplanin</p></li>
<li><p>Tetracycline</p></li>
<li><p>Vancomycin</p></li>
</ul>
<p>The default antimicrobial agents used for <strong>fungi</strong> (set in <code>antifungal</code>) are:</p><ul>
<li><p>Anidulafungin</p></li>
<li><p>Caspofungin</p></li>
<li><p>Fluconazole</p></li>
<li><p>Miconazole</p></li>
<li><p>Nystatin</p></li>
<li><p>Voriconazole</p></li>
</ul>
<h2 class="hasAnchor" id="stable-lifecycle"><a class="anchor" href="#stable-lifecycle"></a>Stable Lifecycle</h2>
<p><img src='figures/lifecycle_stable.svg' style=margin-bottom:5px /> <br />
The <a href='lifecycle.html'>lifecycle</a> of this function is <strong>stable</strong>. In a stable function, major changes are unlikely. This means that the unlying code will generally evolve by adding new arguments; removing arguments or changing the meaning of existing arguments will be avoided.</p>
<p>If the unlying code needs breaking changes, they will occur gradually. For example, a argument will be deprecated and first continue to work, but will emit an message informing you of the change. Next, typically after at least one newly released version on CRAN, the message will be transformed to an error.</p>
<h2 class="hasAnchor" id="read-more-on-our-website-"><a class="anchor" href="#read-more-on-our-website-"></a>Read more on Our Website!</h2>
<p>On our website <a href='https://msberends.github.io/AMR/'>https://msberends.github.io/AMR/</a> you can find <a href='https://msberends.github.io/AMR/articles/AMR.html'>a comprehensive tutorial</a> about how to conduct AMR data analysis, the <a href='https://msberends.github.io/AMR/reference/'>complete documentation of all functions</a> and <a href='https://msberends.github.io/AMR/articles/WHONET.html'>an example analysis using WHONET data</a>.</p>
<h2 class="hasAnchor" id="see-also"><a class="anchor" href="#see-also"></a>See also</h2>
<div class='dont-index'><p><code><a href='first_isolate.html'>first_isolate()</a></code></p></div>
<h2 class="hasAnchor" id="examples"><a class="anchor" href="#examples"></a>Examples</h2>
<div class="ref-examples sourceCode"><pre class='sourceCode r'><code><span class='co'># `example_isolates` is a data set available in the AMR package.</span>
<span class='co'># See ?example_isolates.</span>
<span class='co'># output of the `key_antimicrobials()` function could be like this:</span>
<span class='va'>strainA</span> <span class='op'>&lt;-</span> <span class='st'>"SSSRR.S.R..S"</span>
<span class='va'>strainB</span> <span class='op'>&lt;-</span> <span class='st'>"SSSIRSSSRSSS"</span>
<span class='co'># those strings can be compared with:</span>
<span class='fu'>antimicrobials_equal</span><span class='op'>(</span><span class='va'>strainA</span>, <span class='va'>strainB</span>, type <span class='op'>=</span> <span class='st'>"keyantimicrobials"</span><span class='op'>)</span>
<span class='co'># TRUE, because I is ignored (as well as missing values)</span>
<span class='fu'>antimicrobials_equal</span><span class='op'>(</span><span class='va'>strainA</span>, <span class='va'>strainB</span>, type <span class='op'>=</span> <span class='st'>"keyantimicrobials"</span>, ignore_I <span class='op'>=</span> <span class='cn'>FALSE</span><span class='op'>)</span>
<span class='co'># FALSE, because I is not ignored and so the 4th [character] differs</span>
<span class='co'># \donttest{</span>
<span class='kw'>if</span> <span class='op'>(</span><span class='kw'><a href='https://rdrr.io/r/base/library.html'>require</a></span><span class='op'>(</span><span class='st'><a href='https://dplyr.tidyverse.org'>"dplyr"</a></span><span class='op'>)</span><span class='op'>)</span> <span class='op'>{</span>
<span class='co'># set key antibiotics to a new variable</span>
<span class='va'>my_patients</span> <span class='op'>&lt;-</span> <span class='va'>example_isolates</span> <span class='op'>%&gt;%</span>
<span class='fu'><a href='https://dplyr.tidyverse.org/reference/mutate.html'>mutate</a></span><span class='op'>(</span>keyab <span class='op'>=</span> <span class='fu'>key_antimicrobials</span><span class='op'>(</span>antifungal <span class='op'>=</span> <span class='cn'>NULL</span><span class='op'>)</span><span class='op'>)</span> <span class='op'>%&gt;%</span> <span class='co'># no need to define `x`</span>
<span class='fu'><a href='https://dplyr.tidyverse.org/reference/mutate.html'>mutate</a></span><span class='op'>(</span>
<span class='co'># now calculate first isolates</span>
first_regular <span class='op'>=</span> <span class='fu'><a href='first_isolate.html'>first_isolate</a></span><span class='op'>(</span>col_keyantimicrobials <span class='op'>=</span> <span class='cn'>FALSE</span><span class='op'>)</span>,
<span class='co'># and first WEIGHTED isolates</span>
first_weighted <span class='op'>=</span> <span class='fu'><a href='first_isolate.html'>first_isolate</a></span><span class='op'>(</span>col_keyantimicrobials <span class='op'>=</span> <span class='st'>"keyab"</span><span class='op'>)</span>
<span class='op'>)</span>
<span class='co'># Check the difference, in this data set it results in more isolates:</span>
<span class='fu'><a href='https://rdrr.io/r/base/sum.html'>sum</a></span><span class='op'>(</span><span class='va'>my_patients</span><span class='op'>$</span><span class='va'>first_regular</span>, na.rm <span class='op'>=</span> <span class='cn'>TRUE</span><span class='op'>)</span>
<span class='fu'><a href='https://rdrr.io/r/base/sum.html'>sum</a></span><span class='op'>(</span><span class='va'>my_patients</span><span class='op'>$</span><span class='va'>first_weighted</span>, na.rm <span class='op'>=</span> <span class='cn'>TRUE</span><span class='op'>)</span>
<span class='op'>}</span>
<span class='co'># }</span>
</code></pre></div>
</div>
<div class="col-md-3 hidden-xs hidden-sm" id="pkgdown-sidebar">
<nav id="toc" data-toggle="toc" class="sticky-top">
<h2 data-toc-skip>Contents</h2>
</nav>
</div>
</div>
<footer>
<div class="copyright">
<p><p>Developed by <a href="https://www.rug.nl/staff/m.s.berends/" class="external-link">Matthijs S. Berends</a>, <a href="https://www.rug.nl/staff/c.f.luz/" class="external-link">Christian F. Luz</a>, <a href="https://www.rug.nl/staff/a.w.friedrich/" class="external-link">Alexander W. Friedrich</a>, <a href="https://www.rug.nl/staff/b.sinha/" class="external-link">Bhanu N. M. Sinha</a>, <a href="https://www.rug.nl/staff/c.j.albers/" class="external-link">Casper J. Albers</a>, <a href="https://www.rug.nl/staff/c.glasner/" class="external-link">Corinna Glasner</a>.</p></p>
</div>
<div class="pkgdown">
<p><p>Site built with <a href="https://pkgdown.r-lib.org/" class="external-link">pkgdown</a> 1.6.1.9001.</p></p>
</div>
</footer>
</div>
</body>
</html>