Files
OBIJupyterHub/jupyterhub_volumes/web/obidoc/obitools/obimultiplex/index.html
Eric Coissac 30b7175702 Make cleaning
2025-11-17 14:18:13 +01:00

2144 lines
67 KiB
HTML

<!DOCTYPE html>
<html lang="en-us" dir="ltr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="
obimultiplex: demultiplex the sequence reads
#
Description
#
The
obimultiplex
command demultiplexes sequencing reads by identifying sample-specific tags (barcodes) and PCR primers in the sequences. It assigns each sequence to its corresponding sample based on the tag combinations and primer sequences provided in a sample description file.
The demultiplexing process involves:
Identifying forward and reverse PCR primers in the sequences.
Detecting sample-specific tags.
Assigning sequences to samples based on the tag/primer combinations.
Trimming primers and tags from the sequences.
Reverse complementing the sequences if needed.
Adding comprehensive annotations about the identification process.
The new obimultiplex sample description file format
#
If
obimultiplex
is still able to use the old ngsfilter format used by the legacy obitools, it is now preferable to rely on the new format.">
<meta name="theme-color" media="(prefers-color-scheme: light)" content="#ffffff">
<meta name="theme-color" media="(prefers-color-scheme: dark)" content="#343a40">
<meta name="color-scheme" content="light dark"><meta property="og:url" content="http://metabar:8888/obidoc/obitools/obimultiplex/">
<meta property="og:site_name" content="OBITools4 documentation">
<meta property="og:title" content="obimultiplex">
<meta property="og:description" content="obimultiplex: demultiplex the sequence reads # Description # The obimultiplex command demultiplexes sequencing reads by identifying sample-specific tags (barcodes) and PCR primers in the sequences. It assigns each sequence to its corresponding sample based on the tag combinations and primer sequences provided in a sample description file.
The demultiplexing process involves:
Identifying forward and reverse PCR primers in the sequences. Detecting sample-specific tags. Assigning sequences to samples based on the tag/primer combinations. Trimming primers and tags from the sequences. Reverse complementing the sequences if needed. Adding comprehensive annotations about the identification process. The new obimultiplex sample description file format # If obimultiplex is still able to use the old ngsfilter format used by the legacy obitools, it is now preferable to rely on the new format.">
<meta property="og:locale" content="en_us">
<meta property="og:type" content="website">
<title>obimultiplex | OBITools4 documentation</title>
<link rel="icon" href="/obidoc/favicon.png" >
<link rel="manifest" href="/obidoc/manifest.json">
<link rel="canonical" href="http://metabar:8888/obidoc/obitools/obimultiplex/">
<link rel="stylesheet" href="/obidoc/book.min.5fd7b8e2d1c0ae15da279c52ff32731130386f71b58f011468f20d0056fe6b78.css" integrity="sha256-X9e44tHArhXaJ5xS/zJzETA4b3G1jwEUaPINAFb&#43;a3g=" crossorigin="anonymous">
<script defer src="/obidoc/fuse.min.js"></script>
<script defer src="/obidoc/en.search.min.4da51bdd2d833922fdbc0e19df517221387fc625ffb68ee140d605b3c5b68058.js" integrity="sha256-TaUb3S2DOSL9vA4Z31FyITh/xiX/to7hQNYFs8W2gFg=" crossorigin="anonymous"></script>
<script defer src="/obidoc/sw.min.32af8eafce4180aa1c5dea66d99fb26ba9043ea7c7a4c706138c91d9051b285e.js" integrity="sha256-Mq&#43;Or85BgKocXepm2Z&#43;ya6kEPqfHpMcGE4yR2QUbKF4=" crossorigin="anonymous"></script>
<link rel="alternate" type="application/rss+xml" href="http://metabar:8888/obidoc/obitools/obimultiplex/index.xml" title="OBITools4 documentation" />
<!--
Made with Book Theme
https://github.com/alex-shpak/hugo-book
-->
<link rel="stylesheet" type="text/css" href="http://metabar:8888/obidoc/hugo-cite.css" />
</head>
<body dir="ltr">
<input type="checkbox" class="hidden toggle" id="menu-control" />
<input type="checkbox" class="hidden toggle" id="toc-control" />
<main class="container flex">
<aside class="book-menu">
<div class="book-menu-content">
<nav>
<h2 class="book-brand">
<a class="flex align-center" href="/obidoc/"><img src="/obidoc/obitools_logo.jpg" alt="Logo" class="book-icon" /><span>OBITools4 documentation</span>
</a>
</h2>
<div class="book-search hidden">
<input type="text" id="book-search-input" placeholder="Search" aria-label="Search" maxlength="64" data-hotkeys="s/" />
<div class="book-search-spinner hidden"></div>
<ul id="book-search-results"></ul>
</div>
<script>document.querySelector(".book-search").classList.remove("hidden")</script>
<ul>
<li>
<span>Docs</span>
<ul>
<li>
<a href="/obidoc/docs/about/" class="">About</a>
</li>
<li>
<a href="/obidoc/docs/installation/" class="">Installation</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/docs/principles/" class="">General operating principles</a>
<ul>
</ul>
</li>
<li>
<input type="checkbox" id="section-08756b4c1f14be6ee584ece005b9f621" class="toggle" />
<label for="section-08756b4c1f14be6ee584ece005b9f621" class="flex justify-between">
<a role="button" class="">File formats</a>
</label>
<ul>
<li>
<input type="checkbox" id="section-933c2e64b905b84e22aa5273cea2d0bd" class="toggle" />
<label for="section-933c2e64b905b84e22aa5273cea2d0bd" class="flex justify-between">
<a role="button" class="">Sequence file formats</a>
</label>
<ul>
<li>
<a href="/obidoc/formats/fasta/" class="">FASTA file format</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/formats/fastq/" class="">FASTQ file format</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/formats/genbank/" class="">GenBank Flat File format</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/formats/embl/" class="">EMBL Flat File format</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/docs/file_format/sequence_files/csv/" class="">CSV format</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/formats/json/" class="">JSON format</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/docs/file_format/sequence_files/annotations/" class="">Annotation of sequences</a>
<ul>
</ul>
</li>
</ul>
</li>
<li>
<input type="checkbox" id="section-0258ae1c222f9a38cc1b75254c93b0f4" class="toggle" />
<label for="section-0258ae1c222f9a38cc1b75254c93b0f4" class="flex justify-between">
<a role="button" class="">Taxonomy file formats</a>
</label>
<ul>
<li>
<a href="/obidoc/docs/file_format/taxonomy_file/csv_taxdump/" class="">CSV formatted taxdump</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/docs/file_format/taxonomy_file/ncbi_taxdump/" class="">NCBI taxdump</a>
<ul>
</ul>
</li>
</ul>
</li>
<li>
<a href="/obidoc/formats/csv/" class="">The CSV format</a>
<ul>
</ul>
</li>
</ul>
</li>
<li>
<input type="checkbox" id="section-70b1e6e5ec7f3ccab643155fa50659b6" class="toggle" />
<label for="section-70b1e6e5ec7f3ccab643155fa50659b6" class="flex justify-between">
<a role="button" class="">Patterns</a>
</label>
<ul>
<li>
<a href="/obidoc/docs/patterns/regular/" class="">Regular Expressions</a>
</li>
<li>
<a href="/obidoc/docs/patterns/dnagrep/" class="">DNA Patterns</a>
</li>
</ul>
</li>
<li>
<input type="checkbox" id="section-8223f464911a1fe6c655972143684e93" class="toggle" checked />
<label for="section-8223f464911a1fe6c655972143684e93" class="flex justify-between">
<a role="button" class="">The OBITools4 commands</a>
</label>
<ul>
<li>
<a href="/obidoc/docs/commands/options/" class="">Shared command options</a>
<ul>
</ul>
</li>
<li>
<input type="checkbox" id="section-8921ea65523c266b128dd4263232b0fc" class="toggle" />
<label for="section-8921ea65523c266b128dd4263232b0fc" class="flex justify-between">
<a role="button" class="">Basics</a>
</label>
<ul>
<li>
<a href="/obidoc/obitools/obiannotate/" class="">obiannotate</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obicomplement/" class="">obicomplement</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obiconvert/" class="">obiconvert</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obicount/" class="">obicount</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obicsv/" class="">obicsv</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obidemerge/" class="">obidemerge</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obidistribute/" class="">obidistribute</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obigrep/" class="">obigrep</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obijoin/" class="">obijoin</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obimatrix/" class="">obimatrix</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obisplit/" class="">obisplit</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obisummary/" class="">obisummary</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obiuniq/" class="">obiuniq</a>
<ul>
</ul>
</li>
</ul>
</li>
<li>
<input type="checkbox" id="section-dbdf1bb5377572439394e60e08c30f50" class="toggle" checked />
<label for="section-dbdf1bb5377572439394e60e08c30f50" class="flex justify-between">
<a role="button" class="">Demultiplexing samples</a>
</label>
<ul>
<li>
<a href="/obidoc/obitools/obimultiplex/" class="active">obimultiplex</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obitagpcr/" class="">obitagpcr</a>
<ul>
</ul>
</li>
</ul>
</li>
<li>
<input type="checkbox" id="section-aa98fedd067b51150db59691a8ea8edd" class="toggle" />
<label for="section-aa98fedd067b51150db59691a8ea8edd" class="flex justify-between">
<a role="button" class="">Sequence alignments</a>
</label>
<ul>
<li>
<a href="/obidoc/obitools/obiclean/" class="">obiclean</a>
<ul>
</ul>
</li>
<li>
<input type="checkbox" id="section-7433746525d8c2b29b033f765c869acd" class="toggle" />
<label for="section-7433746525d8c2b29b033f765c869acd" class="flex justify-between">
<a href="/obidoc/obitools/obipairing/" class="">obipairing</a>
</label>
<ul>
<li>
<a href="/obidoc/docs/commands/alignments/obipairing/fasta-like/" class="">The FASTA-like alignment</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/docs/commands/alignments/obipairing/exact-alignment/" class="">Exact alignment</a>
<ul>
</ul>
</li>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obipcr/" class="">obipcr</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obirefidx/" class="">obirefidx</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obitag/" class="">obitag</a>
<ul>
</ul>
</li>
</ul>
</li>
<li>
<input type="checkbox" id="section-5746f699d10490780dec8e30ab2dd3ce" class="toggle" />
<label for="section-5746f699d10490780dec8e30ab2dd3ce" class="flex justify-between">
<a role="button" class="">Taxonomy</a>
</label>
<ul>
<li>
<a href="/obidoc/obitools/obitaxonomy/" class="">obitaxonomy</a>
<ul>
</ul>
</li>
</ul>
</li>
<li>
<input type="checkbox" id="section-3f50c4fe7ab436a56ae92897d5444956" class="toggle" />
<label for="section-3f50c4fe7ab436a56ae92897d5444956" class="flex justify-between">
<a role="button" class="">Advanced tools</a>
</label>
<ul>
<li>
<a href="/obidoc/obitools/obiscript/" class="">obiscript</a>
<ul>
</ul>
</li>
</ul>
</li>
<li>
<input type="checkbox" id="section-549be3934679fcb82a232f6bd5435563" class="toggle" />
<label for="section-549be3934679fcb82a232f6bd5435563" class="flex justify-between">
<a role="button" class="">Others</a>
</label>
<ul>
<li>
<a href="/obidoc/obitools/obimicrosat/" class="">obimicrosat</a>
<ul>
</ul>
</li>
</ul>
</li>
<li>
<input type="checkbox" id="section-ceca4455173761e30cbc0a6dc2327167" class="toggle" />
<label for="section-ceca4455173761e30cbc0a6dc2327167" class="flex justify-between">
<a role="button" class="">Experimentals</a>
</label>
<ul>
<li>
<a href="/obidoc/obitools/obicleandb/" class="">obicleandb</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obiconsensus/" class="">obiconsensus</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/obitools/obilandmark/" class="">obilandmark</a>
<ul>
</ul>
</li>
</ul>
</li>
<li>
<a href="/obidoc/docs/commands/tags/" class="">Glossary of tags</a>
</li>
</ul>
</li>
<li>
<input type="checkbox" id="section-9b1bcd52530c59dc4819b1f61c128f54" class="toggle" />
<label for="section-9b1bcd52530c59dc4819b1f61c128f54" class="flex justify-between">
<a role="button" class="">Cookbook</a>
</label>
<ul>
<li>
<a href="/obidoc/docs/cookbook/illumina/" class="">Analysing an Illumina data set</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/docs/cookbook/ecoprimers/" class="">Designing new barcodes</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/docs/cookbook/local_genbank/" class="">Prepare a local copy of Genbank</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/docs/cookbook/reference_db/" class="">Build a reference database</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/docs/cookbook/minion/" class="">Oxford Nanopore data analysis</a>
<ul>
</ul>
</li>
</ul>
</li>
<li>
<span>Programming OBITools</span>
<ul>
<li>
<a href="/obidoc/docs/programming/expression/" class="">Expression language</a>
<ul>
</ul>
</li>
<li>
<input type="checkbox" id="section-6d580829a667b5cca790b286d99a10fe" class="toggle" />
<label for="section-6d580829a667b5cca790b286d99a10fe" class="flex justify-between">
<a href="/obidoc/docs/programming/lua/" class="">Lua: for scripting OBITools</a>
</label>
<ul>
<li>
<input type="checkbox" id="section-2fb081dac812d624eea5f4268fca9e26" class="toggle" />
<label for="section-2fb081dac812d624eea5f4268fca9e26" class="flex justify-between">
<a role="button" class="">Obitools Classes</a>
</label>
<ul>
<li>
<a href="/obidoc/docs/programming/lua/obitools_classes/biosequence/" class="">BioSequence</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/docs/programming/lua/obitools_classes/biosequenceslice/" class="">BioSequenceSlice</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/docs/programming/lua/obitools_classes/taxonomy/" class="">Taxonomy</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/docs/programming/lua/obitools_classes/taxon/" class="">Taxon</a>
<ul>
</ul>
</li>
<li>
<a href="/obidoc/docs/programming/lua/obitools_classes/mutex/" class="">Mutex</a>
<ul>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</nav>
<script>(function(){var e=document.querySelector("aside .book-menu-content");addEventListener("beforeunload",function(){localStorage.setItem("menu.scrollTop",e.scrollTop)}),e.scrollTop=localStorage.getItem("menu.scrollTop")})()</script>
</div>
</aside>
<div class="book-page">
<header class="book-header">
<div class="flex align-center justify-between">
<label for="menu-control">
<img src="/obidoc/svg/menu.svg" class="book-icon" alt="Menu" />
</label>
<h3>obimultiplex</h3>
<label for="toc-control">
<img src="/obidoc/svg/toc.svg" class="book-icon" alt="Table of Contents" />
</label>
</div>
<aside class="hidden clearfix">
<nav id="TableOfContents">
<ul>
<li><a href="#obimultiplex-demultiplex-the-sequence-reads"><code>obimultiplex</code>: demultiplex the sequence reads</a>
<ul>
<li><a href="#description">Description</a>
<ul>
<li><a href="#the-new-obimultiplex-sample-description-file-format">The new <code>obimultiplex</code> sample description file format</a></li>
</ul>
</li>
<li><a href="#synopsis">Synopsis</a></li>
<li><a href="#options">Options</a>
<ul>
<li></li>
</ul>
</li>
<li><a href="#examples">Examples</a></li>
</ul>
</li>
</ul>
</nav>
</aside>
</header>
<article class="markdown book-article"><h1 id="obimultiplex-demultiplex-the-sequence-reads">
<code>obimultiplex</code>: demultiplex the sequence reads
<a class="anchor" href="#obimultiplex-demultiplex-the-sequence-reads">#</a>
</h1>
<h2 id="description">
Description
<a class="anchor" href="#description">#</a>
</h2>
<p>The <a href="http://metabar:8888/obidoc/obitools/obimultiplex/">
<abbr title="obimultiplex: "><code>obimultiplex</code></abbr>
</a> command demultiplexes sequencing reads by identifying sample-specific tags (barcodes) and PCR primers in the sequences. It assigns each sequence to its corresponding sample based on the tag combinations and primer sequences provided in a sample description file.</p>
<p>The demultiplexing process involves:</p>
<ul>
<li>Identifying forward and reverse PCR primers in the sequences.</li>
<li>Detecting sample-specific tags.</li>
<li>Assigning sequences to samples based on the tag/primer combinations.</li>
<li>Trimming primers and tags from the sequences.</li>
<li>Reverse complementing the sequences if needed.</li>
<li>Adding comprehensive annotations about the identification process.</li>
</ul>
<h3 id="the-new-obimultiplex-sample-description-file-format">
The new <code>obimultiplex</code> sample description file format
<a class="anchor" href="#the-new-obimultiplex-sample-description-file-format">#</a>
</h3>
<p>If <a href="http://metabar:8888/obidoc/obitools/obimultiplex/">
<abbr title="obimultiplex: "><code>obimultiplex</code></abbr>
</a> is still able to use the old <em>ngsfilter</em> format used by the legacy obitools, it is now preferable to rely on the new format.</p>
<p>The new format is a
<a href="http://metabar:8888/obidoc/docs/file_format/sequence_files/csv/">CSV</a>
file, which can easily be prepared using an export from your favourite spreadsheet program.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-csv" data-lang="csv"><span style="display:flex;"><span><span style="color:#e6db74"># primer matching options</span>
</span></span><span style="display:flex;"><span><span style="color:#e6db74">@param</span>,<span style="color:#e6db74">primer_mismatches</span>,<span style="color:#e6db74">2</span>
</span></span><span style="display:flex;"><span><span style="color:#e6db74">@param</span>,<span style="color:#e6db74">indels</span>,<span style="color:#e6db74">false</span>
</span></span><span style="display:flex;"><span><span style="color:#e6db74"># tag matching options</span>
</span></span><span style="display:flex;"><span><span style="color:#e6db74">@param</span>,<span style="color:#e6db74">matching</span>,<span style="color:#e6db74">strict</span>
</span></span><span style="display:flex;"><span><span style="color:#e6db74">experiment</span>,<span style="color:#e6db74">sample</span>,<span style="color:#e6db74">sample_tag</span>,<span style="color:#e6db74">forward_primer</span>,<span style="color:#e6db74">reverse_primer</span>
</span></span><span style="display:flex;"><span><span style="color:#e6db74">wolf_diet</span>,<span style="color:#e6db74">13a_F730603</span>,<span style="color:#e6db74">aattaac</span>,<span style="color:#e6db74">TTAGATACCCCACTATGC</span>,<span style="color:#e6db74">TAGAACAGGCTCCTCTAG</span>
</span></span><span style="display:flex;"><span><span style="color:#e6db74">wolf_diet</span>,<span style="color:#e6db74">15a_F730814</span>,<span style="color:#e6db74">gaagtag</span>,<span style="color:#e6db74">TTAGATACCCCACTATGC</span>,<span style="color:#e6db74">TAGAACAGGCTCCTCTAG</span>
</span></span></code></pre></div><p>The
<a href="http://metabar:8888/obidoc/docs/file_format/sequence_files/csv/">CSV</a>
file is divided into two sections. The first section consists of lines beginning with <code>@param</code> in the first cell. These lines specify the parameters used to match the primers and tags to the sequence. The second section provides a description of all the samples (PCRs) included in the sequencing library. This section begins with a line containing the names of the columns used to describe the samples in the subsequent lines. Only the second section is required.</p>
<h4 id="basic-format-and-required-columns">
Basic format and required columns
<a class="anchor" href="#basic-format-and-required-columns">#</a>
</h4>
<p>Below is an example for the minimal description of the PCRs multiplexed in the
sequencing library. In the new version of <em>OBITools4</em> this file is a
<a href="http://metabar:8888/obidoc/docs/file_format/sequence_files/csv/">CSV</a>
file.</p>
<p>The first line is mandatory and must contains at least the five column names presented below:</p>
<ul>
<li>
<p><code>experiment</code>: the name of the experiment that allows for grouping of samples;</p>
</li>
<li>
<p><code>sample</code>: the sample (PCR) name;</p>
</li>
<li>
<p><code>sample_tag</code>: the tag identifying the sample:</p>
<p>Each sample tag must be unique within the library for each pair of primers. They can be
provided in upper or lower case. No distinction is made between the two.</p>
<ul>
<li>
<p>They can be a simple DNA word as here. This means that the same tag is used
for both forward and reverse primers (eg: <code>aattaac</code>).</p>
</li>
<li>
<p>It can be two DNA words separated by a colon. For example, <code>aagtag:gaagtag</code>.
This means that the first tag is used for the forward primer and the second for the
reverse primers.</p>
<link rel="stylesheet" href="/obidoc/css/vendors/admonitions.5c73bad2903e7d2d44ad118370ebd8c2cf5f239d4d93c283e55c00f2f8d30746.css" integrity="sha256-XHO60pA&#43;fS1ErRGDcOvYws9fI51Nk8KD5VwA8vjTB0Y=" crossorigin="anonymous">
<div class="admonition note">
<div class="admonition-header"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path d="M0 64C0 28.7 28.7 0 64 0L224 0l0 128c0 17.7 14.3 32 32 32l128 0 0 125.7-86.8 86.8c-10.3 10.3-17.5 23.1-21 37.2l-18.7 74.9c-2.3 9.2-1.8 18.8 1.3 27.5L64 512c-35.3 0-64-28.7-64-64L0 64zm384 64l-128 0L256 0 384 128zM549.8 235.7l14.4 14.4c15.6 15.6 15.6 40.9 0 56.6l-29.4 29.4-71-71 29.4-29.4c15.6-15.6 40.9-15.6 56.6 0zM311.9 417L441.1 287.8l71 71L382.9 487.9c-4.1 4.1-9.2 7-14.9 8.4l-60.1 15c-5.5 1.4-11.2-.2-15.2-4.2s-5.6-9.7-4.2-15.2l15-60.1c1.4-5.6 4.3-10.8 8.4-14.9z"/></svg>
<span>The example presented above :<code>aattaac</code> is equivalent to <code>aattaac:aattaac</code>.</span>
</div>
</div></li>
<li>
<p>In the two-word syntax, if a forward or reverse primer is not tagged, the tag
is replaced by a hyphen. For example, <code>aagtag:-</code> or <code>-:aagtag</code>. Consequently, an
experiments conducted without primer tags must declare a dummy tag: <code>-:-</code>.</p>
</li>
</ul>
<div class="admonition caution">
<div class="admonition-header"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480L40 480c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24l0 112c0 13.3 10.7 24 24 24s24-10.7 24-24l0-112c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"/></svg>
<span>For a given primer all the tags must have the same length.</span>
</div>
</div></li>
<li>
<p>forward_primer: the forward primer sequence</p>
</li>
<li>
<p>reverse_primer: the reverse primer sequence</p>
</li>
</ul>
<a style="padding: 10px 20px; background-color: #cacaca; border: 1px solid #8e8080; border-bottom: none; border-radius: 5px 5px 0 0; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1)"
href="samples_simple.csv" download="samples_simple.csv">📄 samples_simple.csv</a>
<DIV style="border: 2px solid #8e8080; border-radius: 0 0 5px 5px; padding: 20px; background-color: white; ">
<div class="highlight"><div style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">
<table style="border-spacing:0;padding:0;margin:0;border:0;"><tr><td style="vertical-align:top;padding:0;margin:0;border:0;">
<pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">1
</span><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">2
</span><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">3
</span><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">4
</span><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">5
</span></code></pre></td>
<td style="vertical-align:top;padding:0;margin:0;border:0;;width:100%">
<pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-csv" data-lang="csv"><span style="display:flex;"><span><span style="color:#e6db74">experiment</span>,<span style="color:#e6db74">sample</span>,<span style="color:#e6db74">sample_tag</span>,<span style="color:#e6db74">forward_primer</span>,<span style="color:#e6db74">reverse_primer</span>
</span></span><span style="display:flex;"><span><span style="color:#e6db74">wolf_diet</span>,<span style="color:#e6db74">13a_F730603</span>,<span style="color:#e6db74">aattaac</span>,<span style="color:#e6db74">TTAGATACCCCACTATGC</span>,<span style="color:#e6db74">TAGAACAGGCTCCTCTAG</span>
</span></span><span style="display:flex;"><span><span style="color:#e6db74">wolf_diet</span>,<span style="color:#e6db74">15a_F730814</span>,<span style="color:#e6db74">gaagtag</span>,<span style="color:#e6db74">TTAGATACCCCACTATGC</span>,<span style="color:#e6db74">TAGAACAGGCTCCTCTAG</span>
</span></span><span style="display:flex;"><span><span style="color:#e6db74">wolf_diet</span>,<span style="color:#e6db74">26a_F040644</span>,<span style="color:#e6db74">gaatatc</span>,<span style="color:#e6db74">TTAGATACCCCACTATGC</span>,<span style="color:#e6db74">TAGAACAGGCTCCTCTAG</span>
</span></span><span style="display:flex;"><span><span style="color:#e6db74">wolf_diet</span>,<span style="color:#e6db74">29a_F260619</span>,<span style="color:#e6db74">gcctcct</span>,<span style="color:#e6db74">TTAGATACCCCACTATGC</span>,<span style="color:#e6db74">TAGAACAGGCTCCTCTAG</span>
</span></span></code></pre></td></tr></table>
</div>
</div></td>
</DIV>
<a style="padding: 10px 20px; background-color: #cacaca; border: 1px solid #8e8080; border-bottom: none; border-radius: 5px 5px 0 0; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1)"
href="wolf_4seq.fastq" download="wolf_4seq.fastq">📄 wolf_4seq.fastq</a>
<DIV style="border: 2px solid #8e8080; border-radius: 0 0 5px 5px; padding: 20px; background-color: white; ">
<pre tabindex="0"><code class="language-fastq" data-lang="fastq">@HELIUM_000100422_612GNAAXX:7:6:9274:14951#0/1
ccaattaactagaacaggctcgtctagaagggtataaagcaccgccaagtcctttgagttttaagctattgccggtagtactctggcgaatagttttgtttgcataactatttgtgtttaaggctaggcatagtggggtatctaagttaattgg
+
CCCCCCCCCDCCCCCCCCCCCCCCCCCCCCCC=CBCCBCBCCCCCCDEFAEDEEEEBEAEJEJ?D?CD@^aVca\C????CEBC&gt;I?D&lt;&gt;EEDDDEEEEEEEAFEEDECCCCCCCCCCCCCCCBCCCCCCBCCCCCCCCCDCCCCCCCCCCCBC
@HELIUM_000100422_612GNAAXX:7:57:18459:16145#0/1
ccgaatatcttagataccccactatgcttagccctaaacataaacattcaataaacaagaatgttcgccagagtactactagcaacagcctgaaactcaaaggacttggcggtgctttacatccctctagaggagcctgttctagatattcgg
+
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCacZXceafbd_e_bVb`cb[WZb]aaaaV`ECDDCEDCDKECFFEEEEEDEDEEJEEE@EEJECCCCCBCCCCCCCCCCCCCCCCCCCCDCCCCCCCCCCCCCCCBCC
@HELIUM_000100422_612GNAAXX:7:108:5640:3823#0/1
ccgcctcctttagataccccactatgcttagccctaaacacaagtaattaatataacaaaattgttcgccagagtactaccggcaatagcttaaaactcaaaggacttggcggtgctttatacccttctagaggagcctgttctaaggaggcgg
+
CCCCCCCBCCCCCCCCCCCCCCCCCCCCCCBCCCCCBCCCCCCC&lt;CcCccbe[`F`accXV&lt;TA\RYU\\ee_e[XZ[XEEEEEEEEEE?EEEEEEEEEEDEEEEEEECCCCCCCCCCCCCCCCCCCCCCCACCCCCACCCCCCCCCCCCCCCC
@HELIUM_000100422_612GNAAXX:7:108:6440:4223#0/1
ccgcctcctttagatcccactatgcttagccctaaacacaagtaattaatataacaaaattgttcgccagagtactaccggcaatagcttaaaactcaaaggacttggcggtgctttatacccttctagaggagcctgttctaaggaggcgg
+
CCCCCCCBCCCCCCCCCCCCCCCCCCCCBCCCCCBCCCCCCC&lt;CcCccbe[`F`accXV&lt;TA\RYU\\ee_e[XZ[XEEEEEEEEEE?EEEEEEEEEEDEEEEEEECCCCCCCCCCCCCCCCCCCCCCCACCCCCACCCCCCCCCCCCCCCC
</code></pre></td>
</DIV>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>obimultiplex -s samples_simple.csv <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span> wolf_4seq.fastq <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span> &gt; wolf_4seq_simple.fastq
</span></span></code></pre></div>
<a style="padding: 10px 20px; background-color: #cacaca; border: 1px solid #8e8080; border-bottom: none; border-radius: 5px 5px 0 0; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1)"
href="wolf_4seq_simple.fastq" download="wolf_4seq_simple.fastq">📄 wolf_4seq_simple.fastq</a>
<DIV style="border: 2px solid #8e8080; border-radius: 0 0 5px 5px; padding: 20px; background-color: white; ">
<pre tabindex="0"><code class="language-fastq" data-lang="fastq">@HELIUM_000100422_612GNAAXX:7:6:9274:14951#0/1_sub[28..127] {&#34;experiment&#34;:&#34;wolf_diet&#34;,&#34;obimultiplex_amplicon_rank&#34;:&#34;1/1&#34;,&#34;obimultiplex_direction&#34;:&#34;reverse&#34;,&#34;obimultiplex_forward_error&#34;:0,&#34;obimultiplex_forward_match&#34;:&#34;ttagataccccactatgc&#34;,&#34;obimultiplex_forward_matching&#34;:&#34;strict&#34;,&#34;obimultiplex_forward_primer&#34;:&#34;ttagataccccactatgc&#34;,&#34;obimultiplex_forward_proposed_tag&#34;:&#34;aattaac&#34;,&#34;obimultiplex_forward_tag&#34;:&#34;aattaac&#34;,&#34;obimultiplex_forward_tag_dist&#34;:0,&#34;obimultiplex_reverse_error&#34;:1,&#34;obimultiplex_reverse_match&#34;:&#34;tagaacaggctcgtctag&#34;,&#34;obimultiplex_reverse_matching&#34;:&#34;strict&#34;,&#34;obimultiplex_reverse_primer&#34;:&#34;tagaacaggctcctctag&#34;,&#34;obimultiplex_reverse_proposed_tag&#34;:&#34;aattaac&#34;,&#34;obimultiplex_reverse_tag&#34;:&#34;aattaac&#34;,&#34;obimultiplex_reverse_tag_dist&#34;:0,&#34;sample&#34;:&#34;13a_F730603&#34;}
ctagccttaaacacaaatagttatgcaaacaaaactattcgccagagtactaccggcaatagcttaaaactcaaaggacttggcggtgctttataccctt
+
CCCBCCCCCCCCCCCCCCCEDEEFAEEEEEEEDDDEE&gt;&lt;D?I&gt;CBEC????C\acVa^@DC?D?JEJEAEBEEEEDEAFEDCCCCCCBCBCCBC=CCCCC
@HELIUM_000100422_612GNAAXX:7:57:18459:16145#0/1_sub[28..126] {&#34;experiment&#34;:&#34;wolf_diet&#34;,&#34;obimultiplex_amplicon_rank&#34;:&#34;1/1&#34;,&#34;obimultiplex_direction&#34;:&#34;forward&#34;,&#34;obimultiplex_forward_error&#34;:0,&#34;obimultiplex_forward_match&#34;:&#34;ttagataccccactatgc&#34;,&#34;obimultiplex_forward_matching&#34;:&#34;strict&#34;,&#34;obimultiplex_forward_primer&#34;:&#34;ttagataccccactatgc&#34;,&#34;obimultiplex_forward_proposed_tag&#34;:&#34;gaatatc&#34;,&#34;obimultiplex_forward_tag&#34;:&#34;gaatatc&#34;,&#34;obimultiplex_forward_tag_dist&#34;:0,&#34;obimultiplex_reverse_error&#34;:0,&#34;obimultiplex_reverse_match&#34;:&#34;tagaacaggctcctctag&#34;,&#34;obimultiplex_reverse_matching&#34;:&#34;strict&#34;,&#34;obimultiplex_reverse_primer&#34;:&#34;tagaacaggctcctctag&#34;,&#34;obimultiplex_reverse_proposed_tag&#34;:&#34;gaatatc&#34;,&#34;obimultiplex_reverse_tag&#34;:&#34;gaatatc&#34;,&#34;obimultiplex_reverse_tag_dist&#34;:0,&#34;sample&#34;:&#34;26a_F040644&#34;}
ttagccctaaacataaacattcaataaacaagaatgttcgccagagtactactagcaacagcctgaaactcaaaggacttggcggtgctttacatccct
+
CCCCCCCCCCCCCCCCCCacZXceafbd_e_bVb`cb[WZb]aaaaV`ECDDCEDCDKECFFEEEEEDEDEEJEEE@EEJECCCCCBCCCCCCCCCCCC
@HELIUM_000100422_612GNAAXX:7:108:5640:3823#0/1_sub[28..127] {&#34;experiment&#34;:&#34;wolf_diet&#34;,&#34;obimultiplex_amplicon_rank&#34;:&#34;1/1&#34;,&#34;obimultiplex_direction&#34;:&#34;forward&#34;,&#34;obimultiplex_forward_error&#34;:0,&#34;obimultiplex_forward_match&#34;:&#34;ttagataccccactatgc&#34;,&#34;obimultiplex_forward_matching&#34;:&#34;strict&#34;,&#34;obimultiplex_forward_primer&#34;:&#34;ttagataccccactatgc&#34;,&#34;obimultiplex_forward_proposed_tag&#34;:&#34;gcctcct&#34;,&#34;obimultiplex_forward_tag&#34;:&#34;gcctcct&#34;,&#34;obimultiplex_forward_tag_dist&#34;:0,&#34;obimultiplex_reverse_error&#34;:0,&#34;obimultiplex_reverse_match&#34;:&#34;tagaacaggctcctctag&#34;,&#34;obimultiplex_reverse_matching&#34;:&#34;strict&#34;,&#34;obimultiplex_reverse_primer&#34;:&#34;tagaacaggctcctctag&#34;,&#34;obimultiplex_reverse_proposed_tag&#34;:&#34;gcctcct&#34;,&#34;obimultiplex_reverse_tag&#34;:&#34;gcctcct&#34;,&#34;obimultiplex_reverse_tag_dist&#34;:0,&#34;sample&#34;:&#34;29a_F260619&#34;}
ttagccctaaacacaagtaattaatataacaaaattgttcgccagagtactaccggcaatagcttaaaactcaaaggacttggcggtgctttataccctt
+
CCCBCCCCCBCCCCCCC&lt;CcCccbe[`F`accXV&lt;TA\RYU\\ee_e[XZ[XEEEEEEEEEE?EEEEEEEEEEDEEEEEEECCCCCCCCCCCCCCCCCCC
</code></pre></td>
</DIV>
<ul>
<li>
<p>Sample description</p>
<ul>
<li>
<p><code>experiment</code>: &ldquo;wolf_diet&rdquo;</p>
<p>The experiment name imputed to the barcode sequence</p>
</li>
<li>
<p><code>sample</code>: &ldquo;13a_F730603&rdquo;</p>
<p>The sample (PCR) name imputed to the barcode sequence</p>
</li>
</ul>
</li>
<li>
<p>Amplicon description</p>
<ul>
<li>
<p><code>obimultiplex_amplicon_rank</code>: &ldquo;1/1&rdquo;</p>
<a href="http://metabar:8888/obidoc/obitools/obimultiplex/">
<abbr title="obimultiplex: "><code>obimultiplex</code></abbr>
</a> is able to detect concatemer of several amplicons. This information
is reported in the `obimultiplex_amplicon_rank` as a ratio here "1/1" meaning the first among one in the read. A value of "2/3" would mean the second amplicon detected among three in the read.
</li>
<li>
<p><code>obimultiplex_direction</code>: &ldquo;reverse&rdquo;</p>
<p>The direction in which the amplicon has been detected:</p>
<ul>
<li>
<p>&ldquo;forward&rdquo; means, the forward primer has been identified, then the reverse complementary sequence of the reverse primer.</p>
</li>
<li>
<p>&ldquo;reverse&rdquo; means, the reverse primer has been identified, then the forward complementary sequence of the forward primer. The sequence of the barcode has been reverse complemented to be always reported as a sequence oriented from the forward to the reverse primer.</p>
</li>
</ul>
</li>
</ul>
</li>
<li>
<p>Primer matching</p>
<ul>
<li>
<p>Forward primer:</p>
<ul>
<li>
<p><code>obimultiplex_forward_primer</code>: &ldquo;ttagataccccactatgc&rdquo;</p>
<p>The true forward primer sequence as provided in the <a href="http://metabar:8888/obidoc/obitools/obimultiplex/">
<abbr title="obimultiplex: "><code>obimultiplex</code></abbr>
</a> sample description file.</p>
</li>
<li>
<p><code>obimultiplex_forward_match</code>: &ldquo;ttagataccccactatgc&rdquo;</p>
<p>The primer sequence as detected in the sequence read.</p>
</li>
<li>
<p><code>obimultiplex_forward_error</code>: 0</p>
<p>The number of differences between the <code>obimultiplex_forward_primer</code> and the <code>obimultiplex_forward_match</code> attribute values. <a href="http://metabar:8888/obidoc/obitools/obimultiplex/">
<abbr title="obimultiplex: "><code>obimultiplex</code></abbr>
</a> by default
allows up to two mismatches. That threshold can be changed using the <strong>&ndash;allowed-mismatches</strong> option (or <strong>-e</strong> for the short version option).</p>
</li>
</ul>
</li>
<li>
<p>Reverse primer:</p>
<ul>
<li>
<p>&ldquo;obimultiplex_reverse_primer&rdquo;:&ldquo;tagaacaggctcctctag&rdquo;</p>
<p>The true reverse primer sequence as provided in the <a href="http://metabar:8888/obidoc/obitools/obimultiplex/">
<abbr title="obimultiplex: "><code>obimultiplex</code></abbr>
</a> sample description file.</p>
</li>
<li>
<p>&ldquo;obimultiplex_reverse_match&rdquo;:&ldquo;tagaacaggctcgtctag&rdquo;</p>
<p>The primer sequence as detected in the sequence read.</p>
</li>
<li>
<p>&ldquo;obimultiplex_reverse_error&rdquo;:1</p>
<p>Here one mismatch has been detected between the primer sequence and the read sequence match.</p>
</li>
</ul>
</li>
</ul>
</li>
<li>
<p>Tag identification</p>
<ul>
<li>Forward tag:
<ul>
<li>&ldquo;obimultiplex_forward_tag&rdquo;:&ldquo;gcctcct&rdquo;</li>
<li>&ldquo;obimultiplex_forward_proposed_tag&rdquo;:&ldquo;gcctcct&rdquo;</li>
<li>&ldquo;obimultiplex_forward_matching&rdquo;:&ldquo;strict&rdquo;</li>
<li>&ldquo;obimultiplex_forward_tag_dist&rdquo;:0</li>
</ul>
</li>
<li>Reverse tag:
<ul>
<li>&ldquo;obimultiplex_reverse_tag&rdquo;:&ldquo;gcctcct&rdquo;</li>
<li>&ldquo;obimultiplex_reverse_proposed_tag&rdquo;:&ldquo;gcctcct&rdquo;</li>
<li>&ldquo;obimultiplex_reverse_matching&rdquo;:&ldquo;strict&rdquo;</li>
<li>&ldquo;obimultiplex_reverse_tag_dist&rdquo;:0</li>
</ul>
</li>
</ul>
</li>
</ul>
<h4 id="supplementary-columns">
Supplementary columns
<a class="anchor" href="#supplementary-columns">#</a>
</h4>
<a style="padding: 10px 20px; background-color: #cacaca; border: 1px solid #8e8080; border-bottom: none; border-radius: 5px 5px 0 0; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1)"
href="samples_extra.csv" download="samples_extra.csv">📄 samples_extra.csv</a>
<DIV style="border: 2px solid #8e8080; border-radius: 0 0 5px 5px; padding: 20px; background-color: white; ">
<div class="highlight"><div style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">
<table style="border-spacing:0;padding:0;margin:0;border:0;"><tr><td style="vertical-align:top;padding:0;margin:0;border:0;">
<pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">1
</span><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">2
</span><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">3
</span><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">4
</span><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">5
</span></code></pre></td>
<td style="vertical-align:top;padding:0;margin:0;border:0;;width:100%">
<pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-csv" data-lang="csv"><span style="display:flex;"><span><span style="color:#e6db74">experiment</span>,<span style="color:#e6db74">sample</span>,<span style="color:#e6db74">sample_tag</span>,<span style="color:#e6db74">forward_primer</span>,<span style="color:#e6db74">reverse_primer</span>,<span style="color:#e6db74">sex</span>,<span style="color:#e6db74">age</span>,<span style="color:#e6db74">plate</span>,<span style="color:#e6db74">position</span>
</span></span><span style="display:flex;"><span><span style="color:#e6db74">wolf_diet</span>,<span style="color:#e6db74">13a_F730603</span>,<span style="color:#e6db74">aattaac</span>,<span style="color:#e6db74">TTAGATACCCCACTATGC</span>,<span style="color:#e6db74">TAGAACAGGCTCCTCTAG</span>,<span style="color:#e6db74">male</span>,<span style="color:#e6db74">adult</span>,<span style="color:#e6db74">02</span>,<span style="color:#e6db74">A03</span>
</span></span><span style="display:flex;"><span><span style="color:#e6db74">wolf_diet</span>,<span style="color:#e6db74">15a_F730814</span>,<span style="color:#e6db74">gaagtag</span>,<span style="color:#e6db74">TTAGATACCCCACTATGC</span>,<span style="color:#e6db74">TAGAACAGGCTCCTCTAG</span>,<span style="color:#e6db74">male</span>,<span style="color:#e6db74">juvenile</span>,<span style="color:#e6db74">02</span>,<span style="color:#e6db74">A01</span>
</span></span><span style="display:flex;"><span><span style="color:#e6db74">wolf_diet</span>,<span style="color:#e6db74">26a_F040644</span>,<span style="color:#e6db74">gaatatc</span>,<span style="color:#e6db74">TTAGATACCCCACTATGC</span>,<span style="color:#e6db74">TAGAACAGGCTCCTCTAG</span>,<span style="color:#e6db74">female</span>,<span style="color:#e6db74">adult</span>,<span style="color:#e6db74">01</span>,<span style="color:#e6db74">B08</span>
</span></span><span style="display:flex;"><span><span style="color:#e6db74">wolf_diet</span>,<span style="color:#e6db74">29a_F260619</span>,<span style="color:#e6db74">gcctcct</span>,<span style="color:#e6db74">TTAGATACCCCACTATGC</span>,<span style="color:#e6db74">TAGAACAGGCTCCTCTAG</span>,<span style="color:#e6db74">female</span>,<span style="color:#e6db74">adult</span>,<span style="color:#e6db74">01</span>,<span style="color:#e6db74">B12</span>
</span></span></code></pre></td></tr></table>
</div>
</div></td>
</DIV>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>obimultiplex -s samples_extra.csv <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span> wolf_4seq.fastq <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span> &gt; wolf_4seq_extra.fastq
</span></span></code></pre></div>
<a style="padding: 10px 20px; background-color: #cacaca; border: 1px solid #8e8080; border-bottom: none; border-radius: 5px 5px 0 0; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1)"
href="wolf_4seq_extra.fastq" download="wolf_4seq_extra.fastq">📄 wolf_4seq_extra.fastq</a>
<DIV style="border: 2px solid #8e8080; border-radius: 0 0 5px 5px; padding: 20px; background-color: white; ">
<pre tabindex="0"><code class="language-fastq" data-lang="fastq">@HELIUM_000100422_612GNAAXX:7:6:9274:14951#0/1_sub[28..127] {&#34;age&#34;:&#34;adult&#34;,&#34;experiment&#34;:&#34;wolf_diet&#34;,&#34;obimultiplex_amplicon_rank&#34;:&#34;1/1&#34;,&#34;obimultiplex_direction&#34;:&#34;reverse&#34;,&#34;obimultiplex_forward_error&#34;:0,&#34;obimultiplex_forward_match&#34;:&#34;ttagataccccactatgc&#34;,&#34;obimultiplex_forward_matching&#34;:&#34;strict&#34;,&#34;obimultiplex_forward_primer&#34;:&#34;ttagataccccactatgc&#34;,&#34;obimultiplex_forward_proposed_tag&#34;:&#34;aattaac&#34;,&#34;obimultiplex_forward_tag&#34;:&#34;aattaac&#34;,&#34;obimultiplex_forward_tag_dist&#34;:0,&#34;obimultiplex_reverse_error&#34;:1,&#34;obimultiplex_reverse_match&#34;:&#34;tagaacaggctcgtctag&#34;,&#34;obimultiplex_reverse_matching&#34;:&#34;strict&#34;,&#34;obimultiplex_reverse_primer&#34;:&#34;tagaacaggctcctctag&#34;,&#34;obimultiplex_reverse_proposed_tag&#34;:&#34;aattaac&#34;,&#34;obimultiplex_reverse_tag&#34;:&#34;aattaac&#34;,&#34;obimultiplex_reverse_tag_dist&#34;:0,&#34;plate&#34;:&#34;02&#34;,&#34;position&#34;:&#34;A03&#34;,&#34;sample&#34;:&#34;13a_F730603&#34;,&#34;sex&#34;:&#34;male&#34;}
ctagccttaaacacaaatagttatgcaaacaaaactattcgccagagtactaccggcaatagcttaaaactcaaaggacttggcggtgctttataccctt
+
CCCBCCCCCCCCCCCCCCCEDEEFAEEEEEEEDDDEE&gt;&lt;D?I&gt;CBEC????C\acVa^@DC?D?JEJEAEBEEEEDEAFEDCCCCCCBCBCCBC=CCCCC
@HELIUM_000100422_612GNAAXX:7:57:18459:16145#0/1_sub[28..126] {&#34;age&#34;:&#34;adult&#34;,&#34;experiment&#34;:&#34;wolf_diet&#34;,&#34;obimultiplex_amplicon_rank&#34;:&#34;1/1&#34;,&#34;obimultiplex_direction&#34;:&#34;forward&#34;,&#34;obimultiplex_forward_error&#34;:0,&#34;obimultiplex_forward_match&#34;:&#34;ttagataccccactatgc&#34;,&#34;obimultiplex_forward_matching&#34;:&#34;strict&#34;,&#34;obimultiplex_forward_primer&#34;:&#34;ttagataccccactatgc&#34;,&#34;obimultiplex_forward_proposed_tag&#34;:&#34;gaatatc&#34;,&#34;obimultiplex_forward_tag&#34;:&#34;gaatatc&#34;,&#34;obimultiplex_forward_tag_dist&#34;:0,&#34;obimultiplex_reverse_error&#34;:0,&#34;obimultiplex_reverse_match&#34;:&#34;tagaacaggctcctctag&#34;,&#34;obimultiplex_reverse_matching&#34;:&#34;strict&#34;,&#34;obimultiplex_reverse_primer&#34;:&#34;tagaacaggctcctctag&#34;,&#34;obimultiplex_reverse_proposed_tag&#34;:&#34;gaatatc&#34;,&#34;obimultiplex_reverse_tag&#34;:&#34;gaatatc&#34;,&#34;obimultiplex_reverse_tag_dist&#34;:0,&#34;plate&#34;:&#34;01&#34;,&#34;position&#34;:&#34;B08&#34;,&#34;sample&#34;:&#34;26a_F040644&#34;,&#34;sex&#34;:&#34;female&#34;}
ttagccctaaacataaacattcaataaacaagaatgttcgccagagtactactagcaacagcctgaaactcaaaggacttggcggtgctttacatccct
+
CCCCCCCCCCCCCCCCCCacZXceafbd_e_bVb`cb[WZb]aaaaV`ECDDCEDCDKECFFEEEEEDEDEEJEEE@EEJECCCCCBCCCCCCCCCCCC
@HELIUM_000100422_612GNAAXX:7:108:5640:3823#0/1_sub[28..127] {&#34;age&#34;:&#34;adult&#34;,&#34;experiment&#34;:&#34;wolf_diet&#34;,&#34;obimultiplex_amplicon_rank&#34;:&#34;1/1&#34;,&#34;obimultiplex_direction&#34;:&#34;forward&#34;,&#34;obimultiplex_forward_error&#34;:0,&#34;obimultiplex_forward_match&#34;:&#34;ttagataccccactatgc&#34;,&#34;obimultiplex_forward_matching&#34;:&#34;strict&#34;,&#34;obimultiplex_forward_primer&#34;:&#34;ttagataccccactatgc&#34;,&#34;obimultiplex_forward_proposed_tag&#34;:&#34;gcctcct&#34;,&#34;obimultiplex_forward_tag&#34;:&#34;gcctcct&#34;,&#34;obimultiplex_forward_tag_dist&#34;:0,&#34;obimultiplex_reverse_error&#34;:0,&#34;obimultiplex_reverse_match&#34;:&#34;tagaacaggctcctctag&#34;,&#34;obimultiplex_reverse_matching&#34;:&#34;strict&#34;,&#34;obimultiplex_reverse_primer&#34;:&#34;tagaacaggctcctctag&#34;,&#34;obimultiplex_reverse_proposed_tag&#34;:&#34;gcctcct&#34;,&#34;obimultiplex_reverse_tag&#34;:&#34;gcctcct&#34;,&#34;obimultiplex_reverse_tag_dist&#34;:0,&#34;plate&#34;:&#34;01&#34;,&#34;position&#34;:&#34;B12&#34;,&#34;sample&#34;:&#34;29a_F260619&#34;,&#34;sex&#34;:&#34;female&#34;}
ttagccctaaacacaagtaattaatataacaaaattgttcgccagagtactaccggcaatagcttaaaactcaaaggacttggcggtgctttataccctt
+
CCCBCCCCCBCCCCCCC&lt;CcCccbe[`F`accXV&lt;TA\RYU\\ee_e[XZ[XEEEEEEEEEE?EEEEEEEEEEDEEEEEEECCCCCCCCCCCCCCCCCCC
</code></pre></td>
</DIV>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>obimultiplex -s samples_simple.csv <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span> -u wolf_4seq_bad.fastq <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span> wolf_4seq.fastq <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span> &gt; wolf_4seq_simple.fastq
</span></span></code></pre></div>
<a style="padding: 10px 20px; background-color: #cacaca; border: 1px solid #8e8080; border-bottom: none; border-radius: 5px 5px 0 0; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1)"
href="wolf_4seq_bad.fastq" download="wolf_4seq_bad.fastq">📄 wolf_4seq_bad.fastq</a>
<DIV style="border: 2px solid #8e8080; border-radius: 0 0 5px 5px; padding: 20px; background-color: white; ">
<pre tabindex="0"><code class="language-fastq" data-lang="fastq">@HELIUM_000100422_612GNAAXX:7:108:6440:4223#0/1 {&#34;obimultiplex_error&#34;:&#34;No barcode identified&#34;}
ccgcctcctttagatcccactatgcttagccctaaacacaagtaattaatataacaaaattgttcgccagagtactaccggcaatagcttaaaactcaaaggacttggcggtgctttatacccttctagaggagcctgttctaaggaggcgg
+
CCCCCCCBCCCCCCCCCCCCCCCCCCCCBCCCCCBCCCCCCC&lt;CcCccbe[`F`accXV&lt;TA\RYU\\ee_e[XZ[XEEEEEEEEEE?EEEEEEEEEEDEEEEEEECCCCCCCCCCCCCCCCCCCCCCCACCCCCACCCCCCCCCCCCCCCC
</code></pre></td>
</DIV>
<h2 id="synopsis">
Synopsis
<a class="anchor" href="#synopsis">#</a>
</h2>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>obimultiplex <span style="color:#f92672">[</span>--allowed-mismatches|-e &lt;int&gt;<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--batch-size &lt;int&gt;<span style="color:#f92672">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#f92672">[</span>--compress|-Z<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--debug<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--ecopcr<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--embl<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--fasta<span style="color:#f92672">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#f92672">[</span>--fasta-output<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--fastq<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--fastq-output<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--force-one-cpu<span style="color:#f92672">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#f92672">[</span>--genbank<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--help|-h|-?<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--input-OBI-header<span style="color:#f92672">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#f92672">[</span>--input-json-header<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--json-output<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--keep-errors<span style="color:#f92672">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#f92672">[</span>--max-cpu &lt;int&gt;<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--no-order<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--no-progressbar<span style="color:#f92672">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#f92672">[</span>--out|-o &lt;FILENAME&gt;<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--output-OBI-header|-O<span style="color:#f92672">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#f92672">[</span>--output-json-header<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--paired-with &lt;FILENAME&gt;<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--pprof<span style="color:#f92672">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#f92672">[</span>--pprof-goroutine &lt;int&gt;<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--pprof-mutex &lt;int&gt;<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--skip-empty<span style="color:#f92672">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#f92672">[</span>--solexa<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--tag-list|-s &lt;string&gt;<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--taxonomy|-t &lt;string&gt;<span style="color:#f92672">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#f92672">[</span>--template<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--unidentified|-u &lt;string&gt;<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>--version<span style="color:#f92672">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#f92672">[</span>--with-indels<span style="color:#f92672">]</span> <span style="color:#f92672">[</span>&lt;args&gt;<span style="color:#f92672">]</span>
</span></span></code></pre></div><h2 id="options">
Options
<a class="anchor" href="#options">#</a>
</h2>
<h4 id="hahahugoshortcode31s16hbhb-specific-options">
<a href="http://metabar:8888/obidoc/obitools/obimultiplex/">
<abbr title="obimultiplex: "><code>obimultiplex</code></abbr>
</a> specific options
<a class="anchor" href="#hahahugoshortcode31s16hbhb-specific-options">#</a>
</h4>
<ul>
<li><b><code class="language-bash">--allowed-mismatches</code></b>
| <b><code class="language-bash">-e</code></b>
&lt;INTEGER>: Used to specify the number of errors allowed for matching primers. (default: -1)</li>
<li><b><code class="language-bash">--keep-errors</code></b>: Prints symbol counts. (default: false)</li>
<li><b><code class="language-bash">--paired-with</code></b> &lt;FILENAME>: filename containing the paired reads.</li>
<li><b><code class="language-bash">--tag-list</code></b>
| <b><code class="language-bash">-s</code></b>
&lt;string>: File name of the NGSFilter file describing PCRs.</li>
<li><b><code class="language-bash">--template</code></b>: Print on the standard output an example of CSV configuration file. (default: false)
</li>
<li><b><code class="language-bash">--unidentified</code></b>
| <b><code class="language-bash">-u</code></b>
&lt;string>: Filename used to store the sequences unassigned to any sample.
</li>
<li><b><code class="language-bash">--with-indels</code></b>: Allows for indels during the primers matching. (default: false)
</li>
</ul>
<h4 id="taxonomic-options">
Taxonomic options
<a class="anchor" href="#taxonomic-options">#</a>
</h4>
<ul>
<li><b><code class="language-bash">--taxonomy</code></b>
| <b><code class="language-bash">-t</code></b>
&lt;string>: Path to the taxonomic database.
</li>
</ul>
<h4 id="controlling-the-input-data">
Controlling the input data
<a class="anchor" href="#controlling-the-input-data">#</a>
</h4>
<I>OBITools4</I> generally recognizes the input file format. It also recognizes
whether the input file is compressed using GZIP. But some rare files can be
misidentified, so the following options allow the user to force the format, thus
bypassing the format identification step.
<h5 id="the-file-format-options">
The file format options
<a class="anchor" href="#the-file-format-options">#</a>
</h5>
<ul>
<li>
<b><code class="language-bash">--fasta</code></b>: indicates that sequence data is in <a href="http://metabar:8888/obidoc/formats/fasta/">fasta</a> format.</li>
<li>
<b><code class="language-bash">--fastq</code></b>: indicates that sequence data is in <a href="http://metabar:8888/obidoc/formats/fastq/">fastq</a> format.</li>
<li>
<b><code class="language-bash">--embl</code></b>: indicates that sequence data is in <a href="http://metabar:8888/obidoc/formats/embl/">EMBL-ENA flatfile</a> format.</li>
<li>
<b><code class="language-bash">--csv</code></b>: indicates that sequence data is in <a href="http://metabar:8888/obidoc/docs/file_format/sequence_files/csv/">CSV</a> format.</li>
<li>
<b><code class="language-bash">--genbank</code></b>: indicates that sequence data is in <a href="http://metabar:8888/obidoc/formats/genbank/">GenBank flatfile</a> format.</li>
<li><b><code class="language-bash">--ecopcr</code></b>: indicates that sequence data is in the old ecoPCR tabulated format.</li>
</ul>
<h5 id="controlling-the-way-obitools4-are-formatting-annotations">
Controlling the way <em>OBITools4</em> are formatting annotations
<a class="anchor" href="#controlling-the-way-obitools4-are-formatting-annotations">#</a>
</h5>
These options only apply to the <a href="http://metabar:8888/obidoc/formats/fasta/">FASTA</a> and <a href="http://metabar:8888/obidoc/formats/fastq/">FASTQ</a> formats
<ul>
<li><b><code class="language-bash">--input-OBI-header</code></b>: FASTA/FASTQ title line annotations follow the old OBI format.</li>
<li><b><code class="language-bash">--input-json-header</code></b>: FASTA/FASTQ title line annotations follow the JSON format.</li>
</ul>
<h5 id="controlling-quality-score-decoding">
Controlling quality score decoding
<a class="anchor" href="#controlling-quality-score-decoding">#</a>
</h5>
This option only applies to the <a href="http://metabar:8888/obidoc/formats/fastq/">FASTQ</a> formats
<ul>
<li><b><code class="language-bash">--solexa</code></b>: decodes quality string according to the old Solexa specification. (default: the standard Sanger encoding is used, env: <strong>OBISSOLEXA</strong>)</li>
</ul>
<h4 id="controlling-the-output-data">
Controlling the output data
<a class="anchor" href="#controlling-the-output-data">#</a>
</h4>
<ul>
<li><b><code class="language-bash">--compress</code></b>
| <b><code class="language-bash">-Z</code></b>
: output is compressed using gzip. (default: false)</li>
<li><b><code class="language-bash">--no-order</code></b>: the <em>OBITools</em> ensure that the order between the input file and
the output file does not change. When multiple files are processed,
they are processed one at a time.
If the <strong>&ndash;no-order</strong> option is added to a command, multiple input
files can be opened at the same time and their contents processed
in parallel. This usually increases processing speed, but does not
guarantee the order of the sequences in the output file.
Also, processing multiple files in parallel may require more memory
to perform the computation.</li>
<li>
<b><code class="language-bash">--fasta-output</code></b>: writes sequence data in <a href="http://metabar:8888/obidoc/formats/fasta/">fasta</a> format (default if quality data is not available).</li>
<li>
<b><code class="language-bash">--fastq-output</code></b>: writes sequence data in <a href="http://metabar:8888/obidoc/formats/fastq/">fastq</a> format (default if quality data is available).</li>
<li><b><code class="language-bash">--json-output</code></b>: writes sequence data in JSON format.</li>
<li><b><code class="language-bash">--out</code></b>
| <b><code class="language-bash">-o</code></b>
&lt;FILENAME>: filename used for saving the output (default: &ldquo;-&rdquo;, the standard output)</li>
<li><b><code class="language-bash">--output-OBI-header</code></b>
| <b><code class="language-bash">-O</code></b>
: writes output FASTA/FASTQ title line annotations in OBI format (default: JSON).</li>
<li><b><code class="language-bash">--output-json-header</code></b>: writew output FASTA/FASTQ title line annotations in JSON format (the default format).</li>
<li><b><code class="language-bash">--skip-empty</code></b>: sequences of length equal to zero are removed from the output (default: false).</li>
<li><b><code class="language-bash">--no-progressbar</code></b>: deactivates progress bar display (default: false).</li>
</ul>
<h4 id="general-options">
General options
<a class="anchor" href="#general-options">#</a>
</h4>
<ul>
<li><b><code class="language-bash">--help</code></b>
| <b><code class="language-bash">-h|-?</code></b>
: shows this help.</li>
<li><b><code class="language-bash">--version</code></b>: prints the version and exits.</li>
<li><b><code class="language-bash">--silent-warning</code></b>: This option tells obitools to stop displaying warnings.
This behaviour can be controlled by setting the <strong>OBIWARNINGS</strong> environment variable.</li>
</ul>
<h4 id="computation-related-options">
Computation related options
<a class="anchor" href="#computation-related-options">#</a>
</h4>
<ul>
<li><b><code class="language-bash">--max-cpu</code></b> &lt;INTEGER>: <em>OBITools</em> can take advantage of your computer&rsquo;s multi-core
architecture by parallelizing the computation across all available CPUs.
Computing on more CPUs usually requires more memory to perform the
computation. Reducing the number of CPUs used to perform a calculation
is also a way to indirectly control the amount of memory used by the
process. The number of CPUs used by <em>OBITools</em> can also be controlled
by setting the <strong>OBIMAXCPU</strong> environment variable.</li>
<li><b><code class="language-bash">--force-one-cpu</code></b>: forces the use of a single CPU core for parallel processing (default: false).</li>
<li><b><code class="language-bash">--batch-size</code></b> &lt;INTEGER>: number of sequence per batch for parallel processing (default: 1000, env: <strong>OBIBATCHSIZE</strong>)</li>
</ul>
<h4 id="debug-related-options">
Debug related options
<a class="anchor" href="#debug-related-options">#</a>
</h4>
<ul>
<li><b><code class="language-bash">--debug</code></b>: enables debug mode, by setting log level to debug (default: false, env: <strong>OBIDEBUG</strong>)</li>
<li><b><code class="language-bash">--pprof</code></b>: enables pprof server. Look at the log for details. (default: false).</li>
<li><b><code class="language-bash">--pprof-mutex</code></b> &lt;INTEGER>: enables profiling of mutex lock. (default: 10, env: <strong>OBIPPROFMUTEX</strong>)</li>
<li><b><code class="language-bash">--pprof-goroutine</code></b> &lt;INTEGER>: enables profiling of goroutine blocking profile. (default: 6060, env: <strong>OBIPPROFGOROUTINE</strong>)</li>
</ul>
<h2 id="examples">
Examples
<a class="anchor" href="#examples">#</a>
</h2>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>obimultiplex --help
</span></span></code></pre></div></article>
<footer class="book-footer">
<div class="flex flex-wrap justify-between">
</div>
<script>(function(){function e(e){const t=window.getSelection(),n=document.createRange();n.selectNodeContents(e),t.removeAllRanges(),t.addRange(n)}document.querySelectorAll("pre code").forEach(t=>{t.addEventListener("click",function(){if(window.getSelection().toString())return;e(t.parentElement),navigator.clipboard&&navigator.clipboard.writeText(t.parentElement.textContent)})})})()</script>
</footer>
<div class="book-comments">
</div>
<label for="menu-control" class="hidden book-menu-overlay"></label>
</div>
<aside class="book-toc">
<div class="book-toc-content">
<nav id="TableOfContents">
<ul>
<li><a href="#obimultiplex-demultiplex-the-sequence-reads"><code>obimultiplex</code>: demultiplex the sequence reads</a>
<ul>
<li><a href="#description">Description</a>
<ul>
<li><a href="#the-new-obimultiplex-sample-description-file-format">The new <code>obimultiplex</code> sample description file format</a></li>
</ul>
</li>
<li><a href="#synopsis">Synopsis</a></li>
<li><a href="#options">Options</a>
<ul>
<li></li>
</ul>
</li>
<li><a href="#examples">Examples</a></li>
</ul>
</li>
</ul>
</nav>
</div>
</aside>
</main>
</body>
</html>