Mercurial > repos > iuc > ngsutils_bam_filter
comparison ngsutils/support/llh.py @ 2:7a68005de299 draft
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ngsutils commit 9a243c616a4a3156347e38fdb5f35863ae5133f9
author | iuc |
---|---|
date | Sun, 27 Nov 2016 15:01:21 -0500 |
parents | 4e4e4093d65d |
children |
comparison
equal
deleted
inserted
replaced
1:8187a729d9f4 | 2:7a68005de299 |
---|---|
1 ''' | 1 ''' |
2 Methods for calculating log-likelihoods for nucleotide frequencies | 2 Methods for calculating log-likelihoods for nucleotide frequencies |
3 ''' | 3 ''' |
4 import collections | |
4 import math | 5 import math |
5 import collections | 6 |
6 from ngsutils.support import memoize | 7 from ngsutils.support import memoize |
7 | 8 |
8 _default_background = {'A': 0.3, 'T': 0.3, 'C': 0.2, 'G': 0.2} | 9 _default_background = {'A': 0.3, 'T': 0.3, 'C': 0.2, 'G': 0.2} |
9 | 10 |
10 NucleotideLogLikelihood = collections.namedtuple('NucleotideLogLikelihood', 'A C G T pseudo') | 11 NucleotideLogLikelihood = collections.namedtuple('NucleotideLogLikelihood', 'A C G T pseudo') |
12 | |
11 | 13 |
12 @memoize | 14 @memoize |
13 def pseudo_count(N, bg): | 15 def pseudo_count(N, bg): |
14 ''' | 16 ''' |
15 >>> pseudo_count(100, _default_background['A']) | 17 >>> pseudo_count(100, _default_background['A']) |
47 freqT = Tp / Np | 49 freqT = Tp / Np |
48 | 50 |
49 return NucleotideLogLikelihood(math.log(freqA / bg['A']), math.log(freqC / bg['C']), math.log(freqG / bg['G']), math.log(freqT / bg['T']), pseudo) | 51 return NucleotideLogLikelihood(math.log(freqA / bg['A']), math.log(freqC / bg['C']), math.log(freqG / bg['G']), math.log(freqT / bg['T']), pseudo) |
50 | 52 |
51 | 53 |
52 | |
53 if __name__ == '__main__': | 54 if __name__ == '__main__': |
54 import doctest | 55 import doctest |
55 doctest.testmod() | 56 doctest.testmod() |