def gfa2_line_to_la(reads: Mapping[str, Read]):
def mapper(line: str):
if not line.startswith('E'):
raise ValueError('Given GFA2 line is not an edge.')
sid1, sid2, arange, brange, alignment, tags = gfa2_parse_edge(line)
a_read = reads[sid1[:-1]]
b_read = reads[sid2[:-1]]
return LocalAlignment(
a_read.with_orientation(sid1[-1]),
b_read.with_orientation(sid2[-1]),
arange, brange, alignment)
return mapper
评论列表
文章目录