Esempio n. 1
0
def main():
    input_fname = sys.argv[1]
    out_fname = sys.argv[2]

    reader = BedGraphReader( open( input_fname ) )

    # Fill array from reader
    d = array_tree_dict_from_reader( reader, {}, block_size=BLOCK_SIZE )

    for array_tree in d.itervalues():
        array_tree.root.build_summary()

    FileArrayTreeDict.dict_to_file( d, open( out_fname, "w" ) )
Esempio n. 2
0
    def setUp(self):
        tree = ArrayTree(10000, 10)  # max value of 10000, each block has 10 numbers
        for i in range(5000):
            tree[i] = i

        # Insert extra copies to test frequency
        for i in range(3000):
            tree[i] = i

        tree.set_range(5000, 9001, 100)
        tree.root.build_summary()

        d = {'test': tree}
        f = tempfile.TemporaryFile()
        FileArrayTreeDict.dict_to_file(d, f)
        f.seek(0)
        self.filearraytreedict = FileArrayTreeDict(f)
        self.filearraytree = self.filearraytreedict['test']
 def setUp(self):
     tree = ArrayTree(10000, 10) # max value of 10000, each block has 10 numbers
     for i in range(5000):
         tree[i] = i
     
     # Insert extra copies to test frequency
     for i in range(3000):
         tree[i] = i
     
     tree.set_range(5000, 9001, 100)
     tree.root.build_summary()
     
     d = {'test': tree}
     f = tempfile.TemporaryFile()
     FileArrayTreeDict.dict_to_file( d, f )
     f.seek(0)
     self.filearraytreedict = FileArrayTreeDict(f)
     self.filearraytree = self.filearraytreedict['test']
def main():

    sizes_fname = sys.argv[1]
    out_fname = sys.argv[2]

    sizes = {}
    for line in open(sizes_fname):
        fields = line.split()
        sizes[fields[0]] = int(fields[1])

    # Fill array from wiggle
    d = array_tree_dict_from_reader(WiggleReader(sys.stdin), sizes)

    for value in d.values():
        value.root.build_summary()

    with open(out_fname, "w") as f:
        FileArrayTreeDict.dict_to_file(d, f)
Esempio n. 5
0
    def test_big(self):
        tree = ArrayTree(2147483647, 1000)  # What we use for tracks
        for i in range(5000):
            tree[i] = i

        # Insert extra copies to test frequency
        for i in range(3000):
            tree[i] = i

        tree.set_range(5000, 9001, 100)
        tree.set_range(14000000, 15000000, 200)
        tree.root.build_summary()

        d = {'test': tree}
        f = tempfile.TemporaryFile()
        FileArrayTreeDict.dict_to_file(d, f)
        f.seek(0)
        at = FileArrayTreeDict(f)['test']

        lvl1 = at.get_summary(14000000, 1)
        avgs = [float(_) for _ in lvl1.sums/lvl1.counts]
        self.assertEqual(len(avgs), 1000)
        self.assertEqual(avgs, [200 for i in range(0, 1000)])
 def test_big(self):
     tree = ArrayTree(2147483647, 1000) # What we use for tracks
     for i in range(5000):
         tree[i] = i
     
     # Insert extra copies to test frequency
     for i in range(3000):
         tree[i] = i
     
     tree.set_range(5000, 9001, 100)
     tree.set_range(14000000, 15000000, 200)
     tree.root.build_summary()
     
     d = {'test': tree}
     f = tempfile.TemporaryFile()
     FileArrayTreeDict.dict_to_file( d, f )
     f.seek(0)
     at = FileArrayTreeDict(f)['test']
     
     lvl1 = at.get_summary(14000000, 1)
     avgs = [float(_) for _ in lvl1.sums/lvl1.counts]
     self.assertEqual( len(avgs), 1000 )
     self.assertEqual( avgs, [ 200 for i in range(0, 1000)] )