comparison macs2_wrapper.xml @ 14:88634fc77f11 draft

Uploaded
author modencode-dcc
date Fri, 18 Jan 2013 16:08:48 -0500
parents 522a47128d55
children
comparison
equal deleted inserted replaced
13:a04ef32f2fea 14:88634fc77f11
1 <tool id="modencode_peakcalling_macs2" name="MACS2" version="2.0.10.2">
2 <requirements>
3 <requirement type="python-module">macs2</requirement>
4 <requirement type="package" version="2.0.10.2">macs2</requirement>
5 <!--<requirement type="set_environment">SCRIPT_PATH</requirement>-->
6 </requirements>
7 <description>Model-based Analysis of ChIP-Seq</description>
8 <command interpreter="python">macs2_wrapper.py $options_file $outputs_file</command>
9 <inputs>
10 <!--experiment name and option of selecting paired or single end will always be present-->
11 <param name="experiment_name" type="text" value="MACS2 in Galaxy" size="50" label="Experiment Name"/>
12
13 <!--select one of the 7 major commands offered by macs2-->
14 <conditional name="major_command">
15 <param name="major_command_selector" type="select" label="Select action to be performed">
16 <option value="callpeak">Peak Calling</option>
17 <!--<option value="filterdup">filterdup</option>
18 <option value="randsample">randsample</option>-->
19 <option value="bdgcmp">Compare .bdg Files</option>
20 <!--<option value="bdgdiff">bdgdiff</option>
21 <option value="bdgpeakcall">bdgpeakcall</option>
22 <option value="bdgbroadcall">bdgbroadcall</option>-->
23 </param>
24 <!--callpeak option of macs2-->
25 <when value="callpeak">
26 <!--may need to add a few more formats at later time-->
27 <param name="input_chipseq_file1" type="data" format="bam" label="ChIP-Seq Tag File" />
28 <param name="input_control_file1" type="data" format="bam" optional="True" label="ChIP-Seq Control File" />
29 <param name="gsize" type="float" label="Effective genome size" value="2.7e+9" help="Human: 3.3e+9, Mouse: 3.0e+9, Fly: 1.9e+8, Worm: 1.3e+8 (--gsize)"/>
30 <param name="bw" type="integer" label="Band width" value="300" help="(--bw)"/>
31 <param name="xls_to_interval" label="Parse xls files into into distinct interval files" type="boolean" truevalue="True" falsevalue="False" checked="False"/>
32 <param name="bdg" label="Save fragment pileup, control lambda, -log10pvalue/qvalue in bedGraph" type="boolean" truevalue="-B" falsevalue="" checked="False" help="files located in html report"/>
33
34 <conditional name="pq_options">
35 <param name="pq_options_selector" type="select" label="Select p-value or q-value" help="default uses q-value">
36 <option value="qvalue">q-value</option>
37 <option value="pvalue">p-value</option>
38 </param>
39 <when value="pvalue">
40 <param name="pvalue" type="float" label="p-value cutoff for peak detection" value="1e-2" help="default: 1e-2 (--pvalue)"/>
41 </when>
42 <when value="qvalue">
43 <param name="qvalue" type="float" label="q-value cutoff for peak detection" value="5e-2" help="default: 5e-2 (--qvalue)"/>
44 </when>
45 </conditional>
46 <conditional name="advanced_options">
47 <param name="advanced_options_selector" type="select" label="Display advanced options">
48 <option value="off">Hide</option>
49 <option value="on">Display</option>
50 </param>
51 <when value="on">
52 <param name="mfoldlo" type="integer" label="Select the regions with MFOLD high-confidence enrichment ratio against background to build model (lower-limit)" value="10" help="(--mfold)"/>
53 <param name="mfoldhi" type="integer" label="Select the regions with MFOLD high-confidence enrichment ratio against background to build model (upper-limit)" value="30" help="(--mfold)"/>
54 <param name="nolambda" label="Use fixed background lambda as local lambda for every peak region" type="boolean" truevalue="--nolambda" falsevalue="" checked="False" help="up to 9X more time consuming (--nolambda)"/>
55 </when>
56 <when value="off">
57 <!--display nothing-->
58 </when>
59 </conditional>
60 <conditional name="nomodel_type">
61 <param name="nomodel_type_selector" type="select" label="Build Model">
62 <option value="nomodel">Do not build the shifting model (--nomodel enabled)</option>
63 <option value="create_model" selected="true">Build the shifting model (--nomodel disabled)</option>
64 </param>
65 <when value="nomodel">
66 <param name="shiftsize" type="integer" label="Arbitrary shift size in bp" value="100" help="(--shiftsize)"/>
67 </when>
68 </conditional>
69 </when>
70
71 <!--callpeak option of macs2-->
72 <when value="bdgcmp">
73 <param name="input_chipseq_file1" type="data" format="bam" label="ChIP-Seq Tag File" />
74 <param name="input_control_file1" type="data" format="bam" optional="True" label="ChIP-Seq Control File" />
75 <param name="pseudocount" type="float" label="Set pseudocount" value="0.00001" help="default: 0.00001 (-p)"/>
76
77 <conditional name="bdgcmp_options">
78 <param name="bdgcmp_options_selector" type="select" label="Select action to be performed">
79 <option value="ppois">ppois</option>
80 <option value="qpois">qpois</option>
81 <option value="subtract">subtract</option>
82 <option value="logFE">logFE</option>
83 <option value="FE">FE</option>
84 <option value="logLR">logLR</option>
85 </param>
86 </conditional>
87 </when>
88 </conditional>
89 </inputs>
90
91 <outputs>
92 <!--callpeaks output-->
93 <data name="output_bed_file" format="bed" label="${tool.name}: callpeak on ${on_string} (peaks: bed)">
94 <filter>major_command['major_command_selector'] == 'callpeak'</filter>
95 </data>
96 <data name="output_extra_files" format="html" label="${tool.name}: callpeak on ${on_string} (html report)">
97 <filter>major_command['major_command_selector'] == 'callpeak'</filter>
98 </data>
99 <data name="output_peaks_file" format="xls" label="${tool.name}: callpeak on ${on_string} (peaks: xls)">
100 <filter>major_command['major_command_selector'] == 'callpeak'</filter>
101 </data>
102 <data name="output_narrowpeaks_file" format="txt" label="${tool.name}: callpeak on ${on_string} (peaks: encodePeak)">
103 <filter>major_command['major_command_selector'] == 'callpeak'</filter>
104 </data>
105 <data name="output_xls_to_interval_peaks_file" format="interval" label="${tool.name}: callpeak on ${on_string} (peaks: interval)">
106 <filter>major_command['xls_to_interval'] is True</filter>
107 <filter>major_command['major_command_selector'] == 'callpeak'</filter>
108 </data>
109 <data name="output_xls_to_interval_negative_peaks_file" format="interval" label="${tool.name}: callpeak on ${on_string} (negative peaks: interval)">
110 <filter>major_command['xls_to_interval'] is True</filter>
111 <filter>major_command['input_control_file1'] is not None</filter>
112 <filter>major_command['major_command_selector'] == 'callpeak'</filter>
113 </data>
114 <!--bdgcmp output-->
115 <data name="output_bdgcmp_file" format="bdg" label="${tool.name}: bdgcmp on ${on_string} (bdg)">
116 <filter>major_command['major_command_selector'] == 'bdgcmp'</filter>
117 </data>
118 </outputs>
119 <configfiles>
120
121 <configfile name="outputs_file">&lt;%
122 import simplejson
123 %&gt;
124 ##=======================================================================================
125 #set $__outputs = { 'command':str( $major_command.major_command_selector ) }
126 #if str( $major_command.major_command_selector ) == 'callpeak':
127 #set $__outputs['output_bed_file'] = str( $output_bed_file )
128 #set $__outputs['output_extra_file'] = str( $output_extra_files )
129 #set $__outputs['output_extra_file_path'] = str( $output_extra_files.files_path )
130 #set $__outputs['output_peaks_file'] = str( $output_peaks_file )
131 #set $__outputs['output_narrowpeaks_file'] = str( $output_narrowpeaks_file )
132 #set $__outputs['output_xls_to_interval_peaks_file'] = str( $output_xls_to_interval_peaks_file )
133 #set $__outputs['output_xls_to_interval_negative_peaks_file'] = str( $output_xls_to_interval_negative_peaks_file )
134 #end if
135 ##=======================================================================================
136 #if str( $major_command.major_command_selector ) == 'bdgcmp':
137 #set $__outputs['output_bdgcmp_file'] = str( $output_bdgcmp_file )
138 #end if
139
140 ${ simplejson.dumps( __outputs ) }
141 </configfile>
142 <configfile name="options_file">&lt;%
143 import simplejson
144 %&gt;
145 ##=======================================================================================
146 #set $__options = { 'experiment_name':str( $experiment_name ) }
147 ##treatment/tag input files and format
148 #set $__options['input_chipseq'] = [ str( $major_command.input_chipseq_file1 ) ]
149 #set $__options['format'] = $major_command.input_chipseq_file1.extension.upper()
150
151 ##control/input files
152 #set $__options['input_control'] = []
153 #if str( $major_command.input_control_file1 ) != 'None':
154 #set $_hole = __options['input_control'].append( str( $major_command.input_control_file1 ) )
155 #end if
156
157 #if str( $major_command.major_command_selector ) == 'callpeak':
158 #set $__options['command'] = str( "callpeak" )
159 #set $__options['gsize'] = int( $major_command.gsize )
160 #set $__options['bw'] = str( $major_command.bw )
161 #set $__options['bdg'] = str( $major_command.bdg )
162 #set $__options['xls_to_interval'] = str( $major_command.xls_to_interval )
163
164 ##advanced options
165 #if str( $major_command.advanced_options.advanced_options_selector ) == 'on':
166 #set $__options['mfoldlo'] = int( $major_command.advanced_options.mfoldlo )
167 #set $__options['mfoldhi'] = int( $major_command.advanced_options.mfoldhi )
168 #set $__options['nolambda'] = str( $major_command.advanced_options.nolambda )
169 #else:
170 #set $__options['mfoldlo'] = int( "10" )
171 #set $__options['mfoldhi'] = int( "30" )
172 #set $__options['nolambda'] = str( "" )
173 #end if
174
175 ##enable xls file options
176 ##if str( $major_command.xls_to_interval ) == 'create':
177 ##set $__options['xls_to_interval'] = { 'peaks_file': str( $output_xls_to_interval_peaks_file ), 'negative_peaks_file': str( $output_xls_to_interval_negative_peaks_file ) }
178 ##end if
179
180 ##pq value select options
181 #if str( $major_command.pq_options.pq_options_selector ) == 'qvalue':
182 #set $__options['qvalue'] = str( $major_command.pq_options.qvalue )
183 #else:
184 #set $__options['pvalue'] = str( $major_command.pq_options.pvalue )
185 #end if
186
187 ##model options
188 #if str( $major_command.nomodel_type.nomodel_type_selector ) == 'nomodel':
189 #set $__options['nomodel'] = str( $major_command.nomodel_type.shiftsize )
190 #end if
191 #end if
192 ##=======================================================================================
193 #if str( $major_command.major_command_selector ) == 'bdgcmp':
194 #set $__options['command'] = str( "bdgcmp" )
195 #set $__options['pseudocount'] = float( str( $major_command.pseudocount ) )
196 #set $__options['m'] = str( $major_command.bdgcmp_options.bdgcmp_options_selector )
197 #end if
198 ##=======================================================================================
199
200 ${ simplejson.dumps( __options ) }
201 </configfile>
202 </configfiles>
203 <tests>
204 <!--none yet for macs2-->
205 </tests>
206 <help>
207 **What it does**
208
209 With the improvement of sequencing techniques, chromatin immunoprecipitation followed by high throughput sequencing (ChIP-Seq)
210 is getting popular to study genome-wide protein-DNA interactions. To address the lack of powerful ChIP-Seq analysis method, we present a novel algorithm, named Model-based Analysis of ChIP-Seq (MACS), for
211 identifying transcript factor binding sites. MACS captures the influence of genome complexity to evaluate the significance of enriched ChIP regions, and MACS improves the spatial resolution of
212 binding sites through combining the information of both sequencing tag position and orientation. MACS can be easily used for ChIP-Seq data alone, or with control sample with the increase of specificity.
213
214 View the original MACS2 documentation: https://github.com/taoliu/MACS/blob/master/README
215
216 ------
217
218 **Usage**
219
220 **Peak Calling**: Main MACS2 Function to Call peaks from alignment results.
221
222 **Compare .bdg files**: Deduct noise by comparing two signal tracks in bedGraph.
223
224
225 ------
226
227 **Citation**
228
229 For the underlying tool, please cite Zhang Y, Liu T, Meyer CA, Eeckhoute J, Johnson DS, Bernstein BE, Nusbaum C, Myers RM, Brown M, Li W, Liu XS. Model-based analysis of ChIP-Seq (MACS). Genome Biol. 2008;9(9):R137.
230
231 Integration of MACS2 with Galaxy performed by Ziru Zhou ( ziruzhou@gmail.com ). Please send your comments/questions to modENCODE DCC at help@modencode.org.
232 </help>
233 </tool>