INNER CODE UNIT · Python

merge_regions

cbg-ethz/V-pipe · workflow/scripts/alignmentIntervals.py:153

    def merge_regions(intervals_new, intervals_old):
        """
        Merge intervals by:
        (1) sorting the intervals in decreasing order, and
        (2) iterate through intervals, comparing the current interval with the
            last one. If the interval overlap, merge both intervals into one
        """
        intervals = intervals_old + intervals_new
        intervals_sorted = sorted(intervals, key=lambda tup: tup[0])
        intervals_merged = []

        for interval in intervals_sorted:
            if not intervals_merged:
                intervals_merged.append(interval)
            else:
                last = intervals_merged[-1]
                # Test for overlap between current interval and the last one.
                # We know that last[0] <= interval[0]

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…