I am trying to run tophat2 on a set of SE reads:
tophat2 ../../../references/genomes/xen-trop/ens71/xen-trop-4-2-71 CO1_CGATGT_L008.fastq --min-intron-length 6 --max-insertion-length 3 --max-deletion-length 3 --b2-seed 73 --solexa1.3-quals --microexon-search --num-threads 32 --library-type fr-unstranded --no-coverage-search --GTF ../../../references/gtf/xen-trop/ens71/Xenopus_tropicalis.JGI_4.2.71.gtf
But I am getting an weird error message:
[2013-08-10 14:34:22] Beginning TopHat run (v2.0.9)
[2013-08-10 14:34:22] Checking for Bowtie
Bowtie version: 2.1.0.0
[2013-08-10 14:34:22] Checking for Samtools
Samtools version: 0.1.19.0
[2013-08-10 14:34:22] Checking for Bowtie index files (genome)..
[2013-08-10 14:34:22] Checking for reference FASTA file
[2013-08-10 14:34:22] Generating SAM header for ../../../references/genomes/xen-trop/ens71/xen-trop-4-2-71
Traceback (most recent call last): File "/galaxy/software/tophat2/2.0.9/tophat", line 4072, in ?
sys.exit(main())
File "/galaxy/software/tophat2/2.0.9/tophat", line 3926, in main
params.read_params = check_reads_format(params, reads_list)
File "/galaxy/software/tophat2/2.0.9/tophat", line 1829, in check_reads_format
zf = ZReader(f_name, params)
File "/galaxy/software/tophat2/2.0.9/tophat", line 1782, in __init__
self.file=open(filename)
IOError: [Errno 2] No such file or directory: '--min-intron-length'
What is going on here? It seems tophat2 is looking for a file/directory when it encounters --min-intron-length yet I don't understand why. Can you help?
Try specifying the command as suggested in the manual, i.e., "tophat2 [options] index reads". This sort of error is likely to occur depending on exactly how the tophat python script parses its input. It's likely that the parser takes the first option lacking a "--something" as the index and the next one as the left_reads fastq list. If there are then more, it probably just takes that as the right_reads fastq list and assumes you have paired input. This isn't technically a bug, then, since you're specifying the command incorrectly...though I think a change in the python code would be in order since this sort of error isn't going to be uncommon.