1
|
1 <tool id="ngs-tools_split_by_barcode" name="Barcode Splitter (ngs-tools)" force_history_refresh="True">
|
|
2 <description></description>
|
|
3 <command>
|
|
4 ngs-tools split-by-barcode
|
|
5 $keep_barcode $input_format.format
|
|
6 --barcode-size $barcode_length --max-distance $max_distance
|
|
7 #for $i in $barcodes
|
|
8 --barcode ${i.barcode}
|
|
9 #end for
|
|
10 --report $output1 --galaxy $output1.id --output $__new_file_path__
|
|
11 $barcode_index
|
|
12 #for $i in $input_format.inputs
|
|
13 ${i.input}
|
|
14 #end for
|
|
15 </command>
|
|
16
|
|
17 <inputs>
|
2
|
18 <conditional name="input_format">
|
|
19 <param name="format" type="select" label="Input format">
|
|
20 <option value="--fastq" selected="true">Fastq</option>
|
|
21 <option value="">Fasta</option>
|
|
22 </param>
|
|
23 <when value="--fastq">
|
|
24 <repeat name="inputs" title="Dataset" help="Datasets to split.">
|
|
25 <param name="input" type="data" label="Dataset to split" format="fastq,fastqsanger,fastqsolexa,fastqillumina" />
|
|
26 </repeat>
|
|
27 </when>
|
|
28 <when value="">
|
|
29 <repeat name="inputs" title="Dataset" help="Datasets to split.">
|
|
30 <param name="input" type="data" label="Dataset to split" format="fasta" />
|
|
31 </repeat>
|
|
32 </when>
|
|
33 </conditional>
|
|
34 <param format="tabular" name="barcode_index" type="data" label="Barcodes index" help="See below for description." />
|
1
|
35 <param name="barcode_length" type="integer" size="3" value="11" label="Barcode length" help="Please specify the barcode length." />
|
|
36 <repeat name="barcodes" title="Barcode" help="Barcodes to use. By default all barcodes with the correct length in the index are used. By using this option you can limit which ones to use.">
|
|
37 <param name="barcode" type="text" label="Barcode to use" />
|
|
38 </repeat>
|
|
39 <param name="keep_barcode" type="select" label="Do not trim the barcode" help="By default barcodes are trimmed from the resulting splitted datasets">
|
|
40 <option value="" selected="true">No</option>
|
|
41 <option value="--keep-barcode">Yes</option>
|
|
42 </param>
|
|
43 <param name="max_distance" type="integer" size="3" value="2" label="Number of allowed polymorphisms" help="Max Levenshtein's distance when looking for mutated barcodes." />
|
|
44 </inputs>
|
|
45
|
|
46 <outputs>
|
|
47 <data format="interval" name="output1" />
|
|
48 </outputs>
|
|
49 <help>
|
|
50
|
|
51 **What it does**
|
|
52
|
|
53 This tool splits FASTQ or FASTA datasets into several datasets, using barcodes as the split criteria.
|
|
54
|
|
55 --------
|
|
56
|
|
57 **Barcode index format**
|
|
58
|
|
59 Barcode index datasets are simple tab separated files.
|
|
60 Each line should contain an identifier (descriptive name for the barcode), and the barcode itself (A/C/G/T), separated by a TAB character.
|
|
61 Example::
|
|
62
|
|
63 RL001 ACACGACGACT
|
|
64 RL002 ACACGTAGTAT
|
|
65 RL003 ACACTACTCGT
|
|
66 RL004 ACGACACGTAT
|
|
67 RL005 ACGAGTAGACT
|
|
68
|
|
69 For each barcode, a new FASTQ or FASTA dataset will be created (with the barcode's identifier as part of the dataset name).
|
|
70 Sequences matching the barcode will be stored in the appropriate dataset.
|
|
71
|
|
72 One additional FASTQ or FASTA dataset will be created (the 'Unassigned' dataset), where sequences not matching any barcode will be stored.
|
|
73
|
|
74 The output of this tool is one history dataset per each barcode provided plus a report with the split counts.
|
|
75
|
|
76 ------
|
|
77
|
|
78 This tool is based on `ngs-tools`__ by Carlos Borroto <carlos.borroto@gmail.com>.
|
|
79
|
|
80 .. __: https://github.com/cjav/ngs-tools/
|
|
81
|
|
82 </help>
|
|
83 </tool>
|