summaryrefslogblamecommitdiff
path: root/docs/index.html
blob: d9d44ad5cb8a6328cdf86ce1ef2a414931019df0 (plain) (tree)
1
2
3
4
5
6
7
8
9
               
                                                                  



                                                                   
                                                                                      
                                                        
                                                                                                                                                   
                                                                     

                                                                                                                                          

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                  
       

                                                                          
 


                                                                                                                                      

                                                             
                                                                                                                         
 
 





                                                                                                                                                                                

                                                                                       
           




                                                                                                                                                                                      
           
      
 
 



                                                               

                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                             







































                                                                                                                                                                                                                                                                                                                   
                            


                                                                                                               

                                                                                                                                                                                                                                                         
                                                                                                                                                     
                                                                                                                                                                                                                          





                                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                                            

      
                                                    
                            
                          
                                                                                                 

      
 
                     
                              



                          



                               
                          
                                                          

      
 

                                 
                          
                                                                                                  

      


 
          
      
 
 
                                             
                                     
      
 
                                  
                                                                                                      
      
 
             

      
 

 
 
         
       
<!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>Chemical Entities as R Objects • chents</title>
<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/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><meta property="og:title" content="Chemical Entities as R Objects">
<meta name="description" content="Utilities for dealing with chemical entities and associated data as R objects. If Python and RDKit (&gt; 2015.03) are installed and configured for use with reticulate, some basic chemoinformatics functions like the calculation of molecular weight and plotting of chemical structures in R graphics are available.">
<meta property="og:description" content="Utilities for dealing with chemical entities and associated data as R objects. If Python and RDKit (&gt; 2015.03) are installed and configured for use with reticulate, some basic chemoinformatics functions like the calculation of molecular weight and plotting of chemical structures in R graphics are available.">
</head>
<body>
    <a href="#main" class="visually-hidden-focusable">Skip to contents</a>


    <nav class="navbar navbar-expand-lg fixed-top bg-light" data-bs-theme="light" aria-label="Site navigation"><div class="container">

    <a class="navbar-brand me-2" href="index.html">chents</a>

    <small class="nav-text text-muted me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="">0.4.1</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">
      <span class="navbar-toggler-icon"></span>
    </button>

    <div id="navbar" class="collapse navbar-collapse ms-3">
      <ul class="navbar-nav me-auto">
<li class="nav-item"><a class="nav-link" href="reference/index.html">Reference</a></li>
<li class="nav-item"><a class="nav-link" href="news/index.html">Changelog</a></li>
      </ul>
<ul class="navbar-nav">
<li class="nav-item"><form class="form-inline" role="search">
 <input class="form-control" type="search" name="search-input" id="search-input" autocomplete="off" aria-label="Search site" placeholder="Search for" data-search-index="search.json">
</form></li>
<li class="nav-item"><a class="external-link nav-link" href="https://github.com/jranke/chents/" aria-label="GitHub"><span class="fa fab fa-github fa-lg"></span></a></li>
      </ul>
</div>


  </div>
</nav><div class="container template-home">
<div class="row">
  <main id="main" class="col-md-9"><div class="section level1">
<div class="page-header"><h1 id="chents">chents<a class="anchor" aria-label="anchor" href="#chents"></a>
</h1></div>
<p><a href="https://pkgdown.jrwb.de/chents/"><img src="https://img.shields.io/badge/docs-jrwb.de-blue.svg" alt="Online documentation"></a> <a href="https://jranke.r-universe.dev/chents" class="external-link"><img src="https://jranke.r-universe.dev/badges/chents" alt="R-Universe status"></a> <a href="https://pkgdown.jrwb.de/chents/coverage/coverage.html"><img src="https://img.shields.io/badge/coverage-jrwb.de-blue.svg" alt="Code coverage"></a></p>
<p>The R package <strong>chents</strong> provides some utilities for working with chemical entities in R.</p>
<p>When first defining a chemical entity, some chemical information is retrieved from the <a href="https://pubchem.ncbi.nlm.nih.gov/" class="external-link">PubChem</a> website using the <a href="https://docs.ropensci.org/webchem/" class="external-link">webchem</a> package.</p>
<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://pkgdown.jrwb.de/chents">chents</a></span><span class="op">)</span></span>
<span><span class="va">caffeine</span> <span class="op">&lt;-</span> <span class="va"><a href="reference/chent.html">chent</a></span><span class="op">$</span><span class="fu">new</span><span class="op">(</span><span class="st">"caffeine"</span><span class="op">)</span></span>
<span><span class="co">#&gt; Querying PubChem ...</span></span>
<span><span class="co">#&gt; Trying to get chemical information from RDKit using PubChem SMILES</span></span>
<span><span class="co">#&gt; CN1C=NC2=C1C(=O)N(C(=O)N2C)C</span></span></code></pre></div>
<p>If Python and <a href="https://rdkit.org" class="external-link">RDKit</a> (&gt; 2015.03) are installed and configured for use with the <a href="https://rstudio.github.io/reticulate/" class="external-link">reticulate</a> package, some additional chemical information including a 2D graph are computed.</p>
<p>The print method gives an overview of the information that was collected.</p>
<div class="sourceCode" id="cb2"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/base/print.html" class="external-link">print</a></span><span class="op">(</span><span class="va">caffeine</span><span class="op">)</span></span>
<span><span class="co">#&gt; &lt;chent&gt;</span></span>
<span><span class="co">#&gt; Identifier $identifier caffeine </span></span>
<span><span class="co">#&gt; InChI Key $inchikey RYYVLZVUVIJVGH-UHFFFAOYSA-N </span></span>
<span><span class="co">#&gt; SMILES string $smiles:</span></span>
<span><span class="co">#&gt;                        PubChem </span></span>
<span><span class="co">#&gt; "CN1C=NC2=C1C(=O)N(C(=O)N2C)C" </span></span>
<span><span class="co">#&gt; Molecular weight $mw: 194.2 </span></span>
<span><span class="co">#&gt; PubChem synonyms (up to 10):</span></span>
<span><span class="co">#&gt;  [1] "caffeine"                "58-08-2"                </span></span>
<span><span class="co">#&gt;  [3] "Guaranine"               "1,3,7-Trimethylxanthine"</span></span>
<span><span class="co">#&gt;  [5] "Methyltheobromine"       "Theine"                 </span></span>
<span><span class="co">#&gt;  [7] "Thein"                   "Cafeina"                </span></span>
<span><span class="co">#&gt;  [9] "Koffein"                 "Mateina"</span></span></code></pre></div>
<p>There is a very simple plotting method for the chemical structure.</p>
<div class="sourceCode" id="cb3"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/graphics/plot.default.html" class="external-link">plot</a></span><span class="op">(</span><span class="va">caffeine</span><span class="op">)</span></span></code></pre></div>
<p><img src="reference/figures/README-unnamed-chunk-4-1.png"><!-- --></p>
<p>Additional information can be (but is rarely ever) read from a local .yaml file. This information can be leveraged e.g. by the <a href="https://pkgdown.jrwb.de/pfm/reference/PEC_soil.html" class="external-link">PEC_soil</a> function of the ‘pfm’ package.</p>
<p>If you have a so-called ISO common name of a pesticide active ingredient, you can use the ‘pai’ class derived from the ‘chent’ class, which starts with querying the <a href="http://www.bcpcpesticidecompendium.org/" class="external-link">BCPC compendium</a> first.</p>
<div class="sourceCode" id="cb4"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">lambda</span> <span class="op">&lt;-</span> <span class="va"><a href="reference/pai.html">pai</a></span><span class="op">$</span><span class="fu">new</span><span class="op">(</span><span class="st">"lambda-cyhalothrin"</span><span class="op">)</span></span>
<span><span class="co">#&gt; Querying BCPC for lambda-cyhalothrin ...</span></span>
<span><span class="co">#&gt; Querying PubChem ...</span></span>
<span><span class="co">#&gt; Trying to get chemical information from RDKit using PubChem SMILES</span></span>
<span><span class="co">#&gt; CC1([C@@H]([C@@H]1C(=O)O[C@@H](C#N)C2=CC(=CC=C2)OC3=CC=CC=C3)/C=C(/C(F)(F)F)\Cl)C</span></span>
<span><span class="co">#&gt; RDKit mw is 449.856</span></span>
<span><span class="co">#&gt; mw is 449.8</span></span>
<span><span class="fu"><a href="https://rdrr.io/r/graphics/plot.default.html" class="external-link">plot</a></span><span class="op">(</span><span class="va">lambda</span><span class="op">)</span></span></code></pre></div>
<p><img src="reference/figures/README-unnamed-chunk-5-1.png"><!-- --></p>
<div class="section level2">
<h2 id="installation">Installation<a class="anchor" aria-label="anchor" href="#installation"></a>
</h2>
<p>You can conveniently install chents from the repository kindly made available by the R-Universe project:</p>
<div class="sourceCode" id="cb5"><pre class="sourceCode R"><code class="sourceCode r"><span id="cb5-1"><a href="#cb5-1" tabindex="-1"></a><span class="fu">install.packages</span>(<span class="st">"chents"</span>,</span>
<span id="cb5-2"><a href="#cb5-2" tabindex="-1"></a>  <span class="at">repos =</span> <span class="fu">c</span>(<span class="st">"https://jranke.r-universe.dev"</span>, <span class="st">"https://cran.r-project.org"</span>))</span></code></pre></div>
<p>In order to profit from the chemoinformatics, you need to install RDKit and its python bindings. On a Debian type Linux distribution, just use</p>
<div class="sourceCode" id="cb6"><pre class="sourceCode R"><code class="sourceCode r"><span id="cb6-1"><a href="#cb6-1" tabindex="-1"></a>sudo apt install python3<span class="sc">-</span>rdkit</span></code></pre></div>
<p>If you use this package on Windows or MacOS, I would be happy to include installation instructions here if you share them with me, e.g. via a Pull Request.</p>
</div>
<div class="section level2">
<h2 id="configuration-of-the-python-version-to-use">Configuration of the Python version to use<a class="anchor" aria-label="anchor" href="#configuration-of-the-python-version-to-use"></a>
</h2>
<p>On Debian type Linux distributions, you can use the following line in your global or project specific <code>.Rprofile</code> file to tell the <code>reticulate</code> package to use the system Python version that will find the RDKit installed in the system location.</p>
<div class="sourceCode" id="cb7"><pre class="sourceCode R"><code class="sourceCode r"><span id="cb7-1"><a href="#cb7-1" tabindex="-1"></a><span class="fu">Sys.setenv</span>(<span class="at">RETICULATE_PYTHON=</span><span class="st">"/usr/bin/python3"</span>)</span></code></pre></div>
</div>
</div>
  </main><aside class="col-md-3"><div class="links">
<h2 data-toc-skip>Links</h2>
<ul class="list-unstyled">
<li><a href="https://github.com/jranke/chents/" class="external-link">Browse source code</a></li>
</ul>
</div>

<div class="license">
<h2 data-toc-skip>License</h2>
<ul class="list-unstyled">
<li>GPL</li>
</ul>
</div>


<div class="citation">
<h2 data-toc-skip>Citation</h2>
<ul class="list-unstyled">
<li><a href="authors.html#citation">Citing chents</a></li>
</ul>
</div>

<div class="developers">
<h2 data-toc-skip>Developers</h2>
<ul class="list-unstyled">
<li>Johannes Ranke <br><small class="roles"> Author, maintainer, copyright holder </small>   </li>
</ul>
</div>



  </aside>
</div>


    <footer><div class="pkgdown-footer-left">
  <p>Developed by Johannes Ranke.</p>
</div>

<div class="pkgdown-footer-right">
  <p>Site built with <a href="https://pkgdown.r-lib.org/" class="external-link">pkgdown</a> 2.1.3.</p>
</div>

    </footer>
</div>





  </body>
</html>

Contact - Imprint