comparison est-abundance.xml @ 7:978ae4147c29 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/bracken commit db62b99fe2c0e77e7ee63da5fb315f4b6d95170b
author iuc
date Mon, 22 May 2023 19:24:46 +0000
parents 79450f7fd718
children 1d4bd12f01cf
comparison
equal deleted inserted replaced
6:79450f7fd718 7:978ae4147c29
1 <tool id="est_abundance" name="Estimate Abundance at Taxonomic Level" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@"> 1 <tool id="est_abundance" name="Bracken" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">
2 <description>Bayesian Reestimation of Abundance with Kraken</description> 2 <description>to re-estimate abundance at a taxonomic level from kraken output</description>
3 <macros> 3 <macros>
4 <import>macros.xml</import> 4 <import>macros.xml</import>
5 </macros> 5 </macros>
6 <expand macro="edam" /> 6 <expand macro="edam"/>
7 <expand macro="xref" /> 7 <expand macro="xref"/>
8 <expand macro="requirements" /> 8 <expand macro="requirements"/>
9 <command detect_errors="exit_code"><![CDATA[ 9 <command detect_errors="exit_code"><![CDATA[
10 ## Prevent logfile pipe below from quenching the raised error.
11 set -o pipefail &&
12
10 est_abundance.py 13 est_abundance.py
11 -i '$input' 14 -i '$input'
12 -k '$kmer_distr.fields.path' 15 -k '$kmer_distr.fields.path'
13 -l $level 16 -l $level
14 -t $threshold 17 -t $threshold
15 -o '$report' 18 -o '$report'
19
16 ## --out-report needs to be set always, since it is written next to the input file 20 ## --out-report needs to be set always, since it is written next to the input file
17 --out-report bracken.report 21 --out-report bracken.report
22
18 #if $logfile_output == "True" 23 #if $logfile_output == "True"
19 | tee '$logfile' 24 | tee '$logfile'
20 #end if 25 #end if
21 ]]> 26 ]]>
22 </command> 27 </command>
23 <inputs> 28 <inputs>
24 <param name="input" type="data" format="tabular" label="Kraken report file" /> 29 <param name="input" type="data" format="tabular" label="Kraken report file"/>
25 <param label="Select a Kmer distribution" name="kmer_distr" type="select"> 30 <param label="Select a Kmer distribution" name="kmer_distr" type="select">
26 <options from_data_table="bracken_databases"> 31 <options from_data_table="bracken_databases">
27 <validator message="No database is available" type="no_options" /> 32 <validator message="No database is available" type="no_options"/>
28 </options> 33 </options>
29 </param> 34 </param>
30 <param name="level" type="select" label="Level" help="Level to push all reads to" > 35 <param name="level" type="select" label="Level" help="Level to push all reads to">
31 <option value="S" selected="true">Species</option> 36 <option value="S" selected="true">Species</option>
32 <option value="G">Genus</option> 37 <option value="G">Genus</option>
33 <option value="F">Family</option> 38 <option value="F">Family</option>
34 <option value="O">Order</option> 39 <option value="O">Order</option>
35 <option value="C">Class</option> 40 <option value="C">Class</option>
36 <option value="P">Phylum</option> 41 <option value="P">Phylum</option>
37 <option value="D">Domain</option> 42 <option value="D">Domain</option>
38 </param> 43 </param>
39 <param name="threshold" type="integer" value="10" label="Number of mismatches allowed when matching tag" 44 <param name="threshold" type="integer" value="10" label="Number of mismatches allowed when matching tag"
40 help="Threshold for the minimum number of reads kraken must assign to a classification for that 45 help="Threshold for the minimum number of reads kraken must assign to a classification for that
41 classification to be considered in the final abundance estimation." /> 46 classification to be considered in the final abundance estimation."/>
42 <param argument="--out-report" type="boolean" checked="false" label="Produce Kraken-Style Bracken report"/> 47 <param argument="--out-report" type="boolean" checked="false" label="Produce Kraken-Style Bracken report"/>
43 <param name="logfile_output" type="boolean" truevalue="True" falsevalue="False" label="Add log file output"/> 48 <param name="logfile_output" type="boolean" truevalue="True" falsevalue="False" label="Add log file output"/>
44 </inputs> 49 </inputs>
45 <outputs> 50 <outputs>
46 <data name="report" format="tabular" label="${tool.name} on ${on_string}: Report" /> 51 <data name="report" format="tabular" label="${tool.name} on ${on_string}: Report"/>
47 <data name="kraken_report" format="tabular" from_work_dir="bracken.report" label="${tool.name} on ${on_string}: Kraken style report"> 52 <data name="kraken_report" format="tabular" from_work_dir="bracken.report" label="${tool.name} on ${on_string}: Kraken style report">
48 <filter>out_report</filter> 53 <filter>out_report</filter>
49 </data> 54 </data>
50 <data name="logfile" format="txt" label="${tool.name} on ${on_string}: log file"> 55 <data name="logfile" format="txt" label="${tool.name} on ${on_string}: log file">
51 <filter> logfile_output == True </filter> 56 <filter> logfile_output == True </filter>
52 </data> 57 </data>
53 </outputs> 58 </outputs>
54 <tests> 59 <tests>
55 <test expect_num_outputs="1"> 60 <test expect_num_outputs="1">
56 <param name="input" value="NC_003198.1_simulated_kraken_report.txt" ftype="tabular"/> 61 <param name="input" value="NC_003198.1_simulated_kraken_report.txt" ftype="tabular"/>
57 <param name="level" value="S" /> 62 <param name="level" value="S"/>
58 <param name="kmer_distr" value="test_entry"/> 63 <param name="kmer_distr" value="test_entry"/>
59 <param name="logfile_output" value="False"/> 64 <param name="logfile_output" value="False"/>
60 <output name="report" file="NC_003198.1_simulated_bracken_report.txt" ftype="tabular"/> 65 <output name="report" file="NC_003198.1_simulated_bracken_report.txt" ftype="tabular"/>
61 </test> 66 </test>
62 <test expect_num_outputs="3"> 67 <test expect_num_outputs="3">
63 <param name="input" value="NC_011750.1_simulated_kraken_report.txt" ftype="tabular"/> 68 <param name="input" value="NC_011750.1_simulated_kraken_report.txt" ftype="tabular"/>
64 <param name="level" value="S" /> 69 <param name="level" value="S"/>
65 <param name="kmer_distr" value="test_entry"/> 70 <param name="kmer_distr" value="test_entry"/>
66 <param name="out_report" value="true"/> 71 <param name="out_report" value="true"/>
67 <param name="logfile_output" value="True"/> 72 <param name="logfile_output" value="True"/>
68 <output name="report" file="NC_011750.1_simulated_bracken_report.txt" ftype="tabular"/> 73 <output name="report" file="NC_011750.1_simulated_bracken_report.txt" ftype="tabular"/>
69 <output name="kraken_report" file="NC_011750.1_simulated_kraken_style_bracken_report.txt" ftype="tabular"/> 74 <output name="kraken_report" file="NC_011750.1_simulated_kraken_style_bracken_report.txt" ftype="tabular"/>
70 <output name="logfile" file="test2.log" lines_diff="8" /> 75 <output name="logfile" file="test2.log" lines_diff="8"/>
71 </test> 76 </test>
72 </tests> 77 </tests>
73 <help> 78 <help>
74 <![CDATA[ 79 <![CDATA[
75 Documentation can be found at `site <http://ccb.jhu.edu/software/bracken/index.shtml?t=manual>` 80 Bracken relies on Bayesian probabilities that derive from the knowledge about the Kraken classification of each read-length kmer from all genomes within the provided Kraken database. It takes the tabular report output of kraken/kraken2 representing abundance of all detected taxa and provides as output a table representing the re-estimated abundances of different taxa at the taxonomy level pre-determined by the user. For more information about the operation behind the scene, visit http://ccb.jhu.edu/software/bracken/index.shtml?t=manual.
81
82 Prior to abundance estimation with bracken, we must divide each genome in the Kraken database into read-length kmers, classify each of those kmers and store as a data structure. This indexing step has already been performed for you and it suffices to select the name of the correct kraken DB that you used for read classification.
83
84 Bracken output file format (tabular):
85 * Taxon name
86 * Taxonomy ID
87 * Level ID (S=Species, G=Genus, O=Order, F=Family, P=Phylum, K=Kingdom)
88 * Kraken assigned reads
89 * Added reads with abundance re-estimation
90 * Total reads after abundance re-estimation
91 * Fraction of total reads
76 ]]></help> 92 ]]></help>
77 <expand macro="citations" /> 93 <expand macro="citations"/>
78 </tool> 94 </tool>