2015-12-15 2 views
0

J'utilise pysam pour doper l'exploration de données sur des fichiers .bam. Je veux vérifier si une lecture a un partenaire mappé. La commandeSamtools pysam mate

mate = samfile.mate(read1) 

renvoie une erreur si le second n'est pas mis en correspondance, donc si je

if samfile.mate(read1): ... 

qui jette une erreur aussi. Toute autre façon de vérifier si la lecture a un compagnon mappé?

Merci.

Répondre

0

AlignedSegment.mate_is_unmapped devrait fonctionner pour vous. Voir docs for pysam

if not read1.mate_is_unmapped: 
    mate = samfile.mate(read1) 
    ... 

Alternativement, vous pouvez simplement Intercepter l'exception et passer à autre chose, mais se fondant sur la gestion des exceptions pour le flux normal du programme n'est pas idéal.