annotate featurecounts_valid_gff.xml @ 59:3521ce097016 draft default tip

Uploaded
author yhoogstrate
date Wed, 27 Jan 2016 09:55:09 -0500
parents 6637aba9c1d4
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
30
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
1 <?xml version="1.0" encoding="UTF-8"?>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
2 <tool id="featurecounts_valid_gff" name="featureCounts-valid-gff">
59
3521ce097016 Uploaded
yhoogstrate
parents: 58
diff changeset
3 <description>Measure gene expression in RNA-Seq experiments from SAM or BAM files - test.</description>
30
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
4 <requirements>
58
yhoogstrate <y.hoogstrate@erasmusmc.nl>
parents: 42
diff changeset
5 <requirement type="package" version="0.1.19">samtools</requirement>
30
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
6 <requirement type="package" version="1.4.0.1">featurecounts_valid_gff</requirement>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
7 </requirements>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
8 <command>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
9 <!--
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
10 The following script is written in the "Cheetah" language:
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
11 http://www.cheetahtemplate.org/docs/users_guide_html_multipage/contents.html
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
12 -->
32
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
13
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
14 <!-- Check 01: do the alignments have a dbkey and is the option set to using it? -->
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
15 #if $reference_gene_sets_source.source_select == "attribute" and len({ alignment.metadata.dbkey:True for alignment in $alignments }.keys()) != 1
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
16 echo "Invalid number of dbkeys are found: ${ len({ alignment.metadata.dbkey:True for alignment in $alignments }.keys()) }, while only one should be used. Make sure that the alignments are done on the same reference genome and that 'tool-data/gene_sets.loc' is configured properly!" >&amp;2
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
17 #else
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
18 <!-- Check 02: are all alignments from the same type (bam || sam) -->
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
19 #if len({ alignment.extension:True for alignment in $alignments }.keys()) != 1
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
20 echo "Either all files must be SAM or all files must be BAM, no mixture is allowed." >&amp;2
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
21 #else
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
22 featureCounts
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
23 -a
34
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
24 #if $reference_gene_sets_source.source_select == "indexed_filtered"
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
25 "$reference_gene_sets_source.reference_gene_sets"
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
26 #else if $reference_gene_sets_source.source_select == "indexed_all"
32
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
27 "$reference_gene_sets_source.reference_gene_sets"
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
28 #else if $reference_gene_sets_source.source_select == "history"
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
29 "$reference_gene_sets_source.reference_gene_sets"
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
30 #else
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
31 <!--
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
32 This is a workaround to obtain the "genome.fa" file that
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
33 corresponds to the dbkey of the alignments.
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
34 Because this file is "calculated" during run-time, it can
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
35 be used in a workflow.
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
36 -->
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
37 "${ filter( lambda x: str( x[0] ) == str( { alignment.metadata.dbkey:True for alignment in $alignments }.keys()[0] ), $__app__.tool_data_tables[ 'gene_sets' ].get_fields() )[0][2] }"
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
38 #end if
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
39
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
40 -o "$output"
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
41
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
42 #if { alignment.extension:True for alignment in $alignments }.keys()[0] == "bam"
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
43 -b
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
44 #end if
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
45
35
5669aa6422ef Uploaded
yhoogstrate
parents: 34
diff changeset
46 -T $threads
34
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
47
32
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
48 #if $extended_parameters.parameters == "extended"
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
49 -t $extended_parameters.gff_feature_type
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
50 -g $extended_parameters.gff_feature_attribute
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
51 $extended_parameters.summarization_level
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
52 $extended_parameters.contribute_to_multiple_features
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
53 $extended_parameters.protocol
42
70292f11ba10 Uploaded
yhoogstrate
parents: 41
diff changeset
54 $extended_parameters.multimapping_counts
32
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
55 -Q $extended_parameters.mapping_quality
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
56 $extended_parameters.fragment_counting
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
57 $extended_parameters.check_distance
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
58 -d $extended_parameters.minimum_fragment_length
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
59 -D $extended_parameters.maximum_fragment_length
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
60 $extended_parameters.only_both_ends
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
61 $extended_parameters.exclude_chimerics
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
62 $extended_parameters.namesort
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
63 #end if
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
64
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
65 #for $alignment in $alignments
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
66 ${alignment}
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
67 #end for
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
68
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
69 2>&amp;1
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
70
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
71 #if $format == "tabdel_default" or $format.value == "tabdel_default"
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
72 ; cp $output tmp.txt
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
73 ; egrep -v "^#" tmp.txt > tmp2.txt
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
74 ; cut -f 1,7 tmp2.txt > tmp_left.txt
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
75 ; cut -f 6 tmp2.txt > tmp_right.txt
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
76 ; paste tmp_left.txt tmp_right.txt > $output
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
77 #elif $format == "tabdel_short" or $format.value == "tabdel_short"
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
78 ; cp $output tmp.txt
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
79 ; egrep -v "^#" tmp.txt | cut -f 1,7 > $output
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
80 #end if
41
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
81
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
82 ## For every alignment, replace its filename for: "hid: sample name"
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
83 #for $alignment in $alignments
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
84 #set $alignment_escaped = str($alignment).replace('/', '\/').replace('.', '\.')
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
85 #set $alignment_name_escaped = str(alignment.hid)+": "+str($alignment.name).replace('\t',' ').replace('\\','\\\\').replace("'","\\'").replace('/','\/')
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
86
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
87 #if $format == "tabdel_default" or $format.value == "tabdel_default" or $format == "tabdel_short" or $format.value == "tabdel_short"
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
88 ; sed -e '1 s/$alignment_escaped/${alignment_name_escaped}/g' $output > tmp.txt
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
89 #else
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
90 ; sed -e '1,2 s/$alignment_escaped/${alignment_name_escaped}/g' $output > tmp.txt
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
91 #end if
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
92
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
93 ; mv tmp.txt $output
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
94 #end for
30
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
95 #end if
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
96 #end if
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
97 </command>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
98
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
99 <inputs>
32
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
100 <param name="alignments" type="data" format="bam,sam" label="Alignment file" help="The input alignment file(s) where the gene expression has to be counted. The file can have a SAM or BAM format; but ALL files in the series must be in THE SAME format." multiple="true" />
30
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
101
32
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
102 <!-- Find out how to access the the GTF/GFF file(s) -->
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
103 <conditional name="reference_gene_sets_source">
34
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
104 <param name="source_select" type="select" label="GFF/GTF Source">
37
bdd5f2ecd087 Uploaded
yhoogstrate
parents: 36
diff changeset
105 <option value="indexed_filtered">Use a built-in index (which fits your reference)</option>
32
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
106 <option value="history">Use reference from the history</option>
37
bdd5f2ecd087 Uploaded
yhoogstrate
parents: 36
diff changeset
107 <option value="indexed_all">Use a built-in index (entire list) - avoid this option if possible; only useful if you design a workflow</option>
bdd5f2ecd087 Uploaded
yhoogstrate
parents: 36
diff changeset
108 <option value="attribute">Use a built-in index based on the 'metadata.dbkey' attribute; ideal in workflows</option>
32
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
109 </param>
34
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
110 <when value="indexed_filtered">
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
111 <param name="reference_gene_sets" type="select" label="Reference Gene Sets used during alignment (GFF/GTF)" >
40
4850787ee1d9 Uploaded
yhoogstrate
parents: 37
diff changeset
112 <options from_data_table="gene_sets"><!-- replaces 'from_file="gene_sets"' - more strict -->
32
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
113 <column name="name" index="0"/>
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
114 <column name="dbkey" index="1"/>
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
115 <column name="value" index="2"/>
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
116 <filter type="data_meta" ref="alignments" multiple="false" key="dbkey" column="1" />
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
117 <validator type="no_options" message="No indexes are available for the selected input dataset" />
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
118 </options>
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
119 </param>
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
120 </when>
41
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
121 <when value="history">
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
122 <param name="reference_gene_sets" format="gff" type="data" label="Gene annotation file" help="The program assumes that the provided annotation file is in GTF format. Make sure that the gene annotaiton file corresponds to the same reference genome as used for the alignment." />
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
123 </when>
34
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
124 <when value="indexed_all">
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
125 <param name="reference_gene_sets" type="select" label="Reference Gene Sets used during alignment (GFF/GTF)" >
40
4850787ee1d9 Uploaded
yhoogstrate
parents: 37
diff changeset
126 <options from_data_table="gene_sets"><!-- replaces 'from_file="gene_sets"' - more strict -->
34
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
127 <column name="name" index="0"/>
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
128 <column name="dbkey" index="1"/>
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
129 <column name="value" index="2"/>
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
130 <validator type="no_options" message="No indexes are available for the selected input dataset" />
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
131 </options>
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
132 </param>
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
133 </when>
32
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
134 <when value="attribute">
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
135 <!-- Do nothing, determine GTF/GFF file at runtime -->
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
136 </when>
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
137 </conditional>
30
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
138
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
139 <param name="format" type="select" label="Output format">
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
140 <option value="complex">featureCounts 1.4.0+ default (extensive; complex)</option>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
141 <option value="tabdel_default" selected="true">Gene-name "\t" gene-count "\t" gene-length (tab-delimited)</option>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
142 <option value="tabdel_short">Gene-name "\t" gene-count (tab-delimited)</option>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
143 </param>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
144
36
26f6dcdf970f Uploaded
yhoogstrate
parents: 35
diff changeset
145 <param name="threads" type="integer" value="2" min="1" label="Number of the CPU threads. Higher numbers only make sense with a higher number of samples." />
34
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
146
30
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
147 <conditional name="extended_parameters">
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
148 <param name="parameters" type="select" label="featureCounts parameters" help="For more advanced featureCounts settings.">
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
149 <option value="default">Default settings</option>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
150 <option value="extended">Extended settings</option>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
151 </param>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
152 <when value="default">
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
153 </when>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
154 <when value="extended">
34
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
155 <param name="gff_feature_type" type="text" value="exon" label="GFF feature type filter" help="Specify the feature type. Only rows which have the matched matched feature type in the provided GTF annotation file will be included for read counting. `exon' by default." />
30
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
156
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
157 <param name="gff_feature_attribute" type="text" value="gene_id" label="GFF gene identifier" help="Specify the attribute type used to group features (eg. exons) into meta-features (eg. genes), when GTF annotation is provided. `gene_id' by default. This attribute type is usually the gene identifier. This argument is useful for the meta-feature level summarization." />
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
158
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
159 <param name ="summarization_level" type="boolean" truevalue=" -f" falsevalue="" label="On feature level" help="If specified, read summarization will be performed at the feature level. By default (-f is not specified), the read summarization is performed at the meta-feature level." />
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
160
34
21be93127c42 Uploaded
yhoogstrate
parents: 32
diff changeset
161 <param name ="contribute_to_multiple_features" type="boolean" truevalue=" -O" falsevalue="" label="Allow read to contribute to multiple features" help="If specified, reads (or fragments if -p is specified) will be allowed to be assigned to more than one matched meta- feature (or matched feature if -f is specified)" />
30
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
162
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
163 <param name="protocol" type="select" label="Strand specific protocol" help="Indicate if strand-specific read counting should be performed. It has three possible values: 0 (unstranded), 1 (stranded) and 2 (reversely stranded). 0 by default.">
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
164 <option value=" -s 0" selected="true">Unstranded</option>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
165 <option value=" -s 1">Stranded (forwards)</option>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
166 <option value=" -s 2">Stranded (reverse)</option>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
167 </param>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
168
42
70292f11ba10 Uploaded
yhoogstrate
parents: 41
diff changeset
169 <param name="multimapping_counts" type="boolean" truevalue=" -M" falsevalue="" label="Count multi-mapping reads/fragments" help="If specified, multi-mapping reads/fragments will be counted (ie. a multi-mapping read will be counted up to N times if it has N reported mapping locations). The program uses the `NH' tag to find multi-mapping reads." />
30
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
170
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
171 <param name="mapping_quality" type="integer" value="0" label="Minimum read quality" help="The minimum mapping quality score a read must satisfy in order to be counted. For paired-end reads, at least one end should satisfy this criteria. 0 by default." />
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
172
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
173 <param name="fragment_counting" type="boolean" truevalue=" -p" falsevalue="" label="PE: Count fragments instead of reads" help="Paired-end specific: If specified, fragments (or templates) will be counted instead of reads. The two reads from the same fragment must be adjacent to each other in the provided SAM/BAM file. If SAM/BAM input does not meet this requirement, the -S (sorting) option should be provided as well." />
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
174
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
175 <param name="check_distance" type="boolean" truevalue=" -P" falsevalue="" label="PE: Check paired-end distance" help="Paired-end specific: If specified, paired-end distance will be checked when assigning fragments to meta-features or features. This option is only applicable when -p (Count fragments instead of reads) is specified. The distance thresholds should be specified using -d and -D (minimum and maximum fragment/template length) options." />
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
176
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
177 <param name="minimum_fragment_length" type="integer" value="50" label="PE: Minimum fragment/template length." />
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
178 <param name="maximum_fragment_length" type="integer" value="600" label="PE: Maximum fragment/template length." />
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
179
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
180 <param name="only_both_ends" type="boolean" truevalue=" -B" falsevalue="" label="PE: only allow fragments with both reads aligned" help="Paired-end specific: If specified, only fragments that have both ends successfully aligned will be considered for summarization. This option is only applicable for paired-end reads." />
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
181
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
182 <param name="exclude_chimerics" type="boolean" truevalue=" -C" falsevalue="" label="PE: Exclude chimeric fragments" help="Paired-end specific: If specified, the chimeric fragments (those fragments that have their two ends aligned to different chromosomes) will NOT be included for summarization. This option is only applicable for paired-end read data." />
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
183
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
184 <param name="namesort" type="boolean" truevalue=" -S" falsevalue="" label="PE: Name-sort reads (slow!)" help="Paired-end specific: If specified, the program will reorder input reads according to their names and make reads from the same pair be adjacent to each other. This option should be provided when reads from the same pair are not adjacent to each other in input SAM/BAM files (for instance sorting reads by chromosomal locations could decouple reads from the same pair)." />
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
185 </when>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
186 </conditional>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
187 </inputs>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
188
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
189 <outputs>
32
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
190 <data format="tabular" name="output" label="${tool.name} on ${', '.join([ str(a.hid)+': '+a.name for a in $alignments ])}" />
30
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
191 </outputs>
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
192
689c7888b39b Uploaded
yhoogstrate
parents:
diff changeset
193 <help>
31
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
194 featureCounts-valid-gff::
32
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
195 **Overview**
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
196
31
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
197 FeatureCounts is a light-weight read counting program written entirely in the C programming language. It can be used to count both gDNA-seq and RNA-seq reads for genomic features in in SAM/BAM files.
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
198 It has a variety of advanced parameters but its major strength is its outstanding performance: analysis of a 10GB BAM file takes about 7 minutes on a single average CPU (Homo Sapiens genome)!
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
199 Liao Y, Smyth GK and Shi W. featureCounts: an efficient general-purpose program for assigning sequence reads to genomic features. Bioinformatics, Advance Access, accepted on Nov 7, 2013
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
200
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
201 featureCounts is part of a bigger analysis suite called subread:
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
202 http://subread.sourceforge.net/
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
203 Liao Y, Smyth GK and Shi W. The Subread aligner: fast, accurate and scalable read mapping by seed-and-vote. Nucleic Acids Research, 41(10):e108, 2013
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
204
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
205 The tool requires a GFF/GTF file for getting the genomic coordinates of the genes that should be measured.
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
206 This file format is known to have at least the following common variants:
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
207 * http://genome.ucsc.edu/FAQ/FAQformat.html#format3
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
208 * http://www.ensembl.org/info/website/upload/gff.html
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
209
41
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
210 FeatureCounts is only able to handle the UCSC GFF/GTF variant. Therefore the project was forked to "featureCounts-valid-gff", able to handle both.
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
211 Whis wrapper wraps the fork, such that it is independent of the GFF/GTF variant. The URL of the fork is:
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
212 https://code.google.com/p/featurecounts-valid-gff/
31
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
213
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
214 **Input formats**
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
215
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
216 Alignments should be provided in either:
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
217 * SAM format - hhttp://samtools.sourceforge.net/samtools.shtml#5
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
218 * BAM format
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
219
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
220 Gene regions should be provided in the GFF/GTF format:
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
221 * http://genome.ucsc.edu/FAQ/FAQformat.html#format3
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
222 * http://www.ensembl.org/info/website/upload/gff.html
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
223
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
224 **Installation**
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
225
36
26f6dcdf970f Uploaded
yhoogstrate
parents: 35
diff changeset
226 1) Make sure you have proper GFF/GTF files (corresponding to your reference genome used for the aligment) uploaded to your history.
31
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
227 The source of this file should not be important since this fork can handle both ENSEMBL and UCSC variants of the GTF/GFF format.
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
228
36
26f6dcdf970f Uploaded
yhoogstrate
parents: 35
diff changeset
229 2) Make sure that your gene_sets.loc is configured properly as data table. This is generally done by copying the right information into: tool_data_table_conf.xml.
26f6dcdf970f Uploaded
yhoogstrate
parents: 35
diff changeset
230 https://wiki.galaxyproject.org/Admin/Tools/Data%20Tables
26f6dcdf970f Uploaded
yhoogstrate
parents: 35
diff changeset
231
32
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
232 **Examples**
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
233
31
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
234 **License**
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
235
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
236 * featureCounts / subread: GNU General Public License version 3.0 (GPLv3)
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
237 * featureCounts-valid-gff: GNU General Public License version 3.0 (GPLv3)
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
238
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
239 **Contact**
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
240
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
241 The tool wrapper has been written by Youri Hoogstrate from the Erasmus Medical Center (Rotterdam, Netherlands) on behalf of the Translational Research IT (TraIT) project:
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
242 http://www.ctmm.nl/en/programmas/infrastructuren/traitprojecttranslationeleresearch
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
243
41
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
244 I want to thank the Marius van den Beek for his contribution as well.
c55c0c51b634 Uploaded
yhoogstrate
parents: 40
diff changeset
245
31
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
246 More tools by the Translational Research IT (TraIT) project can be found in the following repository:
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
247 http://toolshed.nbic.nl/
32
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
248
31
503e4165b1fc Uploaded
yhoogstrate
parents: 30
diff changeset
249 </help>
32
a6665369ff4f Uploaded
yhoogstrate
parents: 31
diff changeset
250 </tool>