Are there any suggested parameters to align ONT reads to the reference genome using STAR-long? For now, I used the parameters suggested here, but I noticed a weird behaviour.

I have RNA reads (D. melanogaster) from R7 and R9 flowcells, separately. I only selected to analyze 2D reads in pass category.

I have, respectively, 113249 reads for R7 and 40318 reads for R9. I aligned those reads and get (only!) 150 uniquely mapped reads for R7 data and 8017 uniquely mapped reads for R9 data. I tried to run again the same command on a different server with fresh compilation, but the output file is consistent with these 150 reads.

However, if I align the same with GMAP, I get 78016 uniquely mapped reads for R7 and 33523 uniquely mapped reads for R9, so I suspect that something went wrong in the alignment run.

I am aware that the two mappers behave very differently, STAR-long being more precise and preferring to report mappings of fewer reads but at better loci, and GMAP being overall less precise, trying to map the most of the reads but at not-so-good loci.

I was wondering if some of you had experience with this and could suggest me the best parameters for RNA reads from ONT?

  • $\begingroup$ I guess my reply would be more appropriate as a comment - but I can't. I'm not sure if that setting of SE makes sense, but whatever. This is not necessarily a solution for the behaviour you see, but I would suggest trying github.com/lh3/minimap2 for cDNA-seq alignment. $\endgroup$ Sep 18, 2017 at 8:51
  • 1
    $\begingroup$ At my hand, STAR-long doesn't work well with noisy reads. It worked for iso-seq mostly because the error rate of iso-seq reads is much lower. $\endgroup$
    – user172818
    Jan 17, 2018 at 15:48

1 Answer 1


I've had great results using minimap2, particularly when combined with a pre-treatment of Canu for error correction (using minimap2 for the read-to-read mapping):

# correct reads
~/install/canu/canu-1.6/Linux-amd64/bin/canu overlapper=minimap \
   genomeSize=100M minReadLength=100 minOverlapLength=30 -correct \
   -p 4T1_BC06 -d 4T1_BC06 \
   -nanopore-raw workspace/pass/barcode06/fastq_runid_*.fastq
# align reads
~/install/minimap2/minimap2 -p 10 \
   -a ~/db/fasta/mmus/ucsc/mmus_ucsc_all_cdna.idx \
   -x splice <(pv all/4T1_BC06/4T1_BC06.correctedReads.fasta.gz) | \
  samtools sort > 4T1_BC06_all_vs_mmusAll.bam

Update: the most recent nanopore basecaller, combined with the most recent minimap2, seems to now do a decent job with mapping, and pre-correction of reads no longer seems necessary. More recently I've been using LAST to map to the transcriptome, and minimap2 to map to the genome. Minimap2 has the ability to use a homopolymer-compressed genome index, which means that the most common consistent error for nanopore reads (i.e. misjudgement of homopolymer length) will not influence the mapping rate.

  • $\begingroup$ Yep I also ended up using minimap2, thanks. At the time of this question, I was just trying to check if I was doing some nonsense with parameters for STAR, or if its behavior was simply due to its algorithm. For reads correction, aren't you afraid of altering the indel composition of your reads if you use Canu? $\endgroup$
    – aechchiki
    Jan 17, 2018 at 10:46
  • $\begingroup$ No... why would that be a problem? Canu is correcting errors based on the consensus of overlapping reads; I don't see why/how that correction would cause more problems than it solves. $\endgroup$
    – gringer
    Jan 17, 2018 at 21:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.