Документ взят из кэша поисковой машины. Адрес оригинального документа : http://kodomo.fbb.msu.ru/hg/allpy/rev/08494fb2c47a
Дата изменения: Unknown
Дата индексирования: Mon Oct 1 23:52:44 2012
Кодировка:
allpy: 08494fb2c47a

allpy

changeset 190:08494fb2c47a

repeats: visitors for visiting tree items (almost) completed (tree from 10 Nov 2010 of https://docs1.google.com/document/d/1-7kCo7cdYTpHOtPXGMdSG9wxoXh6sIvrNyYyZuCKECs/edit?hl=en#)
author boris (netbook) <bnagaev@gmail.com>
date Thu, 18 Nov 2010 00:01:07 +0300
parents 48cfacae0f79
children 73f9779491ef
files repeats/repeat_joiner.py
diffstat 1 files changed, 17 insertions(+), 2 deletions(-) [+]
line diff
     1.1 --- a/repeats/repeat_joiner.py	Wed Nov 17 21:06:18 2010 +0300
     1.2 +++ b/repeats/repeat_joiner.py	Thu Nov 18 00:01:07 2010 +0300
     1.3 @@ -4,8 +4,9 @@
     1.4  Throuot: [from, to)
     1.5  """
     1.6  
     1.7 +from bx.intervals.intersection import Intersecter, Interval
     1.8 +
     1.9  import config
    1.10 -from bx.intervals.intersection import Intersecter, Interval
    1.11  
    1.12  class Chromosome(Intersecter):
    1.13      pass
    1.14 @@ -34,7 +35,8 @@
    1.15              return self.repeat_pair[0]
    1.16      
    1.17      def edges(self, min_intersection=config.min_intersection):
    1.18 -        return self.thin_edges(min_intersection) + [self.thick_edge()]
    1.19 +        """ visit thick edge at first and then all thin edges """
    1.20 +        return [self.thick_edge()] + self.thin_edges(min_intersection)
    1.21  
    1.22  class RepeatPair(tuple):
    1.23      """
    1.24 @@ -49,3 +51,16 @@
    1.25      dictionary {<chromosome name>: chromosome} 
    1.26      """
    1.27  
    1.28 +    def _treat_repeat(self, used):
    1.29 +        def treat_repeat(repeat):
    1.30 +            if repeat not in used:
    1.31 +                used.add(repeat)
    1.32 +                pass
    1.33 +    return treat_repeat
    1.34 +
    1.35 +
    1.36 +    def full_repeaits(self):
    1.37 +        used = set()
    1.38 +        for chromosome in self.values():
    1.39 +            chromosome.traverse(self._treat_repeat(used))
    1.40 +