Galaxy | Tool Preview

Count reads in features with htseq-count (version 1.0.0)
Name Of The Matrix
Groups
Group 0
Skip all reads with alignment quality lower than the given minimum value.
All features of other type are ignored (default, suitable for RNA-Seq and Ensembl GTF files: exon)
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.
Remove any rows for which all input Sam/Bam files have 0 counts.

What it does

Create a digital expression matrix by counting reads in features with htseq-count

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.

A feature is here an interval (i.e., a range of positions) on a chromosome or a union of such intervals.

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.

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.

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)

  • the union of all the sets S(i) for mode union.
  • the intersection of all the sets S(i) for mode intersection-strict.
  • the intersection of all non-empty sets S(i) for mode intersection-nonempty.

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.

The following figure illustrates the effect of these three modes:

http://www-huber.embl.de/users/anders/HTSeq/doc/_images/count_modes.png

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.

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!


Output

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:

  • no_feature: reads which could not be assigned to any feature (set S as described above was empty).
  • 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).
  • too_low_aQual: reads which were not counted due to the -a option, see below
  • not_aligned: reads in the Sam/Bam file without alignment
  • 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.)

Reference

http://www-huber.embl.de/users/anders/HTSeq/doc/overview.html