def test_score_str(self): """produce correct score from seq""" data = [ [0.1, 0.3, 0.5, 0.1], [0.25, 0.25, 0.25, 0.25], [0.05, 0.8, 0.05, 0.1], [0.7, 0.1, 0.1, 0.1], [0.6, 0.15, 0.05, 0.2], ] pssm = PSSM(data, "ACTG") seq = "".join("ACTG"[i] for i in [3, 1, 2, 0, 2, 2, 3]) scores = pssm.score_seq(seq) assert_allclose(scores, [-4.481, -5.703, -2.966], atol=1e-3) with self.assertRaises(ValueError): pssm.score_seq(seq[:3])
def test_score_seq_obj(self): """produce correct score from seq""" from cogent3 import DNA data = [ [0.1, 0.3, 0.5, 0.1], [0.25, 0.25, 0.25, 0.25], [0.05, 0.8, 0.05, 0.1], [0.7, 0.1, 0.1, 0.1], [0.6, 0.15, 0.05, 0.2], ] pssm = PSSM(data, "ACTG") seq = DNA.make_seq("".join("ACTG"[i] for i in [3, 1, 2, 0, 2, 2, 3])) scores = pssm.score_seq(seq) assert_allclose(scores, [-4.481, -5.703, -2.966], atol=1e-3)