|
10 | 10 | from Bio import Seq
|
11 | 11 | import logging
|
12 | 12 | from fractions import Fraction
|
13 |
| -from operator import itemgetter |
14 | 13 | from aligntools import CigarHit, connect_nonoverlapping_cigar_hits, drop_overlapping_cigar_hits, CigarActions
|
15 | 14 |
|
16 | 15 | from micall.core.project_config import ProjectConfig
|
17 | 16 | from micall.core.plot_contigs import plot_stitcher_coverage
|
18 | 17 | from micall.utils.contig_stitcher_context import context, StitcherContext
|
19 | 18 | from micall.utils.contig_stitcher_contigs import GenotypedContig, AlignedContig
|
20 | 19 | from micall.utils.consensus_aligner import align_consensus
|
21 |
| -from micall.utils.overlap_stitcher import align_queries, calculate_concordance, disambiguate_concordance |
| 20 | +from micall.utils.overlap_stitcher import align_queries, calculate_concordance, sort_concordance_indexes |
22 | 21 | import micall.utils.contig_stitcher_events as events
|
23 | 22 |
|
24 | 23 |
|
@@ -281,11 +280,7 @@ def find_overlapping_contig(self: AlignedContig, aligned_contigs):
|
281 | 280 | def concordance_to_cut_points(left_overlap, right_overlap, aligned_left, aligned_right, concordance):
|
282 | 281 | """ Determine optimal cut points for stitching based on sequence concordance in the overlap region. """
|
283 | 282 |
|
284 |
| - concordance_d = list(disambiguate_concordance(concordance)) |
285 |
| - sorted_concordance_indexes = [i for i, v in sorted(enumerate(concordance_d), |
286 |
| - key=itemgetter(1), |
287 |
| - reverse=True, |
288 |
| - )] |
| 283 | + sorted_concordance_indexes = sort_concordance_indexes(concordance) |
289 | 284 |
|
290 | 285 | def remove_dashes(s: str):
|
291 | 286 | return s.replace('-', '')
|
|
0 commit comments