annotate htseq.xml @ 5:a535c6d80fb0 draft

Uploaded
author fcaramia
date Wed, 12 Sep 2012 23:45:50 -0400
parents
children 734516a21b52
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
1 <tool id="htseq-count" name="Count reads in features with htseq-count" version="1.0.0">
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
2
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
3 <command interpreter="perl">
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
4 htseq.pl -m $MODE -s $STRANDED -a $MINAQUAL -t $FEATURETYPE -i $IDATTR -g $gff_file -o $output -r $report $REDUCE
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
5 ## Inputs.
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
6 #for $group in $group_analysis
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
7 ${group.group}::${group.sample_init}::${group.file_init}
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
8 #for $input_files in $group.input_files:
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
9 ${group.group}::${input_files.sample}::${input_files.file}
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
10 #end for
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
11 #end for
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
12 </command>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
13
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
14 <inputs>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
15 <param name="matrix_name" type="text" label="Name Of Matrix" help="Name Of The Matrix" value="My_Matrix" />
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
16 <repeat name="group_analysis" title="Group">
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
17 <param name="group" title="Group name" type="text" label="Group name (no spaces or commas)"/>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
18 <param name="sample_init" title="Sample name" type="text" label="Sample name (no spaces, commas or colons allowed)"/>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
19 <param format="sam,bam" name="file_init" type="data" label="SAM/BAM File" help=""/>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
20 <repeat name="input_files" title="Replicate">
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
21 <param name="sample" title="Sample name" type="text" label="Sample name (no spaces, commas or colons allowed)"/>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
22 <param format="sam,bam" name="file" type="data" label="Add file" help=""/>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
23 </repeat>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
24 </repeat>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
25 <param format="gff, gtf" name="gff_file" type="data" label="The features file in the GFF/GTF format"/>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
26 <param name="MODE" type="select" label="Mode to handle reads overlapping more than one feature">
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
27 <option value="union">Union</option>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
28 <option value="intersection-strict">Intersection Strict</option>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
29 <option value="intersection-nonempty" selected="true">Intersection Nonempty</option>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
30 </param>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
31 <param name="STRANDED" type="select" label="Is the data from a strand-specific assay?">
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
32 <option value="no" selected="true">No</option>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
33 <option value="yes">Yes</option>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
34 <option value="reverse">Yes but reverse</option>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
35 </param>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
36 <param name="MINAQUAL" type="integer" value="0" label="Minimum Alignment Quality" help="Skip all reads with alignment quality lower than the given minimum value." />
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
37 <param name="FEATURETYPE" value="exon" type="text" label="Feature type (3rd column in GFF file) to be used" help="All features of other type are ignored (default, suitable for RNA-Seq and Ensembl GTF files: exon)" size="80" />
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
38 <param name="IDATTR" value="gene_id" type="text" label="GFF attribute to be used as feature ID" help="Several GFF lines with the same feature ID will be considered as parts of the same feature. The feature ID is used to identity the counts in the output table. The default, suitable for RNA-SEq and Ensembl GTF files, is gene_id." size="80" />
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
39 <param name="REDUCE" type="boolean" truevalue="-c" falsevalue="" checked="True" label="Reduce Matrix" help="Remove any rows for which all input Sam/Bam files have 0 counts."/>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
40 </inputs>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
41
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
42 <outputs>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
43 <data format="tabular" name="output" label="Digital Expression Matrix: $matrix_name"/>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
44 <data format="txt" name="report" label="Matrix Report: $matrix_name"/>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
45 </outputs>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
46
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
47 <help>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
48
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
49 .. class:: infomark
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
50
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
51 **What it does**
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
52
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
53 Create a digital expression matrix by counting reads in features with htseq-count
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
54
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
55 For each given file with aligned sequencing reads this tool counts how many reads map to each feature. It then constructs a matrix where the rows represent the features and the columns represent the files.
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
56
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
57 A feature is here an interval (i.e., a range of positions) on a chromosome or a union of such intervals.
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
58
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
59 In the case of RNA-Seq, the features are typically genes, where each gene is considered here as the union of all its exons. One may also consider each exon as a feature, e.g., in order to check for alternative splicing. For comparative ChIP-Seq, the features might be binding region from a pre-determined list.
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
60
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
61 Special care must be taken to decide how to deal with reads that overlap more than one feature. The htseq-count script allows to choose between three modes.
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
62
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
63 The three overlap resolution modes of htseq-count work as follows. For each position i in the read, a set S(i) is defined as the set of all features overlapping position i. Then, consider the set S, which is (with i running through all position within the read)
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
64
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
65 * the union of all the sets S(i) for mode union.
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
66 * the intersection of all the sets S(i) for mode intersection-strict.
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
67 * the intersection of all non-empty sets S(i) for mode intersection-nonempty.
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
68
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
69 If S contains precisely one feature, the read is counted for this feature. If it contains more than one feature, the read is counted as ambiguous (and not counted for any features), and if S is empty, the read is counted as no_feature.
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
70
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
71 The following figure illustrates the effect of these three modes:
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
72
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
73 .. image:: ./static/operation_icons/count_modes.png
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
74
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
75 The strandedness of the assay may also be set. For stranded=no, a read is considered overlapping with a feature regardless of whether it is mapped to the same or the opposite strand as the feature. For stranded=yes and single-end reads, the read has to be mapped to the same strand as the feature. For paired-end reads, the first read has to be on the same strand and the second read on the opposite strand. For stranded=reverse, these rules are reversed.
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
76
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
77 .. class:: warningmark
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
78
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
79 **Important:** The default for strandedness is no. If yes or reverse is selected and your RNA-Seq data has not been made with a strand-specific protocol, this will cause half of the reads to be lost. Hence, make sure to set the option --stranded=no unless you have strand-specific data!
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
80
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
81 ------
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
82
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
83 **Output**
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
84
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
85 The script outputs a digital expression matrix containing the counts for each feature by each input Sam/Bam file. It will also generate a report containing special counters, which count reads that were not counted for any feature for various reasons, namely:
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
86
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
87 * no_feature: reads which could not be assigned to any feature (set S as described above was empty).
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
88 * ambiguous: reads which could have been assigned to more than one feature and hence were not counted for any of these (set S had more than one element).
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
89 * too_low_aQual: reads which were not counted due to the -a option, see below
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
90 * not_aligned: reads in the Sam/Bam file without alignment
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
91 * alignment_not_unique: reads with more than one reported alignment. These reads are recognized from the NH optional SAM field tag. (If the aligner does not set this field, multiply aligned reads will be counted multiple times.)
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
92
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
93 </help>
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
94
a535c6d80fb0 Uploaded
fcaramia
parents:
diff changeset
95 </tool>