annotate featurecounts.xml @ 8:1a288d568ac1 draft

Uploaded
author yhoogstrate
date Thu, 19 Mar 2015 08:08:16 -0400
parents 2312bedfe2a3
children c74b27b17d73
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
1 <?xml version="1.0" encoding="UTF-8"?>
8
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
2 <tool id="featurecounts" name="featureCounts" version="1.4.6.p1">
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
3 <description>Measure gene expression in RNA-Seq experiments from SAM or BAM files.</description>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
4 <requirements>
8
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
5 <requirement type="package" version="1.4.6.p1">featurecounts</requirement>
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
6 <requirement type="package" version="1.0.0">featurecounts2bed</requirement>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
7 </requirements>
6
fae19d64e9de Uploaded
yhoogstrate
parents: 5
diff changeset
8 <version_command>featureCounts -v</version_command>
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
9 <command>
8
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
10 #*
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
11 The following script is written in the "Cheetah" language:
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
12 http://www.cheetahtemplate.org/docs/users_guide_html_multipage/contents.html
8
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
13 *#
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
14
8
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
15 ## Check 01: do the alignments have a dbkey and is the option set to using it?
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
16 #if $reference_gene_sets_source.source_select == "attribute" and len({ alignment.metadata.dbkey:True for alignment in $alignments }.keys()) != 1
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
17 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
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
18 #else
8
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
19 ## Check 02: are all alignments from the same type (bam || sam)
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
20 #if len({ alignment.extension:True for alignment in $alignments }.keys()) != 1
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
21 echo "Either all files must be SAM or all files must be BAM, no mixture is allowed." >&amp;2
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
22 #else
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
23 featureCounts
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
24 -a
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
25 #if $reference_gene_sets_source.source_select == "indexed_filtered"
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
26 "$reference_gene_sets_source.reference_gene_sets"
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
27 #else if $reference_gene_sets_source.source_select == "indexed_all"
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
28 "$reference_gene_sets_source.reference_gene_sets"
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
29 #else if $reference_gene_sets_source.source_select == "history"
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
30 "$reference_gene_sets_source.reference_gene_sets"
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
31 #else
8
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
32 #*
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
33 This is a workaround to obtain the "genome.fa" file that
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
34 corresponds to the dbkey of the alignments.
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
35 Because this file is "calculated" during run-time, it can
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
36 be used in a workflow.
8
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
37 *#
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
38 "${ 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] }"
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
39 #end if
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
40
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
41 -o "$output"
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
42 -T $threads
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
43
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
44 #if $extended_parameters.parameters == "extended"
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
45 -t $extended_parameters.gff_feature_type
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
46 -g $extended_parameters.gff_feature_attribute
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
47 $extended_parameters.summarization_level
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
48 $extended_parameters.contribute_to_multiple_features
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
49 $extended_parameters.protocol
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
50 $extended_parameters.multimapping_counts
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
51 -Q $extended_parameters.mapping_quality
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
52 $extended_parameters.fragment_counting
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
53 $extended_parameters.check_distance
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
54 -d $extended_parameters.minimum_fragment_length
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
55 -D $extended_parameters.maximum_fragment_length
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
56 $extended_parameters.only_both_ends
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
57 $extended_parameters.exclude_chimerics
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
58 $extended_parameters.namesort
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
59 #end if
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
60
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
61 #for $alignment in $alignments
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
62 ${alignment}
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
63 #end for
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
64
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
65 2>&amp;1
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
66
8
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
67 #set $columns = [str(i+7) for i, alignment in enumerate($alignments)]
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
68 #set $columns=",".join($columns)
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
69 #if $format == "tabdel_default" or $format.value == "tabdel_default"
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
70 ; cp $output tmp.txt
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
71 ; egrep -v "^#" tmp.txt > tmp2.txt
8
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
72 ; cut -f 1,$columns tmp2.txt > tmp_left.txt
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
73 ; cut -f 6 tmp2.txt > tmp_right.txt
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
74 ; paste tmp_left.txt tmp_right.txt > $output
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
75 #elif $format == "tabdel_short" or $format.value == "tabdel_short"
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
76 ; cp $output tmp.txt
8
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
77 ; egrep -v "^#" tmp.txt | cut -f 1,$columns > $output
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
78 #end if
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
79
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
80 ## For every alignment, replace its filename for: "hid: sample name"
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
81 #for $alignment in $alignments
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
82 #set $alignment_escaped = str($alignment).replace('/', '\/').replace('.', '\.')
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
83 #set $alignment_name_escaped = str(alignment.hid)+": "+str($alignment.name).replace('\t',' ').replace('\\','\\\\').replace("'","\\'").replace('/','\/')
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
84
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
85 #if $format.value == "tabdel_default" or $format.value == "tabdel_short"
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
86 ; sed -e '1 s/$alignment_escaped/${alignment_name_escaped}/g' $output > tmp.txt
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
87 #elif $format.value == "bed":
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
88 ; featurecounts2bed.sh -f "$output" > tmp.txt
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
89 #else
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
90 ; sed -e '1,2 s/$alignment_escaped/${alignment_name_escaped}/g' $output > tmp.txt
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
91 #end if
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
92
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
93 ; mv tmp.txt $output
1
9fcffbe6c206 Uploaded
yhoogstrate
parents: 0
diff changeset
94
2
8c70c248576e Uploaded
yhoogstrate
parents: 1
diff changeset
95 ; sed -e '1 s/$alignment_escaped/${alignment_name_escaped}/g' $output".summary" > tmp.txt
1
9fcffbe6c206 Uploaded
yhoogstrate
parents: 0
diff changeset
96 ; mv tmp.txt $output".summary"
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
97 #end for
1
9fcffbe6c206 Uploaded
yhoogstrate
parents: 0
diff changeset
98 ; mv $output".summary" $output_summary
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
99 #end if
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
100 #end if
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
101 </command>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
102
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
103 <inputs>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
104 <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" />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
105
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
106 <!-- Find out how to access the the GTF/GFF file(s) -->
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
107 <conditional name="reference_gene_sets_source">
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
108 <param name="source_select" type="select" label="GFF/GTF Source">
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
109 <option value="indexed_filtered">Use a built-in index (which fits your reference)</option>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
110 <option value="history">Use reference from the history</option>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
111 <option value="indexed_all">Use a built-in index (entire list) - avoid this option if possible; only useful if you design a workflow</option>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
112 <option value="attribute">Use a built-in index based on the 'metadata.dbkey' attribute; ideal in workflows</option>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
113 </param>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
114 <when value="indexed_filtered">
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
115 <param name="reference_gene_sets" type="select" label="Reference Gene Sets used during alignment (GFF/GTF)" >
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
116 <options from_data_table="gene_sets"><!-- replaces 'from_file="gene_sets"' - more strict -->
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
117 <column name="name" index="0"/>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
118 <column name="dbkey" index="1"/>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
119 <column name="value" index="2"/>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
120 <filter type="data_meta" ref="alignments" multiple="false" key="dbkey" column="1" />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
121 <validator type="no_options" message="No indexes are available for the selected input dataset" />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
122 </options>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
123 </param>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
124 </when>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
125 <when value="history">
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
126 <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." />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
127 </when>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
128 <when value="indexed_all">
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
129 <param name="reference_gene_sets" type="select" label="Reference Gene Sets used during alignment (GFF/GTF)" >
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
130 <options from_data_table="gene_sets"><!-- replaces 'from_file="gene_sets"' - more strict -->
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
131 <column name="name" index="0"/>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
132 <column name="dbkey" index="1"/>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
133 <column name="value" index="2"/>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
134 <validator type="no_options" message="No indexes are available for the selected input dataset" />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
135 </options>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
136 </param>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
137 </when>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
138 <when value="attribute">
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
139 <!-- Do nothing, determine GTF/GFF file at runtime -->
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
140 </when>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
141 </conditional>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
142
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
143 <param name="format" type="select" label="Output format">
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
144 <option value="complex">featureCounts 1.4.0+ default (extensive; complex)</option>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
145 <option value="tabdel_default" selected="true">Gene-name "\t" gene-count "\t" gene-length (tab-delimited)</option>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
146 <option value="tabdel_short">Gene-name "\t" gene-count (tab-delimited)</option>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
147 <option value="bed">BED format (line per exon): chr "\t" start "\t" stop "\t" description "\t" readcount (tab-delimited)</option>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
148 </param>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
149
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
150 <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." />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
151
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
152 <conditional name="extended_parameters">
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
153 <param name="parameters" type="select" label="featureCounts parameters" help="For more advanced featureCounts settings.">
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
154 <option value="default">Default settings</option>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
155 <option value="extended">Extended settings</option>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
156 </param>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
157 <when value="default">
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
158 </when>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
159 <when value="extended">
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
160 <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." />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
161
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
162 <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." />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
163
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
164 <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." />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
165
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
166 <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)" />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
167
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
168 <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.">
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
169 <option value=" -s 0" selected="true">Unstranded</option>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
170 <option value=" -s 1">Stranded (forwards)</option>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
171 <option value=" -s 2">Stranded (reverse)</option>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
172 </param>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
173
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
174 <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." />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
175
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
176 <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." />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
177
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
178 <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." />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
179
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
180 <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." />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
181
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
182 <param name="minimum_fragment_length" type="integer" value="50" label="PE: Minimum fragment/template length." />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
183 <param name="maximum_fragment_length" type="integer" value="600" label="PE: Maximum fragment/template length." />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
184
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
185 <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." />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
186
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
187 <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." />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
188
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
189 <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)." />
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
190 </when>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
191 </conditional>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
192 </inputs>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
193
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
194 <outputs>
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
195 <data format="tabular" name="output" label="${tool.name} on ${', '.join([ str(a.hid)+': '+a.name for a in $alignments ])}" />
8
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
196 <data format="tabular" name="output_summary" label="${tool.name} on ${', '.join([ str(a.hid)+': '+a.name for a in $alignments ])} summary" />
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
197 </outputs>
8
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
198
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
199 <tests>
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
200 <test>
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
201 </test>
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
202 </tests>
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
203 <help>
5
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
204 featureCounts
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
205 #############
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
206
5
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
207 Overview
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
208 --------
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
209 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.
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
210 It has a variety of advanced parameters but its major strength is its outstanding performance: analysis of a 10GB SE BAM file takes about 7 minutes on a single average CPU (Homo Sapiens genome) [1].
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
211
5
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
212 Input formats
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
213 -------------
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
214 Alignments should be provided in either:
5
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
215
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
216 - SAM format, http://samtools.sourceforge.net/samtools.shtml#5
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
217 - BAM format
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
218
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
219 Gene regions should be provided in the GFF/GTF format:
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
220
5
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
221 - http://genome.ucsc.edu/FAQ/FAQformat.html#format3
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
222 - http://www.ensembl.org/info/website/upload/gff.html
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
223
5
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
224 Installation
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
225 ------------
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
226
5
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
227 1. Make sure you have proper GFF/GTF files (corresponding to your reference genome used for the aligment) uploaded to your history.
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
228
5
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
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. More info at: https://wiki.galaxyproject.org/Admin/Tools/Data%20Tables
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
230
5
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
231 License
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
232 -------
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
233
7
2312bedfe2a3 Uploaded
yhoogstrate
parents: 6
diff changeset
234 **featureCounts / subread package**:
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
235
5
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
236 - GNU General Public License version 3.0 (GPLv3)
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
237
5
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
238 Contact
31279ea9fbfa Uploaded
yhoogstrate
parents: 4
diff changeset
239 -------
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
240
6
fae19d64e9de Uploaded
yhoogstrate
parents: 5
diff changeset
241 The tool wrapper has been written by Youri Hoogstrate from the Erasmus
fae19d64e9de Uploaded
yhoogstrate
parents: 5
diff changeset
242 Medical Center (Rotterdam, Netherlands) on behalf of the Translational
fae19d64e9de Uploaded
yhoogstrate
parents: 5
diff changeset
243 Research IT (TraIT) project:
7
2312bedfe2a3 Uploaded
yhoogstrate
parents: 6
diff changeset
244
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
245 http://www.ctmm.nl/en/programmas/infrastructuren/traitprojecttranslationeleresearch
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
246
6
fae19d64e9de Uploaded
yhoogstrate
parents: 5
diff changeset
247 More tools by the Translational Research IT (TraIT) project can be found
fae19d64e9de Uploaded
yhoogstrate
parents: 5
diff changeset
248 in the following toolsheds:
7
2312bedfe2a3 Uploaded
yhoogstrate
parents: 6
diff changeset
249
2312bedfe2a3 Uploaded
yhoogstrate
parents: 6
diff changeset
250 http://toolshed.dtls.nl/
2312bedfe2a3 Uploaded
yhoogstrate
parents: 6
diff changeset
251
2312bedfe2a3 Uploaded
yhoogstrate
parents: 6
diff changeset
252 http://toolshed.g2.bx.psu.edu/
2312bedfe2a3 Uploaded
yhoogstrate
parents: 6
diff changeset
253
2312bedfe2a3 Uploaded
yhoogstrate
parents: 6
diff changeset
254 http://testtoolshed.g2.bx.psu.edu/
8
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
255
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
256 References
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
257 ----------
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
258 **featureCounts: an efficient general purpose program for assigning sequence reads to genomic features.**
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
259
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
260 *Liao Y1, Smyth GK, Shi W.* - Bioinformatics. 2014 Apr 1;30(7):923-30.
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
261
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
262 - http://www.ncbi.nlm.nih.gov/pubmed/24227677
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
263 - http://dx.doi.org/10.1093/bioinformatics/btt656
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
264
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
265
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
266 Acknowledgements
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
267 ----------------
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
268
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
269 I would like to thank Marius van den Beek for his contributions to this project.
0
cada2d2f0a7c Uploaded
yhoogstrate
parents:
diff changeset
270 </help>
8
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
271 <citations>
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
272 <citation type="doi">10.1093/bioinformatics/btt656</citation>
1a288d568ac1 Uploaded
yhoogstrate
parents: 7
diff changeset
273 </citations>
6
fae19d64e9de Uploaded
yhoogstrate
parents: 5
diff changeset
274 </tool>