<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Tag Conversion on fastqrab documentation</title><link>https://tyberiusprime.github.io/fastqrab/v0.9.0/docs/reference/tag-steps/convert/</link><description>Recent content in Tag Conversion on fastqrab documentation</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://tyberiusprime.github.io/fastqrab/v0.9.0/docs/reference/tag-steps/convert/index.xml" rel="self" type="application/rss+xml"/><item><title/><link>https://tyberiusprime.github.io/fastqrab/v0.9.0/docs/reference/tag-steps/convert/ConvertRegionsToLength/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://tyberiusprime.github.io/fastqrab/v0.9.0/docs/reference/tag-steps/convert/ConvertRegionsToLength/</guid><description>&lt;h1 id="convertregionstolength">
 ConvertRegionsToLength
 &lt;a class="anchor" href="#convertregionstolength">#&lt;/a>
&lt;/h1>
&lt;p>Turn region tags (such as those produced by &lt;code>ExtractRegion&lt;/code>/&lt;code>ExtractRegions&lt;/code>) into numeric length tags.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-toml" data-lang="toml">&lt;span style="display:flex;">&lt;span>[[&lt;span style="color:#a6e22e">step&lt;/span>]]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">action&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;ExtractRegion&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">out_label&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;adapter&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">source&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;read1&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">start&lt;/span> = &lt;span style="color:#ae81ff">0&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">len&lt;/span> = &lt;span style="color:#ae81ff">12&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">anchor&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;Start&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>[[&lt;span style="color:#a6e22e">step&lt;/span>]]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">action&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;ConvertRegionsToLength&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">out_label&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;adapter_len&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">in_label&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;adapter&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;ul>
&lt;li>The new tag stores the total span (in bases) covered by all regions on each read.&lt;/li>
&lt;li>Reads without the source tag receive a length of &lt;code>0&lt;/code>.&lt;/li>
&lt;li>&lt;code>label&lt;/code> must be different from &lt;code>region_label&lt;/code>; the step keeps the original region tag.&lt;/li>
&lt;/ul></description></item><item><title/><link>https://tyberiusprime.github.io/fastqrab/v0.9.0/docs/reference/tag-steps/convert/EvalExpression/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://tyberiusprime.github.io/fastqrab/v0.9.0/docs/reference/tag-steps/convert/EvalExpression/</guid><description>&lt;h1 id="evalexpression">
 EvalExpression
 &lt;a class="anchor" href="#evalexpression">#&lt;/a>
&lt;/h1>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-toml" data-lang="toml">&lt;span style="display:flex;">&lt;span>[[&lt;span style="color:#a6e22e">step&lt;/span>]]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">action&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;EvalExpression&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">out_label&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;outtag&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">expression&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;log(2, mytag + 1)&amp;#34;&lt;/span> &lt;span style="color:#75715e"># log to base 2&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">result_type&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;numeric&amp;#34;&lt;/span> &lt;span style="color:#75715e"># or bool.&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Calculate a &lt;a href="https://docs.rs/fasteval/latest/fasteval/">fasteval&lt;/a> expression on your tags,
which you can then pass to .&lt;a href="https://tyberiusprime.github.io/fastqrab/v0.9.0/fastqrab/v0.9.0/docs/reference/filter-steps/FilterByTag/">FilterByTag&lt;/a>.&lt;/p>
&lt;p>You can use any tags previously defined on the molecule as variables in the expression.&lt;/p>
&lt;p>Location/String tags get converted into bools (false=0, true=1) based on whether
they are present (=not missing).&lt;/p>
&lt;p>That means you can for example chain this after
&lt;a href="https://tyberiusprime.github.io/fastqrab/v0.9.0/fastqrab/v0.9.0/docs/reference/tag-steps/using/HammingCorrect/">HammingCorrect&lt;/a>
with &lt;code>on_no_match&lt;/code> = &amp;lsquo;remove&amp;rsquo;.&lt;/p></description></item><item><title>Compare String Tags</title><link>https://tyberiusprime.github.io/fastqrab/v0.9.0/docs/reference/tag-steps/convert/CompareStringTags/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://tyberiusprime.github.io/fastqrab/v0.9.0/docs/reference/tag-steps/convert/CompareStringTags/</guid><description>&lt;h1 id="comparestringtags">
 CompareStringTags
 &lt;a class="anchor" href="#comparestringtags">#&lt;/a>
&lt;/h1>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-toml" data-lang="toml">&lt;span style="display:flex;">&lt;span>[[&lt;span style="color:#a6e22e">step&lt;/span>]]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">action&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;CompareStringTags&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">in_label_a&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;tag_a&amp;#34;&lt;/span> &lt;span style="color:#75715e"># First string or location tag to compare&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">in_label_b&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;tag_b&amp;#34;&lt;/span> &lt;span style="color:#75715e"># Second string or location tag to compare&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">out_label&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;cmp&amp;#34;&lt;/span> &lt;span style="color:#75715e"># Numeric output: -1, 0, or 1 for smaller, equal, larger&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Compare two string- or location-valued tags lexicographically (byte-by-byte).&lt;/p>
&lt;p>The output tag is numeric:&lt;/p>
&lt;ul>
&lt;li>&lt;code>-1&lt;/code> if &lt;code>tag_a &amp;lt; tag_b&lt;/code>&lt;/li>
&lt;li>&lt;code>0&lt;/code> if &lt;code>tag_a == tag_b&lt;/code>&lt;/li>
&lt;li>&lt;code>1&lt;/code> if &lt;code>tag_a &amp;gt; tag_b&lt;/code>&lt;/li>
&lt;/ul>
&lt;p>Both tags must contain sequences of the same length for every read.
A runtime error is raised for any read where the two sequences have different lengths.&lt;/p></description></item><item><title>Convert To Rate</title><link>https://tyberiusprime.github.io/fastqrab/v0.9.0/docs/reference/tag-steps/convert/ConvertToRate/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://tyberiusprime.github.io/fastqrab/v0.9.0/docs/reference/tag-steps/convert/ConvertToRate/</guid><description>&lt;h1 id="converttorate">
 ConvertToRate
 &lt;a class="anchor" href="#converttorate">#&lt;/a>
&lt;/h1>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-toml" data-lang="toml">&lt;span style="display:flex;">&lt;span>[[&lt;span style="color:#a6e22e">step&lt;/span>]]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">action&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;CalcBaseContent&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">segment&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;read1&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">bases_to_count&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;A&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">relative&lt;/span> = &lt;span style="color:#66d9ef">false&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">out_label&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;a_count&amp;#34;&lt;/span> &lt;span style="color:#75715e"># absolute A-base count&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>[[&lt;span style="color:#a6e22e">step&lt;/span>]]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">action&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;ConvertToRate&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">in_label&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;a_count&amp;#34;&lt;/span> &lt;span style="color:#75715e"># The numeric tag to divide by read length&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">out_label&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;a_rate&amp;#34;&lt;/span> &lt;span style="color:#75715e"># Output tag label&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">segment&lt;/span> = &lt;span style="color:#e6db74">&amp;#34;read1&amp;#34;&lt;/span> &lt;span style="color:#75715e"># Segment to measure length from, or &amp;#39;All&amp;#39; for total length (default: only segment if single-read input)&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Divide an existing numeric tag by the read length to produce a normalized rate.&lt;/p>
&lt;p>Typical use case: Divide
&lt;a href="https://tyberiusprime.github.io/fastqrab/v0.9.0/fastqrab/v0.9.0/docs/reference/tag-steps/convert/EvalExpression/">EvalExpression&lt;/a>
by the read length to get a fraction (rate).&lt;/p></description></item></channel></rss>