annotate htseq-count.xml @ 18:737cda668bdd draft

planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
author lparsons
date Mon, 22 Jun 2015 12:42:30 -0400
parents 3102bfcac0d6
children 8bc865a85024
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
17
3102bfcac0d6 Bump version
lparsons
parents: 16
diff changeset
1 <tool id="htseq_count" name="htseq-count" version="0.4.1">
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
2 <description> - Count aligned reads in a BAM file that overlap features in a GFF file</description>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
3 <requirements>
12
c86659f03e98 Uploaded test version
lparsons
parents: 8
diff changeset
4 <requirement type="package" version="0.6.1">htseq</requirement>
8
65c91537862c Updated to HTSeq 0.5.4p5, use tool shed repository dependencies
lparsons
parents: 7
diff changeset
5 <requirement type="package" version="0.1.19">samtools</requirement>
16
c9bacde2356c Added missing dependency
lparsons
parents: 14
diff changeset
6 <requirement type="package" version="0.7.7">pysam</requirement>
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
7 </requirements>
18
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
8
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
9 <stdio>
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
10 <exit_code range="1:" level="fatal" description="Unknown error occurred" />
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
11 <regex match="htseq-count: (command ){0,1}not found" source="stderr" level="fatal" description="The HTSeq python package is not properly installed, contact Galaxy administrators" />
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
12 <regex match="samtools: (command ){0,1}not found" source="stderr" level="fatal" description="The samtools package is not properly installed, contact Galaxy administrators" />
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
13 <regex match="Error: Feature (.+) does not contain a '(.+)' attribute" source="both" level="fatal" description="Error parsing the GFF file, at least one feature of the specified 'Feature type' does not have a value for the specified 'ID Attribute'" />
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
14 <regex match="Error occured in line (\d+) of file" source="stderr" level="fatal" description="Unknown error parsing the GFF file" />
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
15 <regex match="Error" source="stderr" level="fatal" description="Unknown error occured" />
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
16 <regex match="Warning: Read (.+) claims to have an aligned mate which could not be found. \(Is the SAM file properly sorted\?\)" source="stderr" level="warning" description="PAIRED DATA MISSING OR NOT PROPERLY SORTED. Try reruning and selecting the paired-end option. See stderr output of this dataset for more information." />
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
17 </stdio>
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
18
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
19 <version_command>htseq-count -h | grep version | sed 's/^\(.*\)*\(version .*\)\./\2/'</version_command>
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
20
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
21 <command>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
22 ##set up input files
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
23 #set $reference_fasta_filename = "localref.fa"
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
24 #if $samout_conditional.samout:
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
25 #if str( $samout_conditional.reference_source.reference_source_selector ) == "history":
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
26 ln -s "${samout_conditional.reference_source.ref_file}" "${reference_fasta_filename}" &amp;&amp;
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
27 samtools faidx "${reference_fasta_filename}" 2&gt;&amp;1 || echo "Error running samtools faidx for htseq-count" &gt;&amp;2 &amp;&amp;
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
28 #else:
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
29 #set $reference_fasta_filename = str( $samout_conditional.reference_source.ref_file.fields.path )
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
30 #end if
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
31 #end if
18
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
32 htseq-count
12
c86659f03e98 Uploaded test version
lparsons
parents: 8
diff changeset
33 --format=$samfile.extension
c86659f03e98 Uploaded test version
lparsons
parents: 8
diff changeset
34 --order=pos
18
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
35 --mode=$mode
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
36 --stranded=$stranded
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
37 --minaqual=$minaqual
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
38 --type=$featuretype
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
39 --idattr=$idattr
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
40 #if $samout_conditional.samout:
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
41 --samout=$__new_file_path__/${samoutfile.id}_tmp
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
42 #end if
12
c86659f03e98 Uploaded test version
lparsons
parents: 8
diff changeset
43 $samfile
18
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
44 $gfffile
5
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
45 | awk '{if ($1 ~ "no_feature|ambiguous|too_low_aQual|not_aligned|alignment_not_unique") print $0 | "cat 1>&amp;2"; else print $0}' &gt; $counts 2&gt;$othercounts
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
46 #if $samout_conditional.samout:
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
47 &amp;&amp; samtools view -Su -t ${reference_fasta_filename}.fai $__new_file_path__/${samoutfile.id}_tmp | samtools sort -o - sorted > $samoutfile
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
48 #end if</command>
18
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
49
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
50 <inputs>
13
256d3114ce31 Fix input format string and change dependency owners to devteam
lparsons
parents: 12
diff changeset
51 <param format="sam,bam" name="samfile" type="data" label="Aligned SAM/BAM File"/>
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
52 <param format="gff" name="gfffile" type="data" label="GFF File"/>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
53 <param name="mode" type="select" label="Mode">
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
54 <help>Mode to handle reads overlapping more than one feature.</help>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
55 <option value="union" selected="true">Union</option>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
56 <option value="intersection-strict">Intersection (strict)</option>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
57 <option value="intersection-nonempty">Intersection (nonempty)</option>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
58 </param>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
59 <param name="stranded" type="select" label="Stranded">
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
60 <help>Specify whether the data is from a strand-specific assay. 'Reverse' means yes with reversed strand interpretation.</help>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
61 <option value="yes" selected="true">Yes</option>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
62 <option value="no">No</option>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
63 <option value="reverse">Reverse</option>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
64 </param>
12
c86659f03e98 Uploaded test version
lparsons
parents: 8
diff changeset
65 <param name="minaqual" type="integer" value="10" label="Minimum alignment quality">
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
66 <help>Skip all reads with alignment quality lower than the given minimum value</help>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
67 </param>
5
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
68 <param name="featuretype" type="text" value="exon" label="Feature type">
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
69 <help>Feature type (3rd column in GFF file) to be used. All features of other types are ignored. The default, suitable for RNA-Seq and Ensembl GTF files, is exon.</help>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
70 </param>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
71 <param name="idattr" type="text" value="gene_id" label="ID Attribute">
5
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
72 <help>GFF attribute to be used as feature ID. 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. All features of the specified type MUST have a value for this attribute. The default, suitable for RNA-SEq and Ensembl GTF files, is gene_id.</help>
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
73 </param>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
74 <conditional name="samout_conditional">
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
75 <param name="samout" type="boolean" value="False" truevalue="True" falsevalue="False" label="Additional BAM Output">
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
76 <help>Write out all SAM alignment records into an output BAM file, annotating each line with its assignment to a feature or a special counter (as an optional field with tag ‘XF’).</help>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
77 </param>
18
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
78 <when value="True">
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
79 <conditional name="reference_source">
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
80 <param name="reference_source_selector" type="select" label="Choose the source for the reference list">
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
81 <option value="cached">Locally cached</option>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
82 <option value="history">History</option>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
83 </param>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
84 <when value="cached">
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
85 <param name="ref_file" type="select" label="Using reference genome">
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
86 <options from_data_table="sam_fa_indexes">
5
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
87 <filter type="data_meta" key="dbkey" ref="samfile" column="1"/>
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
88 </options>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
89 <validator type="no_options" message="A built-in reference genome is not available for the build associated with the selected input file"/>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
90 </param>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
91 </when>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
92 <when value="history"> <!-- FIX ME!!!! -->
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
93 <param name="ref_file" type="data" format="fasta" label="Using reference file" />
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
94 </when>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
95 </conditional>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
96 </when>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
97 </conditional>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
98 </inputs>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
99
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
100 <outputs>
5
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
101 <data format="tabular" name="counts" metadata_source="samfile" label="${tool.name} on ${on_string}"/>
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
102 <data format="tabular" name="othercounts" metadata_source="samfile" label="${tool.name} on ${on_string} (no feature)"/>
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
103 <data format="bam" name="samoutfile" metadata_source="samfile" label="${tool.name} on ${on_string} (BAM)">
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
104 <filter>samout_conditional['samout']</filter>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
105 </data>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
106 </outputs>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
107
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
108 <tests>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
109 <test>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
110 <param name="samfile" value="htseq-test.sam" />
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
111 <param name="gfffile" value="htseq-test.gff" />
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
112 <param name="samout" value="False" />
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
113 <output name="counts" file="htseq-test_counts.tsv" />
5
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
114 <output name="othercounts" file="htseq-test_othercounts.tsv" />
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
115 </test>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
116 <test>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
117 <param name="samfile" value="htseq-test.bam" />
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
118 <param name="gfffile" value="htseq-test.gff" />
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
119 <param name="samout" value="False" />
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
120 <output name="counts" file="htseq-test_counts.tsv" />
5
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
121 <output name="othercounts" file="htseq-test_othercounts.tsv" />
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
122 </test>
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
123 <test>
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
124 <param name="samfile" value="htseq-test-paired.bam" />
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
125 <param name="singlepaired" value="paired" />
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
126 <param name="gfffile" value="htseq-test.gff" />
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
127 <param name="samout" value="False" />
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
128 <output name="counts" file="htseq-test-paired_counts.tsv" />
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
129 <output name="othercounts" file="htseq-test-paired_othercounts.tsv" />
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
130 </test>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
131 <!-- Seems to be an issue setting the $reference_fasta_filename variable during test
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
132 <test>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
133 <param name="samfile" value="htseq-test.sam" />
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
134 <param name="gfffile" value="htseq-test.gff" />
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
135 <param name="samout" value="True" />
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
136 <param name="reference_source_selector" value="history" />
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
137 <param name="ref_file" value="htseq-test_reference.fasta" />
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
138 <output name="counts" file="htseq-test_counts.tsv" />
5
0a835934d792 Version 0.3
lparsons
parents: 4
diff changeset
139 <output name="othercounts" file="htseq-test_othercounts.tsv" />
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
140 <output name="samoutfile" file="htseq-test_samout.bam" />
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
141 </test>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
142 -->
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
143 </tests>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
144
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
145 <help>
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
146 Overview
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
147 --------
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
148
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
149 This tool takes an alignment file in SAM or BAM format and feature file in GFF format
18
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
150 and calculates the number of reads mapping to each feature. It uses the *htseq-count*
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
151 script that is part of the HTSeq python module. See
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
152 http://www-huber.embl.de/users/anders/HTSeq/doc/count.html for details.
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
153
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
154 A feature is an interval (i.e., a range of positions) on a chromosome or a union of
18
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
155 such intervals. In the case of RNA-Seq, the features are typically genes, where
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
156 each gene is considered here as the union of all its exons. One may also consider
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
157 each exon as a feature, e.g., in order to check for alternative splicing. For
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
158 comparative ChIP-Seq, the features might be binding regions from a pre-determined
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
159 list.
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
160
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
161
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
162 Overlap Modes
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
163 -------------
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
164
18
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
165 Special care must be taken to decide how to deal with reads that overlap more than one feature.
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
166
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
167 The htseq-count script allows to choose between three modes: *union*, *intersection-strict*, and *intersection-nonempty*.
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
168
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
169 The following figure illustrates the effect of these three modes:
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
170
14
c1db55359a86 Fix image path and size
lparsons
parents: 13
diff changeset
171 .. image:: count_modes.png
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
172
6
08a11d1eaec6 Updated HTSEQ package to version 0.5.4p1, attempted to fix galaxy install where lib64 directory does not exist
lparsons
parents: 5
diff changeset
173
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
174 Strandedness
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
175 ------------
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
176
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
177 **Important**: The default for strandedness is yes. If your RNA-Seq data has not been made with a strand-specific protocol, this causes half of the reads to be lost. Hence, make sure to set the option Stranded to 'No' unless you have strand-specific data!
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
178
6
08a11d1eaec6 Updated HTSEQ package to version 0.5.4p1, attempted to fix galaxy install where lib64 directory does not exist
lparsons
parents: 5
diff changeset
179
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
180 Output
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
181 ------
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
182
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
183 The script outputs a table with counts for each feature, followed by the special counters, which count reads that were not counted for any feature for various reasons, namely
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
184
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
185 - *no_feature*: reads which could not be assigned to any feature (set S as described above was empty).
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
186
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
187 - *ambiguous*: reads which could have been assigned to more than one feature and hence were not counted for any of these (set S had mroe than one element).
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
188
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
189 - *too_low_aQual*: reads which were not counted due to the -a option, see below
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
190
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
191 - *not_aligned*: reads in the SAM file without alignment
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
192
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
193 - *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.)
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
194
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
195
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
196 Options Summary
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
197 ---------------
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
198
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
199 Usage: htseq-count [options] sam_file gff_file
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
200
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
201 This script takes an alignment file in SAM format and a feature file in GFF
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
202 format and calculates for each feature the number of reads mapping to it. See
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
203 http://www-huber.embl.de/users/anders/HTSeq/doc/count.html for details.
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
204
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
205 Options:
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
206 -h, --help show this help message and exit
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
207 -m MODE, --mode=MODE mode to handle reads overlapping more than one
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
208 feature(choices: union, intersection-strict,
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
209 intersection-nonempty; default: union)
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
210 -s STRANDED, --stranded=STRANDED
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
211 whether the data is from a strand-specific assay.
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
212 Specify 'yes', 'no', or 'reverse' (default: yes).
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
213 'reverse' means 'yes' with reversed strand
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
214 interpretation
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
215 -a MINAQUAL, --minaqual=MINAQUAL
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
216 skip all reads with alignment quality lower than the
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
217 given minimum value (default: 0)
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
218 -t FEATURETYPE, --type=FEATURETYPE
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
219 feature type (3rd column in GFF file) to be used, all
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
220 features of other type are ignored (default, suitable
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
221 for Ensembl GTF files: exon)
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
222 -i IDATTR, --idattr=IDATTR
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
223 GFF attribute to be used as feature ID (default,
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
224 suitable for Ensembl GTF files: gene_id)
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
225 -o SAMOUT, --samout=SAMOUT
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
226 write out all SAM alignment records into an output SAM
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
227 file called SAMOUT, annotating each line with its
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
228 feature assignment (as an optional field with tag
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
229 'XF')
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
230 -q, --quiet suppress progress report and warnings
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
231
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
232 Written by Simon Anders (sanders@fs.tum.de), European Molecular Biology
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
233 Laboratory (EMBL). (c) 2010. Released under the terms of the GNU General
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
234 Public License v3. Part of the 'HTSeq' framework.
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
235 </help>
18
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
236 <citations>
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
237 <citation type="bibtex">
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
238 @article{anders_htseqpython_2015,
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
239 title = {{HTSeq}—a {Python} framework to work with high-throughput sequencing data},
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
240 volume = {31},
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
241 issn = {1367-4803, 1460-2059},
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
242 url = {http://bioinformatics.oxfordjournals.org/content/31/2/166},
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
243 doi = {10.1093/bioinformatics/btu638},
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
244 abstract = {Motivation: A large choice of tools exists for many standard tasks in the analysis of high-throughput sequencing (HTS) data. However, once a project deviates from standard workflows, custom scripts are needed.
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
245 Results: We present HTSeq, a Python library to facilitate the rapid development of such scripts. HTSeq offers parsers for many common data formats in HTS projects, as well as classes to represent data, such as genomic coordinates, sequences, sequencing reads, alignments, gene model information and variant calls, and provides data structures that allow for querying via genomic coordinates. We also present htseq-count, a tool developed with HTSeq that preprocesses RNA-Seq data for differential expression analysis by counting the overlap of reads with genes.
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
246 Availability and implementation: HTSeq is released as an open-source software under the GNU General Public Licence and available from http://www-huber.embl.de/HTSeq or from the Python Package Index at https://pypi.python.org/pypi/HTSeq.
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
247 Contact: sanders\{at\}fs.tum.de},
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
248 language = {en},
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
249 number = {2},
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
250 urldate = {2015-04-21},
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
251 journal = {Bioinformatics},
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
252 author = {Anders, Simon and Pyl, Paul Theodor and Huber, Wolfgang},
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
253 month = jan,
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
254 year = {2015},
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
255 pmid = {25260700},
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
256 pages = {166--169},
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
257 file = {Full Text PDF:/Users/lparsons/Library/Application Support/Firefox/Profiles/thd2t4je.default/zotero/storage/84XQB8V6/Anders et al. - 2015 - HTSeq—a Python framework to work with high-through.pdf:application/pdf;Snapshot:/Users/lparsons/Library/Application Support/Firefox/Profiles/thd2t4je.default/zotero/storage/JKUAUCKB/166.html:text/html}
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
258 }
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
259 </citation>
737cda668bdd planemo upload for repository https://github.com/lparsons/galaxy_tools/tree/master/tools/htseq_count commit 7ed7ce73afea50d212c9470fd3b98a232e312502
lparsons
parents: 17
diff changeset
260 </citations>
0
b8349d8458fa Initial commit
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
261 </tool>