comparison bam2wig.xml @ 49:6b33e31bda10 draft

Uploaded tar based on https://github.com/lparsons/galaxy_tools/tree/master/tools/rseqc 1a3c419bc0ded7c40cb2bc3e7c87bfb01ddfeba2
author lparsons
date Thu, 16 Jul 2015 17:43:43 -0400
parents 2e6190c29c54
children 09846d5169fa
comparison
equal deleted inserted replaced
48:2e6190c29c54 49:6b33e31bda10
1 <tool id="rseqc_bam2wig" name="BAM to Wiggle" version="2.4"> 1 <tool id="rseqc_bam2wig" name="BAM to Wiggle" version="2.4galaxy1">
2 <description> 2 <description>
3 converts all types of RNA-seq data from .bam to .wig 3 converts all types of RNA-seq data from .bam to .wig
4 </description> 4 </description>
5
6 <macros>
7 <import>rseqc_macros.xml</import>
8 </macros>
9
5 <requirements> 10 <requirements>
6 <requirement type="package" version="3.0.3">R</requirement> 11 <expand macro="requirement_package_r" />
7 <requirement type="package" version="1.7.1">numpy</requirement> 12 <expand macro="requirement_package_numpy" />
8 <requirement type="package" version="2.4">rseqc</requirement> 13 <expand macro="requirement_package_rseqc" />
9 </requirements> 14 </requirements>
10 <command>
11 tmp_input_name=\$(mktemp -u);
12 bai='.bai';
13 15
14 ln -s "${input}" \$tmp_input_name &amp;&amp; 16 <expand macro="stdio" />
15 ln -s "${input.metadata.bam_index}" \$tmp_input_name\$bai &amp;&amp; 17
16 bam2wig.py -i \$tmp_input_name -s $chromsize -o outfile 18 <version_command><![CDATA[bam2wig.py --version]]></version_command>
19
20 <command><![CDATA[
21 ln -sfn '${input}' 'input.bam' &&
22 ln -sfn '${input.metadata.bam_index}' 'input.bam.bai' &&
23 bam2wig.py -i input.bam -s $chromsize -o outfile
17 24
18 #if str($strand_type.strand_specific) == "pair" 25 #if str($strand_type.strand_specific) == "pair"
19 -d 26 -d
20 #if str($strand_type.pair_type) == "sd" 27 #if str($strand_type.pair_type) == "sd"
21 '1++,1--,2+-,2-+' 28 '1++,1--,2+-,2-+'
34 #end if 41 #end if
35 42
36 #if $wigsum.wigsum_type 43 #if $wigsum.wigsum_type
37 -t $wigsum.totalwig 44 -t $wigsum.totalwig
38 #end if 45 #end if
39 46 #if $multihits.skipmultihits
40 #if $skipmultihits 47 --skip-multi-hits
41 -u 48 --mapq=$multihits.mapq
42 #end if 49 #end if
43 ; 50 2>&1
44 rm "\$tmp_input_name\$bai"; 51 ]]>
45 rm \$tmp_input_name
46 </command> 52 </command>
47 <inputs> 53 <inputs>
48 <param name="input" type="data" label="Input .bam File" format="bam" /> 54 <param name="input" type="data" label="Input .bam File" format="bam" help="(--input-file)"/>
49 <param name="chromsize" type="data" label="Chromosome size file (tab or space separated)" format="txt,tabular" /> 55 <param name="chromsize" type="data" label="Chromosome size file (tab or space separated)" format="txt,tabular" help="(--chromSize)"/>
50 <param name="skipmultihits" type="boolean" label="Skip Multiple Hit Reads/Only Use Uniquely Mapped Reads" value="false" /> 56
57 <conditional name="multihits">
58 <param name="skipmultihits" type="boolean" label="Skip Multiple Hit Reads/Only Use Uniquely Mapped Reads" value="false" help="(--skip-multi-hits)" />
59 <when value="true">
60 <param name="mapq" value="30" type="integer" label="Minimum mapping quality for an alignment to be called 'uniquly mapped'" help="(--mapq)" />
61 </when>
62 <when value="false" />
63 </conditional>
64
51 <conditional name="wigsum"> 65 <conditional name="wigsum">
52 <param name="wigsum_type" type="boolean" label="Specify wigsum?" value="false"> 66 <param name="wigsum_type" type="boolean" label="Specify wigsum?" value="false">
53 </param> 67 </param>
54 <when value="true"> 68 <when value="true">
55 <param name="totalwig" value="0" type="integer" label="specified wigsum" /> 69 <param name="totalwig" value="0" type="integer" label="specified wigsum" help="(--wigsum)"/>
56 </when> 70 </when>
57 <when value="false"/> 71 <when value="false"/>
58 </conditional> 72 </conditional>
73
59 <conditional name="strand_type"> 74 <conditional name="strand_type">
60 <param name="strand_specific" type="select" label="Strand-specific?" value="none"> 75 <param name="strand_specific" type="select" label="Strand-specific?" value="none">
61 <option value="none">none</option> 76 <option value="none">none</option>
62 <option value="pair">Pair-End RNA-seq</option> 77 <option value="pair">Pair-End RNA-seq</option>
63 <option value="single">Single-End RNA-seq</option> 78 <option value="single">Single-End RNA-seq</option>
64 </param> 79 </param>
65 <when value="pair"> 80 <when value="pair">
66 <param name="pair_type" type="select" display="radio" label="Pair-End Read Type (format: mapped --> parent)" value="sd"> 81 <param name="pair_type" type="select" display="radio" label="Pair-End Read Type (format: mapped --> parent)" value="sd" help="(--strand)">
67 <option value="sd"> read1 (positive --> positive; negative --> negative), read2 (positive --> negative; negative --> positive)</option> 82 <option value="sd"> read1 (positive --> positive; negative --> negative), read2 (positive --> negative; negative --> positive)</option>
68 <option value="ds">read1 (positive --> negative; negative --> positive), read2 (positive --> positive; negative --> negative)</option> 83 <option value="ds">read1 (positive --> negative; negative --> positive), read2 (positive --> positive; negative --> negative)</option>
69 </param> 84 </param>
70 </when> 85 </when>
71 <when value="single"> 86 <when value="single">
72 <param name="single_type" type="select" display="radio" label="Single-End Read Type (format: mapped --> parent)" value="s"> 87 <param name="single_type" type="select" display="radio" label="Single-End Read Type (format: mapped --> parent)" value="s" help="(--strand)">
73 <option value="s">positive --> positive; negative --> negative</option> 88 <option value="s">positive --> positive; negative --> negative</option>
74 <option value="d">positive --> negative; negative --> positive</option> 89 <option value="d">positive --> negative; negative --> positive</option>
75 </param> 90 </param>
76 </when> 91 </when>
77 <when value="none"></when> 92 <when value="none"></when>
78 </conditional> 93 </conditional>
79 </inputs> 94 </inputs>
80 <outputs> 95
96 <outputs>
81 <data format="wig" name="output" from_work_dir="outfile.wig"> 97 <data format="wig" name="output" from_work_dir="outfile.wig">
82 <filter>strand_type['strand_specific'] == 'none'</filter> 98 <filter>strand_type['strand_specific'] == 'none'</filter>
83 </data> 99 </data>
84 <data format="wig" name="outputfwd" from_work_dir="outfile.Forward.wig" label="${tool.name} on ${on_string} (Forward Reads)"> 100 <data format="wig" name="outputfwd" from_work_dir="outfile.Forward.wig" label="${tool.name} on ${on_string} (Forward Reads)">
85 <filter>strand_type['strand_specific'] != 'none'</filter> 101 <filter>strand_type['strand_specific'] != 'none'</filter>
86 </data> 102 </data>
87 <data format="wig" name="outputrv" from_work_dir="outfile.Reverse.wig" label="${tool.name} on ${on_string} (Reverse Reads)"> 103 <data format="wig" name="outputrv" from_work_dir="outfile.Reverse.wig" label="${tool.name} on ${on_string} (Reverse Reads)">
88 <filter>strand_type['strand_specific'] != 'none'</filter> 104 <filter>strand_type['strand_specific'] != 'none'</filter>
89 </data> 105 </data>
90 </outputs> 106 </outputs>
91 <stdio> 107
92 <exit_code range="1:" level="fatal" description="An error occured during execution, see stderr and stdout for more information" /> 108 <tests>
93 <regex match="[Ee]rror" source="both" description="An error occured during execution, see stderr and stdout for more information" /> 109 <test>
94 </stdio> 110 <param name="input" value="pairend_strandspecific_51mer_hg19_chr1_1-100000.bam"/>
95 <help> 111 <param name="chromsize" value="hg19.chrom.sizes"/>
112 <output name="output" file="testwig.wig"/>
113 </test>
114 <test>
115 <param name="input" value="pairend_strandspecific_51mer_hg19_chr1_1-100000.bam"/>
116 <param name="chromsize" value="hg19.chrom.sizes"/>
117 <param name="skipmultihits" value="True"/>
118 <param name="mapq" value="20"/>
119 <output name="output" file="testwig.wig"/>
120 </test>
121 <test>
122 <param name="input" value="pairend_strandspecific_51mer_hg19_chr1_1-100000.bam"/>
123 <param name="chromsize" value="hg19.chrom.sizes"/>
124 <param name="strand_specific" value="pair"/>
125 <param name="pair_type" value="sd"/>
126 <output name="outputfwd" file="testwig.Forward.wig"/>
127 <output name="outputrv" file="testwig.Reverse.wig"/>
128 </test>
129 </tests>
130
131 <help><![CDATA[
96 bam2wig.py 132 bam2wig.py
97 ++++++++++ 133 ++++++++++
98 134
99 Visualization is the most straightforward and effective way to QC your RNA-seq 135 Visualization is the most straightforward and effective way to QC your RNA-seq
100 data. For example, change of expression or new splicing can be easily checked 136 data. For example, change of expression or new splicing can be easily checked
129 If RNA-seq is not strand specific, one wig file will be generated, if RNA-seq 165 If RNA-seq is not strand specific, one wig file will be generated, if RNA-seq
130 is strand specific, two wig files corresponding to Forward and Reverse will be generated. 166 is strand specific, two wig files corresponding to Forward and Reverse will be generated.
131 167
132 ----- 168 -----
133 169
134 About RSeQC 170 About RSeQC
135 +++++++++++ 171 +++++++++++
136
137 172
138 The RSeQC_ package provides a number of useful modules that can comprehensively evaluate high throughput sequence data especially RNA-seq data. "Basic modules" quickly inspect sequence quality, nucleotide composition bias, PCR bias and GC bias, while "RNA-seq specific modules" investigate sequencing saturation status of both splicing junction detection and expression estimation, mapped reads clipping profile, mapped reads distribution, coverage uniformity over gene body, reproducibility, strand specificity and splice junction annotation. 173 The RSeQC_ package provides a number of useful modules that can comprehensively evaluate high throughput sequence data especially RNA-seq data. "Basic modules" quickly inspect sequence quality, nucleotide composition bias, PCR bias and GC bias, while "RNA-seq specific modules" investigate sequencing saturation status of both splicing junction detection and expression estimation, mapped reads clipping profile, mapped reads distribution, coverage uniformity over gene body, reproducibility, strand specificity and splice junction annotation.
139 174
140 The RSeQC package is licensed under the GNU GPL v3 license. 175 The RSeQC package is licensed under the GNU GPL v3 license.
141 176
142 .. image:: http://rseqc.sourceforge.net/_static/logo.png 177 .. image:: http://rseqc.sourceforge.net/_static/logo.png
143 178
144 .. _RSeQC: http://rseqc.sourceforge.net/ 179 .. _RSeQC: http://rseqc.sourceforge.net/
180
145 .. _UCSC: http://genome.ucsc.edu/index.html 181 .. _UCSC: http://genome.ucsc.edu/index.html
146 .. _IGB: http://bioviz.org/igb/ 182 .. _IGB: http://bioviz.org/igb/
147 .. _IGV: http://www.broadinstitute.org/igv/home 183 .. _IGV: http://www.broadinstitute.org/igv/home
148 .. _BAM: http://genome.ucsc.edu/goldenPath/help/bam.html 184 .. _BAM: http://genome.ucsc.edu/goldenPath/help/bam.html
149 .. _wiggle: http://genome.ucsc.edu/goldenPath/help/wiggle.html 185 .. _wiggle: http://genome.ucsc.edu/goldenPath/help/wiggle.html
150 .. _bigwig: http://genome.ucsc.edu/FAQ/FAQformat.html#format6.1 186 .. _bigwig: http://genome.ucsc.edu/FAQ/FAQformat.html#format6.1
187 ]]>
188 </help>
151 189
152 </help> 190 <expand macro="citations" />
191
153 </tool> 192 </tool>