This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Bowtie produced empty .sam file

I want to map out1.fq and out2.fqtoNC_008253.fa`.

The following code produced an empty mapped.sam file.

bowtie -q out1.fq out2.fq -x NC_008253 -l 24 -S -X 600 -t -v 3 > mapped.sam
Time loading forward index: 00:00:00
Time loading mirror index: 00:00:00
End-to-end 2/3-mismatch full-index search: 00:00:53
# reads processed: 1000000
# reads with at least one alignment: 939659 (93.97%)
# reads that failed to align: 60341 (6.03%)
Reported 939659 alignments
Time searching: 00:00:53
Overall time: 00:00:53

When I tried to specify the numbering of the fastq file, it produced a Saw ASCII character 10 but expected 33-based Phred qual. error.

bowtie -x NC_008253 -1 out1.fq -2 out2.fq -l 24 -X 600 -t -v 3 -S mapped.sam
Time loading forward index: 00:00:00
Time loading mirror index: 00:00:00
Time loading reference: 00:00:00
Saw ASCII character 10 but expected 33-based Phred qual.
End-to-end 2/3-mismatch full-index search: 00:00:00
Time searching: 00:00:00
Overall time: 00:00:00
bowtie

To my knowledge, whatever you are using as a reference for alignment (argument to -x) must be indexed accordingly. If your .fasta file is not indexed, you must first use it as input to bowtie-build function. Have a look at the official Bowtie manual: http://bowtie-bio.sourceforge.net/manual.shtml

1 answer

The first step would be to see if you can get any working result at all, and this depends on a functional alignment index.

# make sure you have a working index
bowtie-inspect --summary NC_008253

If you don't have a working index, build one:

bowtie-build NC_008253.fa NC_008253

With a functional index, you could try aligning some data in a simple way. I would take just a few lines of the fastq file: head -12 out1.fq > test.fq (this would be 3 reads), but you could also simply supply the first file, to see if you get an error or not:

# start with the simplest alignment to see if you get a result
bowtie -x NC_008253 out1.fq

If you have a lot of data you can use control-c to stop the output. You don't mention if this is paired-end data, or simply two fastq files. The difference is important and each situation requires a specific syntax. As Marco Pannone mentioned, see the manual.

Log in to answer this question.