SEQanswers

Go Back   SEQanswers > Bioinformatics > Bioinformatics



Similar Threads
Thread Thread Starter Forum Replies Last Post
htseq out zero for every exon lazy214 Introductions 2 11-12-2014 03:59 AM
Error in HTSEQ komalsrathi Bioinformatics 4 11-19-2013 12:30 PM
HTseq help Ajayi Oyeyemi Bioinformatics 24 04-09-2013 06:40 AM
HTseq narges Bioinformatics 4 09-06-2012 06:46 AM
HTSeq Help Klroop Bioinformatics 0 07-09-2012 11:36 AM

Reply
 
Thread Tools
Old 03-26-2018, 11:12 AM   #1
Proteos
Junior Member
 
Location: USA

Join Date: Dec 2011
Posts: 6
Unhappy HTSeq - how do I cimport it for Cython?

TL;DR
How do I `cimport HTSeq` in Cython module?

--- Details ---
I am trying to use HTSeq to read BAM files that are quite large but it takes days to process them in pure Python. Therefore I decided to use Cython and cythonize reading BAM file part.
Here is example code:
Code:
import HTSeq

bam_file = '.../test.bam'
bam = HTSeq.BAM_Reader(bam_file)
for aln in bam:
    # process alignment
Now I am trying to replace `import HTSeq` with `cimport HTSeq` but the Cython can not find `HTSeq.pxd` file. I found that the header file is actually `src/HTSeq/_HTSeq.pxd`(full link: https://github.com/simon-anders/htse...Seq/_HTSeq.pxd )
as also described here: http://htseq.readthedocs.io/en/master/contrib.html
So, the file starts with underscore and is in the htseq repo but `pip install` does not copy it to any of Includes directories. Therefore, I copied it manually to the root directory of my package so that `setup.py` can see it. Then I added `cimport _HTSeq as HTSeq` to my `*.pyx` file and it got compiled to an `*.so` file but when I ran the app it throws error:
Code:
ImportError: No module named _HTSeq
My system: macOS 10.13.3 High Sierra; Python 2.7.14 (will port the code to 3.6 later); HTSeq 0.6.0;

Any suggestion about solving this problem OR speeding up reading BAM files is appreciated. (One more trick I want to try next is to extract chromosome info from BAM header file and run them in parallel using multiprocessing/cython_nogil/openMPI or something; still don't know what will work best with Cython.)

Thanks!

Last edited by Proteos; 03-26-2018 at 01:28 PM.
Proteos is offline   Reply With Quote
Reply

Tags
bam, bam_reader, cython, cythonize, htseq

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off




All times are GMT -8. The time now is 05:18 PM.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Single Sign On provided by vBSSO