comparison epicseg.xml @ 0:6260e42c7d49 draft default tip

planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/epicseg commit 560df98ab92af885e9d2e909ee8709885e52cbd3
author rnateam
date Wed, 07 Mar 2018 16:56:29 -0500
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:6260e42c7d49
1 <tool id="epicseg_segment" name="EpiCSeg - Chromatin segmentation" version="@VERSION_STRING@">
2 <macros>
3 <import>macros.xml</import>
4 </macros>
5 <expand macro="requirements" />
6 <command detect_errors="exit_code"><![CDATA[
7
8 mkdir -p '${ report.files_path }' &&
9
10 ## Acquire the count matrices
11 #for $d, $dataset in enumerate( $datasets ):
12 #for $i, $mark in enumerate( $dataset.marks ):
13 ln -s -f '${mark.reads}' '${d}_${i}.bam' &&
14 ln -s -f '${mark.reads.metadata.bam_index}' '${d}_${i}.bam.bai' &&
15 #end for
16
17 Rscript '${__tool_directory__}/epicseg.R' getcounts
18 --binsize $binsize --nthreads \${GALAXY_SLOTS:-2}
19 --regions '$regions' --target '${d}.tab'
20
21 #for $i, $mark in enumerate( $dataset.marks):
22 --mark '${mark.label}:${d}_${i}.bam' --mapq ${mark.mapq}
23 ${mark.pairedend} --shift ${mark.shift}
24 #end for
25
26 &&
27 #end for
28
29 ## Normalize the datasets
30 #if len( $datasets ) == 1:
31 ln -s 0.tab 0_norm.tab
32 #else:
33 Rscript '${__tool_directory__}/epicseg.R' normalizecounts
34 --nthreads \${GALAXY_SLOTS:-2}
35
36 #for $d, $dataset in enumerate( $datasets)
37 --counts '${d}.tab'
38 #end for
39
40 #end if
41
42 &&
43
44 ## Segment
45 Rscript '${__tool_directory__}/epicseg.R' segment --regions '$regions'
46 --nstates $nstates --nthreads \${GALAXY_SLOTS:-2}
47 --outdir '${report.files_path}'
48 #for $d, $dataset in enumerate( $datasets ):
49 --counts '${dataset.name}:${d}_norm.tab'
50 #end for
51
52 --maxiter $maxiter
53
54 #for $annot in $annots:
55 --annot '${annot.name}:${annot.file}'
56 #end for#
57 &&
58 cp ${report.files_path}/report.html . &&
59 cp ${report.files_path}/segmentation*.bed .
60 ]]></command>
61 <inputs>
62 <param type="data" name="regions" format="bed" label="Regions in BED format"
63 help="BED file with the genomic regions of interest.
64 These regions will be automatically partitioned into
65 smaller, consecutive bins. Only the first three fields
66 in the file matter. If the region lengths are not
67 multiples of the given binsize a new bed file will be
68 produced where each coordinate is a multiple of binsize."/>
69 <param type="integer" name="binsize" min="0" value="200"
70 help="Size of a bin in base pairs. Each given region will
71 be partitioned into bins of this size."/>
72 <repeat name="datasets" title="Datasets"
73 help="Chromatin segmentation may be performed across one or more
74 datasets (e.g. cell-types or conditions) each
75 of which consisting
76 of a set of chromatin marks (e.g. H3K4me3).
77 If multiple datasets are used,
78 they must share the same set of chromatin marks.">
79 <param type="text" name="name" label="Dataset name"
80 value="Treatment" />
81 <repeat name="marks" title="Chromatin mark">
82 <param type="text" name="label" label="Mark name"
83 value="H3K4me3" />
84 <param type="data" name="reads" label="Reads in BAM format"
85 format="bam"
86 help="BAM file containing the read alignments for
87 the corresponding chromatin mark.
88 If the same mark name is used multiple times,
89 the associated reads will be treated as replicates
90 and collapsed into one experiment."/>
91 <param type="integer" name="mapq" min="0" value="0"
92 help="Minimum mapping quality for the reads (see the
93 bam format specification for the mapq field).
94 Only reads with the mapq field above or equal
95 to the specified value will be considered."/>
96 <param type="boolean" name="pairedend"
97 truevalue="--pairedend TRUE" falsevalue="--pairedend FALSE"
98 help="Set this option to TRUE or FALSE to activate or
99 deactivate the paired-end mode. Only read pairs
100 where both ends are mapped will be considered and
101 assigned to the bin where the midpoint of the
102 read pair is located. If this flag is set, the
103 `shift` option will be ignored."/>
104 <param type="integer" name="shift" value="75"
105 help="Shift the reads in the 5' direction by a fixed
106 number of base pairs. The read will be assigned
107 to the bin where the shifted 5' end of the read
108 is located. This option will be ignored in
109 paired-end mode."/>
110 </repeat>
111 </repeat>
112
113
114 <param type="integer" name="nstates" label="Number of states"
115 min="0" value="5"
116 help="Number of chromatin states."/>
117 <param type="integer" name="maxiter" value="200"
118 help="Maximum number of iterations during training."/>
119
120 <repeat name="annots" title="Annotation"
121 help="(Optional) Annotation tracks might be overlayed
122 with the segmentation results.">
123 <param type="text" name="name" label="Annotation name"
124 value="genes" />
125 <param type="data" name="file" label="Annotation"
126 format="bed"
127 help="BED-file containing the annotation. For example,
128 gene annotation or CpG-islands." />
129 </repeat>
130 </inputs>
131 <outputs>
132 <data name="report" format="html" from_work_dir='report.html' >
133 <discover_datasets pattern="segmentation" format="bed"
134 visible="true" />
135 </data>
136 </outputs>
137 <tests>
138 <test>
139 <!-- 1 Dataset w/o annotation -->
140 <param name="regions" value="chr1.bed"/>
141 <repeat name="datasets">
142 <param name="name" value="DS1" />
143 <repeat name="marks">
144 <param name="label" value="H3K4me3" />
145 <param name="reads" value="chr1_h1hesc_h3k4me3.bam" />
146 <param name="mapq" value="0"/>
147 <param name="pairedend" value="--pairedend FALSE"/>
148 <param name="shift" value="75"/>
149 </repeat>
150 <repeat name="marks">
151 <param name="label" value="H3K4me1" />
152 <param name="reads" value="chr1_h1hesc_h3k4me1.bam" />
153 <param name="mapq" value="0"/>
154 <param name="pairedend" value="--pairedend FALSE"/>
155 <param name="shift" value="75"/>
156 </repeat>
157 <repeat name="marks">
158 <param name="label" value="H3K4me1" />
159 <param name="reads" value="chr1_h1hesc_h3k4me1_rep2.bam" />
160 <param name="mapq" value="0"/>
161 <param name="pairedend" value="--pairedend FALSE"/>
162 <param name="shift" value="75"/>
163 </repeat>
164 <repeat name="marks">
165 <param name="label" value="H4K27me3" />
166 <param name="reads" value="chr1_h1hesc_h3k27me3.bam" />
167 <param name="mapq" value="0"/>
168 <param name="pairedend" value="--pairedend FALSE"/>
169 <param name="shift" value="75"/>
170 </repeat>
171 </repeat>
172 <param name="binsize" value="200" />
173 <param name="nstates" value="5" />
174 <output name="report" file="report_1ds.html"/>
175 </test>
176 <test>
177 <!-- 1 Dataset with annotation -->
178 <param name="regions" value="chr1.bed"/>
179 <repeat name="datasets">
180 <param name="name" value="DS1" />
181 <repeat name="marks">
182 <param name="label" value="H3K4me3" />
183 <param name="reads" value="chr1_h1hesc_h3k4me3.bam" />
184 <param name="mapq" value="0"/>
185 <param name="pairedend" value="--pairedend FALSE"/>
186 <param name="shift" value="75"/>
187 </repeat>
188 <repeat name="marks">
189 <param name="label" value="H3K4me1" />
190 <param name="reads" value="chr1_h1hesc_h3k4me1.bam" />
191 <param name="mapq" value="0"/>
192 <param name="pairedend" value="--pairedend FALSE"/>
193 <param name="shift" value="75"/>
194 </repeat>
195 <repeat name="marks">
196 <param name="label" value="H3K4me1" />
197 <param name="reads" value="chr1_h1hesc_h3k4me1_rep2.bam" />
198 <param name="mapq" value="0"/>
199 <param name="pairedend" value="--pairedend FALSE"/>
200 <param name="shift" value="75"/>
201 </repeat>
202 <repeat name="marks">
203 <param name="label" value="H4K27me3" />
204 <param name="reads" value="chr1_h1hesc_h3k27me3.bam" />
205 <param name="mapq" value="0"/>
206 <param name="pairedend" value="--pairedend FALSE"/>
207 <param name="shift" value="75"/>
208 </repeat>
209 </repeat>
210 <param name="binsize" value="200" />
211 <param name="nstates" value="5" />
212 <repeat name="annots">
213 <param name="name" value="cpg" />
214 <param name="file" value="cpgIslandExt.hg19.bed" />
215 </repeat>
216 <output name="report" file="report_1ds_w_annot.html"/>
217 </test>
218
219 <test>
220 <!-- 2 Datasets w/o annotation -->
221 <param name="regions" value="chr1.bed"/>
222 <repeat name="datasets">
223 <param name="name" value="DS1" />
224 <repeat name="marks">
225 <param name="label" value="H3K4me3" />
226 <param name="reads" value="chr1_h1hesc_h3k4me3.bam" />
227 <param name="mapq" value="0"/>
228 <param name="pairedend" value="--pairedend FALSE"/>
229 <param name="shift" value="75"/>
230 </repeat>
231 <repeat name="marks">
232 <param name="label" value="H3K4me1" />
233 <param name="reads" value="chr1_h1hesc_h3k4me1.bam" />
234 <param name="mapq" value="0"/>
235 <param name="pairedend" value="--pairedend FALSE"/>
236 <param name="shift" value="75"/>
237 </repeat>
238 <repeat name="marks">
239 <param name="label" value="H4K27me3" />
240 <param name="reads" value="chr1_h1hesc_h3k27me3.bam" />
241 <param name="mapq" value="0"/>
242 <param name="pairedend" value="--pairedend FALSE"/>
243 <param name="shift" value="75"/>
244 </repeat>
245 </repeat>
246 <repeat name="datasets">
247 <param name="name" value="DS2" />
248 <repeat name="marks">
249 <param name="label" value="H3K4me3" />
250 <param name="reads" value="chr1_h1hesc_h3k4me3.bam" />
251 <param name="mapq" value="0"/>
252 <param name="pairedend" value="--pairedend FALSE"/>
253 <param name="shift" value="75"/>
254 </repeat>
255 <repeat name="marks">
256 <param name="label" value="H3K4me1" />
257 <param name="reads" value="chr1_h1hesc_h3k4me1_rep2.bam" />
258 <param name="mapq" value="0"/>
259 <param name="pairedend" value="--pairedend FALSE"/>
260 <param name="shift" value="75"/>
261 </repeat>
262 <repeat name="marks">
263 <param name="label" value="H4K27me3" />
264 <param name="reads" value="chr1_h1hesc_h3k27me3.bam" />
265 <param name="mapq" value="0"/>
266 <param name="pairedend" value="--pairedend FALSE"/>
267 <param name="shift" value="75"/>
268 </repeat>
269 </repeat>
270 <param name="binsize" value="200" />
271 <param name="nstates" value="5" />
272 <output name="report" file="report_2ds.html"/>
273 </test>
274
275 <test>
276 <!-- 2 Datasets with annotation -->
277 <param name="regions" value="chr1.bed"/>
278 <repeat name="datasets">
279 <param name="name" value="DS1" />
280 <repeat name="marks">
281 <param name="label" value="H3K4me3" />
282 <param name="reads" value="chr1_h1hesc_h3k4me3.bam" />
283 <param name="mapq" value="0"/>
284 <param name="pairedend" value="--pairedend FALSE"/>
285 <param name="shift" value="75"/>
286 </repeat>
287 <repeat name="marks">
288 <param name="label" value="H3K4me1" />
289 <param name="reads" value="chr1_h1hesc_h3k4me1.bam" />
290 <param name="mapq" value="0"/>
291 <param name="pairedend" value="--pairedend FALSE"/>
292 <param name="shift" value="75"/>
293 </repeat>
294 <repeat name="marks">
295 <param name="label" value="H4K27me3" />
296 <param name="reads" value="chr1_h1hesc_h3k27me3.bam" />
297 <param name="mapq" value="0"/>
298 <param name="pairedend" value="--pairedend FALSE"/>
299 <param name="shift" value="75"/>
300 </repeat>
301 </repeat>
302 <repeat name="datasets">
303 <param name="name" value="DS2" />
304 <repeat name="marks">
305 <param name="label" value="H3K4me3" />
306 <param name="reads" value="chr1_h1hesc_h3k4me3.bam" />
307 <param name="mapq" value="0"/>
308 <param name="pairedend" value="--pairedend FALSE"/>
309 <param name="shift" value="75"/>
310 </repeat>
311 <repeat name="marks">
312 <param name="label" value="H3K4me1" />
313 <param name="reads" value="chr1_h1hesc_h3k4me1_rep2.bam" />
314 <param name="mapq" value="0"/>
315 <param name="pairedend" value="--pairedend FALSE"/>
316 <param name="shift" value="75"/>
317 </repeat>
318 <repeat name="marks">
319 <param name="label" value="H4K27me3" />
320 <param name="reads" value="chr1_h1hesc_h3k27me3.bam" />
321 <param name="mapq" value="0"/>
322 <param name="pairedend" value="--pairedend FALSE"/>
323 <param name="shift" value="75"/>
324 </repeat>
325 </repeat>
326 <param name="binsize" value="200" />
327 <param name="nstates" value="5" />
328 <repeat name="annots">
329 <param name="name" value="cpg" />
330 <param name="file" value="cpgIslandExt.hg19.bed" />
331 </repeat>
332 <output name="report" file="report_2ds_w_annot.html"/>
333 </test>
334 </tests>
335 <help><![CDATA[
336 .. class:: infomark
337
338 **What it does**
339
340 **EpiCSeg - Chromatin segmentation** is a tool for performing chromatin segmentation.
341 It takes as input
342
343 1. one or more datasets (e.g. cell-types or conditions)
344 which consist of the next-generation sequencing alignments
345 (in bam format) for a common set of chromatin marks (e.g. H3K27me3, H3K4me3, etc.)
346 2. a bed file containing the regions of interest
347 3. (optional) a set of annotation files (in bed format)
348 against which the segmentation results are compared.
349 For example, CpG island annotation.
350
351 It produces
352
353 1. an html report that summarizes the chromatin segmentation results
354 2. a bed file per dataset that contains the chromatin segments.
355
356 ]]></help>
357 <expand macro="citations" />
358 </tool>