diff kaiju2table.xml @ 0:e7d2c4ed18a5 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/kaiju commit 59064c06143fdc7d7b17178e46911ba1009cd32e
author iuc
date Tue, 22 Apr 2025 14:03:27 +0000
parents
children eedcb4cc9e5a
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/kaiju2table.xml	Tue Apr 22 14:03:27 2025 +0000
@@ -0,0 +1,95 @@
+<tool id="kaiju_kaiju2table" name="kaiju2table" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@" license="MIT">
+    <description></description>
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+    <expand macro="xrefs"/>
+    <expand macro="requirements"/>
+    <command detect_errors="exit_code"><![CDATA[
+        #import re
+
+        #for $kaiju_table in $kaiju_tables
+            ln -s '$kaiju_table' #echo re.sub('[^\w\-_]', '_', str($kaiju_table.element_identifier))
+            &&
+        #end for
+
+        kaiju2table 
+            -t '$reference.fields.path'/nodes.dmp
+            -n '$reference.fields.path'/names.dmp
+            -r $rank
+            -o '$kaiju_summary'
+            #for $kaiju_table in $kaiju_tables
+                #echo re.sub('[^\w\-_]', '_', str($kaiju_table.element_identifier))
+            #end for
+            #if str($optional.m)
+                -m $optional.m
+            #end if
+            #if str($optional.c)
+                -m $optional.c
+            #end if
+            $optional.e
+            $optional.u
+            #if $optional.l
+                -l #echo ".".join($optional.l)
+            #end if
+    ]]></command>
+    <inputs>
+        <param name="kaiju_tables" type="data" format="tabular" multiple="true" optional="false" label="kaiju output tables"/>
+        <expand macro="reference"/>
+        <param argument="-r" name="rank" type="select" label="rank">
+            <option value="phylum">phylum</option>
+            <option value="class">class</option>
+            <option value="order">order</option>
+            <option value="family">family</option>
+            <option value="genus">genus</option>
+            <option value="species">species</option>
+        </param>
+        <section name="optional" title="Optional arguments" expanded="false">
+            <param argument="-m" type="float" min="0" max="100" optional="true" value="" label="Minimum reporting percentage" help="Can not be combined with -c" />
+            <param argument="-c" type="integer" min="1" optional="true" value="" label="Minimum required number of reads" help="Can not be combined with -m" />
+            <param argument="-e" type="boolean" truevalue="-e" falsevalue="" checked="false" label="Expand viruses" help="which are always hown as full taxon path and read counts are not summarized in higher taxonomic levels" />
+            <param argument="-u" type="boolean" truevalue="-u" falsevalue="" checked="false" label="Do not count unclassified reads" help="Disables counting unclassified reads towards the total number of reads when calculating percentages."/>
+            <expand macro="l"/>
+        </section>
+    </inputs>
+    <outputs>
+        <data name="kaiju_summary" format="tabular"/>
+    </outputs>
+    <tests>
+        <test>
+            <param name="kaiju_tables" value="kaiju.out"/>
+            <param name="reference" value="test"/>
+            <param name="rank" value="phylum"/>
+            <output name="kaiju_summary" value="kaiju2table.out"/>
+        </test>
+        <test>
+            <param name="kaiju_tables" value="kaiju.out"/>
+            <param name="reference" value="test"/>
+            <param name="rank" value="order"/>
+            <section name="optional">
+                <param name="e" value="true"/>
+            </section>
+            <output name="kaiju_summary" value="kaiju2table.out" lines_diff="4">
+                <assert_contents>
+                    <has_text text="Severe acute respiratory syndrome coronavirus 2"/>
+                    <has_text text="cannot be assigned to a (non-viral) order"/>
+                </assert_contents>
+            </output>
+        </test>
+    </tests>
+    <help><![CDATA[
+
+.. class:: infomark
+
+**What it does**
+
+The program kaiju2table converts Kaiju's output file(s) into a summary table for a given taxonomic rank, e.g., genus.
+It uses the taxonomic information of the reference data for mapping the taxon identifiers from the third column in the
+Kaiju output to the corresponding taxon names.
+
+The program can also filter out taxa with low abundances, e.g. for only showing genera that comprise at least 1 percent of the total reads
+Similarly, a threshold on the absolute read count can be given.
+
+    ]]></help>
+    <expand macro="citations"/>
+</tool>
\ No newline at end of file