def gen_pseudo_counts(): for pseudo_count in [ 0.00, 0.01, 0.10, 0.25, 0.50, 0.75, 1.00, ]: biopsy.PssmParameters.singleton().pseudo_counts = pseudo_count biopsy.clear_pssm_cache() yield "Pseudo-count: %.2f" % pseudo_count
def test_pssm_pseudo_counts(): sascha_pssms = biopsy.SequenceVec() sascha_acc = 'M00975' # sascha_seq = 'gtaaaccaggctgcctGAgaacttgttgcgaatcc' sascha_seq = 'ttgttgcga' sascha_seq = 'ttgttgcaa' # plot_likelihoods( biopsy.get_pssm( 'M00975' ), 'M00975' ) # plot_likelihoods( biopsy.get_pssm( 'R02146' ), 'R02146' ) print 'Binding,Background,odds,p(binding),cumulative p(binding),Sequence' biopsy.PssmParameters.singleton().use_p_value = True; # biopsy.PssmParameters.singleton().binding_background_odds_prior = 1; for pc in [ 0.0, 0.25, 0.5, 1.0, 2.0 ]: # force cache load biopsy.get_pssm( sascha_acc ) biopsy.clear_pssm_cache() biopsy.PssmParameters.singleton().pseudo_counts = pc p = biopsy.get_pssm( sascha_acc ) score = biopsy.score_pssm( p.pssm, sascha_seq ) ( bind, back, cum_bind, cum_back, odds_ratio, cum_odds_ratio, p_bind, cum_p_bind, p_value_p_bind ) = biopsy.get_pssm_likelihoods_for_score( p, score ) print pc, print \ '%f,%f,%f,%f,%f,%f,%f' \ % \ ( bind, back, cum_bind, cum_back, p_bind, cum_p_bind, p_value_p_bind ) biopsy.plot_likelihoods( p, sascha_acc + ': ' + str( pc ), score ) # print 'Trying with standard distributions' # biopsy.PssmParameters.singleton().use_cumulative_dists = False; # hits = biopsy.HitVec() # biopsy.score_pssm_on_sequence( sascha_acc, sascha_seq, 0.001, hits ) # print hits print 'Trying with cumulative distributions' biopsy.PssmParameters.singleton().use_cumulative_dists = True; hits = biopsy.HitVec() biopsy.score_pssm_on_sequence( sascha_acc, sascha_seq, 0.001, hits ) print hits print
def test_pssm_pseudo_counts(): sascha_pssms = biopsy.SequenceVec() sascha_acc = 'M00975' # sascha_seq = 'gtaaaccaggctgcctGAgaacttgttgcgaatcc' sascha_seq = 'ttgttgcga' sascha_seq = 'ttgttgcaa' # plot_likelihoods( biopsy.get_pssm( 'M00975' ), 'M00975' ) # plot_likelihoods( biopsy.get_pssm( 'R02146' ), 'R02146' ) print 'Binding,Background,odds,p(binding),cumulative p(binding),Sequence' biopsy.PssmParameters.singleton().use_p_value = True # biopsy.PssmParameters.singleton().binding_background_odds_prior = 1; for pc in [0.0, 0.25, 0.5, 1.0, 2.0]: # force cache load biopsy.get_pssm(sascha_acc) biopsy.clear_pssm_cache() biopsy.PssmParameters.singleton().pseudo_counts = pc p = biopsy.get_pssm(sascha_acc) score = biopsy.score_pssm(p.pssm, sascha_seq) (bind, back, cum_bind, cum_back, odds_ratio, cum_odds_ratio, p_bind, cum_p_bind, p_value_p_bind) = biopsy.get_pssm_likelihoods_for_score(p, score) print pc, print \ '%f,%f,%f,%f,%f,%f,%f' \ % \ ( bind, back, cum_bind, cum_back, p_bind, cum_p_bind, p_value_p_bind ) biopsy.plot_likelihoods(p, sascha_acc + ': ' + str(pc), score) # print 'Trying with standard distributions' # biopsy.PssmParameters.singleton().use_cumulative_dists = False; # hits = biopsy.HitVec() # biopsy.score_pssm_on_sequence( sascha_acc, sascha_seq, 0.001, hits ) # print hits print 'Trying with cumulative distributions' biopsy.PssmParameters.singleton().use_cumulative_dists = True hits = biopsy.HitVec() biopsy.score_pssm_on_sequence(sascha_acc, sascha_seq, 0.001, hits) print hits print