bx.align.tools.fuse module
Tools for fusing contiguous alignment blocks together.
- class bx.align.tools.fuse.FusingAlignmentWriter(maf_writer)
Bases:
object
Wrapper for an alignment Writer which attempts to fuse adjacent blocks
- close()
- write(m)
- bx.align.tools.fuse.fuse(m1, m2)
Attempt to fuse two blocks. If they can be fused returns a new block, otherwise returns None.
Example:
>>> import bx.align.maf
>>> block1 = bx.align.maf.from_string( ''' ... a score=0.0 ... s hg18.chr10 52686 44 + 135374737 GTGCTAACTTACTGCTCCACAGAAAACATCAATTCTGCTCATGC ... i hg18.chr10 N 0 C 0 ... s panTro1.chrUn_random 208115356 44 - 240967748 GTGCTAACTGACTGCTCCAGAGAAAACATCAATTCTGTTCATGT ... ''' )
>>> block2 = bx.align.maf.from_string( ''' ... a score=0.0 ... s hg18.chr10 52730 69 + 135374737 GCAGGTACAATTCATCAAGAAAGGAATTACAACTTCAGAAATGTGTTCAAAATATATCCATACTTTGAC ... i hg18.chr10 C 0 I 12 ... s panTro1.chrUn_random 208115400 69 - 240967748 GCAGCTACTATTCATCAAGAAAGGGATTACAACTTCAGAAATGTGTTCAAAGTGTATCCATACTTTGAT ... ''' )
>>> fused = fuse( block1, block2 )
>>> print(fused) a score=0.0 s hg18.chr10 52686 113 + 135374737 GTGCTAACTTACTGCTCCACAGAAAACATCAATTCTGCTCATGCGCAGGTACAATTCATCAAGAAAGGAATTACAACTTCAGAAATGTGTTCAAAATATATCCATACTTTGAC i hg18.chr10 N 0 I 12 s panTro1.chrUn_random 208115356 113 - 240967748 GTGCTAACTGACTGCTCCAGAGAAAACATCAATTCTGTTCATGTGCAGCTACTATTCATCAAGAAAGGGATTACAACTTCAGAAATGTGTTCAAAGTGTATCCATACTTTGAT
- bx.align.tools.fuse.fuse_list(mafs)
Try to fuse a list of blocks by progressively fusing each adjacent pair.