Mercurial > repos > peterjc > seq_filter_by_mapping
comparison tools/seq_filter_by_mapping/seq_filter_by_mapping.xml @ 0:1d773da0ccf0 draft
Uploaded v0.0.2, fixed some error messages
author | peterjc |
---|---|
date | Tue, 27 Jan 2015 08:31:13 -0500 |
parents | |
children | 8ff0ac66f1a3 |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:1d773da0ccf0 |
---|---|
1 <tool id="seq_filter_by_mapping" name="Filter sequences by mapping" version="0.0.2"> | |
2 <description>from SAM/BAM file</description> | |
3 <requirements> | |
4 <requirement type="package" version="1.64">biopython</requirement> | |
5 <requirement type="python-module">Bio</requirement> | |
6 <requirement type="binary">samtools</requirement> | |
7 <requirement type="package" version="0.1.19">samtools</requirement> | |
8 </requirements> | |
9 <version_command interpreter="python">seq_filter_by_mapping.py --version</version_command> | |
10 <command interpreter="python"> | |
11 seq_filter_by_mapping.py -i "$input_file" -f "$input_file.ext" -m $pair_mode | |
12 #if $output_choice_cond.output_choice=="both" | |
13 -p $output_pos -n $output_neg | |
14 #elif $output_choice_cond.output_choice=="pos" | |
15 -p $output_pos | |
16 #elif $output_choice_cond.output_choice=="neg" | |
17 -n $output_neg | |
18 #end if | |
19 ## Now loop over all the mapping files | |
20 #for i in $mapping_file#${i} #end for# | |
21 </command> | |
22 <stdio> | |
23 <!-- Anything other than zero is an error --> | |
24 <exit_code range="1:" /> | |
25 <exit_code range=":-1" /> | |
26 </stdio> | |
27 <inputs> | |
28 <param name="input_file" type="data" format="fasta,fastq,sff" label="Sequence file to be filtered" help="FASTA, FASTQ, or SFF format." /> | |
29 <param name="mapping_file" type="data" format="sam,bam" multiple="true" label="SAM/BAM mapping of those sequences" help="SAM or BAM format." /> | |
30 <conditional name="output_choice_cond"> | |
31 <param name="output_choice" type="select" label="Output mapped reads, unmapped reads, or both?"> | |
32 <option value="both">Both mapped and unmapped reads, as two files</option> | |
33 <option value="pos">Just mapped reads, as a single file</option> | |
34 <option value="neg">Just unmapped reads, as a single file</option> | |
35 </param> | |
36 <!-- Seems need these dummy entries here, compare this to indels/indel_sam2interval.xml --> | |
37 <when value="both" /> | |
38 <when value="pos" /> | |
39 <when value="neg" /> | |
40 </conditional> | |
41 <param name="pair_mode" type="select" label="Paired read treatment"> | |
42 <option value="lax" selected="true">Treat as a pair, allow either read to be mapped</option> | |
43 <option value="strict">Treat as a pair, require both reads to be mapped</option> | |
44 <!-- The following would actually be more work as have to store qname/1 and qname/2 separately for filter... | |
45 <option value="solo">Treat independently (will split partners when only one maps)</option> | |
46 --> | |
47 </param> | |
48 </inputs> | |
49 <outputs> | |
50 <data name="output_pos" format="input" metadata_source="input_file" label="$input_file.name (mapped)"> | |
51 <filter>output_choice_cond["output_choice"] != "neg"</filter> | |
52 </data> | |
53 <data name="output_neg" format="input" metadata_source="input_file" label="$input_file.name (unmapped)"> | |
54 <filter>output_choice_cond["output_choice"] != "pos"</filter> | |
55 </data> | |
56 </outputs> | |
57 <tests> | |
58 <test> | |
59 <param name="input_file" value="SRR639755_mito_pairs.fastq.gz" ftype="fastqsanger" /> | |
60 <param name="mapping_file" value="SRR639755_sample_by_coord.sam" ftype="sam" /> | |
61 <param name="pair_mode" value="lax" /> | |
62 <param name="output_choice" value="pos" /> | |
63 <output name="output_pos" file="SRR639755_sample_lax.fastq" ftype="fastqsanger" /> | |
64 </test> | |
65 <test> | |
66 <param name="input_file" value="SRR639755_mito_pairs.fastq.gz" ftype="fastqsanger" /> | |
67 <param name="mapping_file" value="SRR639755_sample_by_coord.sam" ftype="sam" /> | |
68 <param name="pair_mode" value="strict" /> | |
69 <param name="output_choice" value="pos" /> | |
70 <output name="output_pos" file="SRR639755_sample_strict.fastq" ftype="fastqsanger" /> | |
71 </test> | |
72 </tests> | |
73 <help> | |
74 **What it does** | |
75 | |
76 By default it divides a FASTA, FASTQ or Standard Flowgram Format (SFF) file in | |
77 two, those sequences (or read pairs) which do or don't map in the provided | |
78 SAM/BAM file. You can opt to have a single output file of just the mapping reads, | |
79 or just the non-mapping ones. | |
80 | |
81 **Example Usage** | |
82 | |
83 You might wish to perform a contamination screan by mapping your reads against | |
84 known contaminant reference sequences, then use this tool to select only the | |
85 unmapped reads for further analysis (e.g. *de novo* assembly). | |
86 | |
87 Similarly you might wish to map your reads against a known bacterial reference, | |
88 then take the non-mapping sequences forward for analysis if looking for novel | |
89 plasmids. | |
90 | |
91 | |
92 **References** | |
93 | |
94 If you use this Galaxy tool in work leading to a scientific publication please | |
95 cite: | |
96 | |
97 Peter J.A. Cock (2014), Galaxy tool for filtering reads by mapping | |
98 http://toolshed.g2.bx.psu.edu/view/peterjc/seq_filter_by_mapping | |
99 | |
100 This tool uses Biopython to read and write SFF files, so you may also wish to | |
101 cite the Biopython application note (and Galaxy too of course): | |
102 | |
103 Cock et al (2009). Biopython: freely available Python tools for computational | |
104 molecular biology and bioinformatics. Bioinformatics 25(11) 1422-3. | |
105 http://dx.doi.org/10.1093/bioinformatics/btp163 pmid:19304878. | |
106 | |
107 This tool is available to install into other Galaxy Instances via the Galaxy | |
108 Tool Shed at http://toolshed.g2.bx.psu.edu/view/peterjc/seq_filter_by_mapping | |
109 </help> | |
110 <citations> | |
111 <citation type="doi">10.1093/bioinformatics/btp163</citation> | |
112 </citations> | |
113 </tool> |