tools.py 文件源码

python
阅读 38 收藏 0 点赞 0 评论 0

项目:KMMMs 作者: blt2114 项目源码 文件源码
def log_p_kmer_table(kmer_counts, p_kmers):
    """log_p_kmer_table calculates the probabilty of an observed kmer table
    given as a multinomial given the multinomial probabilities.  The kmer
    table is preferably collapsed, i.e. if a given sequence is present, its
    reverse complement is not.

    Args:
        kmer_counts: the kmer table
        p_kmers: the multinomial probabilities

    Returns:
        the total log probability as a float
    """
    total = 0
    log_p = 0
    total_p = sum(p_kmers.values())
    for kmer in p_kmers.keys():
        p_kmers[kmer] /= total_p
    for kmer, count in kmer_counts.iteritems():
        log_p += count*np.log(p_kmers[kmer]) - special.gammaln(count+1)
        total += count
    log_p += special.gammaln(total+1)
    return log_p
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号