Exemple #1
0
 def test_no_context(self):
     genome = Genome(self.gdfilepath)
     chr1 = genome["chr1"]
     tracknames = genome.tracknames_continuous
     data = chr1[100:1000]  # Used to segfault
     chr2 = genome["chrY"]
     chr2.close()  # Make sure manual close doesn't break it
     self.assertTrue(chr1.isopen)
     self.assertFalse(chr2.isopen)
     genome.close()
     self.assertFalse(chr1.isopen)
     self.assertRaises(Exception, iter(chr1).next)
Exemple #2
0
 def test_no_context(self):
     genome = Genome(self.gdfilepath)
     chr1 = genome["chr1"]
     genome.tracknames_continuous  # test access
     chr1[100:1000]  # test access: at one point segfaulted
     chr2 = genome["chrY"]
     chr2.close()  # Make sure manual close doesn't break it
     self.assertTrue(chr1.isopen)
     self.assertFalse(chr2.isopen)
     genome.close()
     self.assertFalse(chr1.isopen)
     self.assertRaises(Exception, next, iter(chr1))
Exemple #3
0
    def test_repr_str(self):
        genome = Genome(self.gdfilepath, mode="r")
        self.assertEqual(repr(genome),
                         "Genome('%s', **{'mode': 'r'})" % self.gdfilepath)
        chr = genome["chr1"]
        if self.mode == "dir":
            self.assertEqual(
                repr(chr), "<Chromosome 'chr1', file='%s/chr1.genomedata'>" %
                self.gdfilepath)
            self.assertEqual(str(chr), "chr1")
        elif self.mode == "file":
            self.assertEqual(
                repr(chr), "<Chromosome 'chr1', file='%s'>" % self.gdfilepath)
            self.assertEqual(str(chr), "chr1")

        genome.close()
Exemple #4
0
    def test_repr_str(self):
        genome = Genome(self.gdfilepath, mode="r")
        self.assertEqual(repr(genome), "Genome('%s', **{'mode': 'r'})" %
                         self.gdfilepath)
        chr = genome["chr1"]
        if self.mode == "dir":
            self.assertEqual(repr(chr),
                             "<Chromosome 'chr1', file='%s/chr1.genomedata'>" %
                             self.gdfilepath)
            self.assertEqual(str(chr), "chr1")
        elif self.mode == "file":
            self.assertEqual(repr(chr),
                             "<Chromosome 'chr1', file='%s'>" %
                             self.gdfilepath)
            self.assertEqual(str(chr), "chr1")

        genome.close()
            INFO = True
        outFile.writelines(line)
    else:
        # rest of the VCF file should now just be the variants
        if line == "":
            break
        line = line.decode('utf-8').strip().split('\t')
        if line[0] != currentChrom:
            chrom = genome["chr"+line[0]]
            currentChrom = "chr"+line[0]
        pos = int(line[1]) - 1 #switch to zero based indexing
        score = chrom[pos,'anc']
        # check to see if there is a GERP score for the position, if not output line and continue
        # We should probably check ot see if the variant is not a SNP, as GERP isn't well defined
        # for non-SNP variants
        if math.isnan(score):
            anc = '.'
        else:
            anc = chr(score)

        if line[7] == '.':
            line[7] = 'AA=%s' % (anc.upper())
        else :
            rsField = ';AA=%s' % (anc.upper())
            line[7] += rsField
        outFile.writelines('\t'.join(line)+'\n')

genome.close()
inFile.close()
outFile.close()