Seqanswers Leaderboard Ad

Collapse

Announcement

Collapse
No announcement yet.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • 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, 01:28 PM.

Latest Articles

Collapse

  • seqadmin
    Current Approaches to Protein Sequencing
    by seqadmin


    Proteins are often described as the workhorses of the cell, and identifying their sequences is key to understanding their role in biological processes and disease. Currently, the most common technique used to determine protein sequences is mass spectrometry. While still a valuable tool, mass spectrometry faces several limitations and requires a highly experienced scientist familiar with the equipment to operate it. Additionally, other proteomic methods, like affinity assays, are constrained...
    04-04-2024, 04:25 PM
  • seqadmin
    Strategies for Sequencing Challenging Samples
    by seqadmin


    Despite advancements in sequencing platforms and related sample preparation technologies, certain sample types continue to present significant challenges that can compromise sequencing results. Pedro Echave, Senior Manager of the Global Business Segment at Revvity, explained that the success of a sequencing experiment ultimately depends on the amount and integrity of the nucleic acid template (RNA or DNA) obtained from a sample. “The better the quality of the nucleic acid isolated...
    03-22-2024, 06:39 AM

ad_right_rmr

Collapse

News

Collapse

Topics Statistics Last Post
Started by seqadmin, 04-11-2024, 12:08 PM
0 responses
17 views
0 likes
Last Post seqadmin  
Started by seqadmin, 04-10-2024, 10:19 PM
0 responses
22 views
0 likes
Last Post seqadmin  
Started by seqadmin, 04-10-2024, 09:21 AM
0 responses
16 views
0 likes
Last Post seqadmin  
Started by seqadmin, 04-04-2024, 09:00 AM
0 responses
46 views
0 likes
Last Post seqadmin  
Working...
X