view SMART/galaxy/clusterizeBySlidingWindows.xml @ 38:2c0c0a89fad7

Uploaded
author m-zytnicki
date Thu, 02 May 2013 09:56:47 -0400
parents
children 5f5c9b74c2dd
line wrap: on
line source

<tool id="clusterizeBySlidingWindows" name="clusterize by sliding windows">
	<description>Produces a GFF3 file that clusters a list of transcripts using a sliding window. Cluster the data into regions (defined by size and overlap with next region).</description>
	<requirements>
		<requirement type="set_environment">PYTHONPATH</requirement>
	</requirements>
	<command interpreter="python">
		../Java/Python/clusterizeBySlidingWindows.py -i $formatType.inputFileName
		#if $formatType.FormatInputFileName == 'bed':
			-f bed
		#elif $formatType.FormatInputFileName == 'gff':
			-f gff
		#elif $formatType.FormatInputFileName == 'gff2':
			-f gff2
		#elif $formatType.FormatInputFileName == 'gff3':
			-f gff3
		#elif $formatType.FormatInputFileName == 'sam':
			-f sam
		#elif $formatType.FormatInputFileName == 'gtf':
			-f gtf
		#end if
		-s $size
		-e $overlap
		-o $outputFileGff 
		$normalize
		$strands
		
		#if $OptionTag.tag == "Yes":
			-g $OptionTag.value
		#end if	

		#if $OptionsOperation.operation == "Yes":
			-r $OptionsOperation.value
		#end if
		
		#if $OptionWriteTag.writeTag == "Yes":
			-w $OptionWriteTag.value
		#end if	
		
		$strand
		$plot $plotPng
		$excel $excelOutput
		
		
	</command>

	<inputs>
		<conditional name="formatType">
			<param name="FormatInputFileName" type="select" label="Input File Format">
				<option value="bed">bed</option>
				<option value="gff">gff</option>
				<option value="gff2">gff2</option>
				<option value="gff3">gff3</option>
				<option value="sam">sam</option>
				<option value="gtf">gtf</option>
			</param>
			<when value="bed">
				<param name="inputFileName" format="bed" type="data" label="Input File"/>
			</when>
			<when value="gff">
				<param name="inputFileName" format="gff" type="data" label="Input File"/>
			</when>
			<when value="gff2">
				<param name="inputFileName" format="gff2" type="data" label="Input File"/>
			</when>
			<when value="gff3">
				<param name="inputFileName" format="gff3" type="data" label="Input File"/>
			</when>
			<when value="sam">
				<param name="inputFileName" format="sam" type="data" label="Input File"/>
			</when>
			<when value="gtf">
				<param name="inputFileName" format="gtf" type="data" label="Input File"/>
			</when>
		</conditional>


		<param name="size" type="text" value="50000" label="Size option" help="Size of the regions."/>
		<param name="overlap" type="text" value="50" label="Overlap option" help="Overlap between two consecutive regions."/>	
		<param name="normalize" type="boolean" truevalue="-m" falsevalue="" checked="false" label="Normalize option for only GFF3 file format" help="(only work if the tag nbOccurrences is set)"/>
		<param name="strands" type="boolean" truevalue="-2" falsevalue="" checked="false" label="Consider the two strands separately"/>

		<conditional name="OptionTag">
			<param name="tag" type="select" label="Use a given tag as input (instead of summing number of features)">
				<option value="Yes">Yes</option>
				<option value="No" selected="true">No</option>
			</param>
			<when value="Yes">
				<param name="value" type="select" label="tag name"/>
			</when>
			<when value="No">
			</when>
		</conditional>


		<conditional name="OptionsOperation">
			<param name="operation" type="select" label="combine tag value with given operation">
				<option value="Yes">Yes</option>
				<option value="No" selected="true">No</option>
			</param>
			<when value="Yes">
				<param name="value" type="select" label="operation" help="You can ONLY choose one of following operation : sum, avg, med, min, max.">
					<option value="sum">sum</option>
					<option value="avg">average</option>
					<option value="med">median</option>
					<option value="min">minimum</option>
					<option value="max">maximum</option>
				</param>
			</when>
			<when value="No">
			</when>
		</conditional>

		
		<conditional name="OptionWriteTag">
			<param name="writeTag" type="select" label="write a new tag in output file">
				<option value="Yes">Yes</option>
				<option value="No" selected="true">No</option>
			</param>
			<when value="Yes">
				<param name="value" type="text" value="nbElements" label="write tag option" help="print the result in the given tag (default usually is 'nbElements')"/>
			</when>
			<when value="No">
			</when>
		</conditional>

	</inputs>

	<outputs>
		<data name="outputFileGff" format="gff3"/>
	</outputs> 

	<help>
Sliding windows are a convenient ways to clusterize data mapped on the genome. There are two important parameters of a sliding window: the size of the window and the size of the overlap.

By default, sliding windows count the number of reads in each window. However, you can basically merge any information which is contained in the tags. You can compute the average, sum, median, max or min of the tags for each window. For instance, every window can contain the average cluster size, if you merge clusters instead of reads.

The output file is a GFF3 file, where each element is a window. There is a special tag for each window, whose name is **nbElements** if you counted the number of transcripts per sliding window. However, if you performed a **min** (resp. **max**, **sum**, **median**, **average**) operation on the tags **value** of the transcripts, then the tag of the window will be **minValue** (resp. **maxValue**, **sumValue**, **medValue**, **avgValue**). You can also specify the name of your tag (which is actually advised: **nbReadsInSample1** will always be more informative than **nbElements**).

You also have different option, which can select the *n* % highest regions, or the regions with at least *n* features in it, or even the regions with at least *n* unique features. This last option is useful when you want to cluster the reads which have mapped only once, for instance.
	</help>
</tool>