<?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/main/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/main/docs/reference/tag-steps/convert/index.xml" rel="self" type="application/rss+xml"/><item><title/><link>https://tyberiusprime.github.io/fastqrab/main/docs/reference/tag-steps/convert/ConvertRegionsToLength/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://tyberiusprime.github.io/fastqrab/main/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/main/docs/reference/tag-steps/convert/EvalExpression/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://tyberiusprime.github.io/fastqrab/main/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/main/fastqrab/main/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>Additional, there&amp;rsquo;s a series of virtual tags available:&lt;/p>
&lt;ul>
&lt;li>&lt;code>len_&amp;lt;segment-name&amp;gt;&lt;/code> - the length of the specified segment (e.g. &lt;code>len_read1&lt;/code>).&lt;/li>
&lt;li>&lt;code>len_&amp;lt;tag-label&amp;gt;&lt;/code> - the length of the specified tag (e.g. &lt;code>len_mytag&lt;/code>). For location tags,
this is the length of the underlying matched regions (which may change / be lost when reads are truncated - eval before truncation if necessary). For string tags (= &lt;a href="https://tyberiusprime.github.io/fastqrab/main/fastqrab/main/docs/reference/tag-steps/extract/ExtractRegex/">ExtractRegex&lt;/a> with &lt;code>source=name:...&lt;/code>) this is the length of the &lt;em>replaced&lt;/em> string.&lt;/li>
&lt;li>&lt;code>read_no&lt;/code> - the running number of the read (starting with 0)&lt;/li>
&lt;/ul>
&lt;h2 id="language">
 Language
 &lt;a class="anchor" href="#language">#&lt;/a>
&lt;/h2>
&lt;p>Besides the regular arithmetic operators (+, -, *, /, %, ^)
this supports log(base, val), e(), pi(), int(), ceil(), floor(), round(), abs(), sign(), min(a,b,&amp;hellip;), max(a,b,&amp;hellip;)
sin(radians), cos(radians), tan(radians), sinh(radians), cosh(radians), tanh(radians),
Use any defined tag by name. Location/string tags are converted to booleans by their presence.&lt;/p></description></item><item><title>Convert To Rate</title><link>https://tyberiusprime.github.io/fastqrab/main/docs/reference/tag-steps/convert/ConvertToRate/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://tyberiusprime.github.io/fastqrab/main/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/main/fastqrab/main/docs/reference/tag-steps/convert/EvalExpression/">EvalExpression&lt;/a>
by the read length to get a fraction (rate).&lt;/p></description></item></channel></rss>