示例#1
0
    def test_recode_freq_vector_ignores(self):
        """recode_freq_vector: ignored chars are ignored
        """
        freqs = {
            "A": 0.21,
            "B": 0.29,
            "C": 0.05,
            "D": 0.45,
            "X": 0.22,
            "Z": 0.5
        }
        a_def = [("A", "A"), ("B", "B"), ("C", "C"), ("D", "D"), ("X", "X"),
                 ("Z", "Z")]
        expected = {"A": 0.21, "C": 0.05, "D": 0.45}
        self.assertFloatEqual(recode_freq_vector(a_def, freqs), expected)

        freqs = {
            "D": 0.21,
            "E": 0.29,
            "N": 0.05,
            "Q": 0.45,
            "B": 0.26,
            "Z": 0.74,
            "X": 1.0,
        }
        a_def = [("D", "DEN"), ("Q", "Q")]
        expected = {"D": 0.55, "Q": 0.45}
        self.assertFloatEqual(recode_freq_vector(a_def, freqs), expected)
示例#2
0
 def test_recode_counts_and_freqs(self):
     """recode_counts_and_freqs: functions as expected
     """
     alphabet = alphabets["charge_his_3"]
     aa_order = "ACDEFGHIKLMNPQRSTVWY"
     actual = recode_counts_and_freqs(alphabet)
     expected_matrix = recode_count_matrix(alphabet,
                                           count_matrix=DSO78_matrix,
                                           aa_order=aa_order)
     expected_freqs = {}.fromkeys(aa_order, 0.0)
     expected_freqs.update(recode_freq_vector(alphabet, DSO78_freqs))
     expected = (expected_matrix, expected_freqs)
     self.assertEqual(actual, expected)
示例#3
0
    def test_recode_freq_vector(self):
        """recode_freq_vector: bg freqs updated to reflect recoded alphabet"""

        freqs = {"A": 0.21, "E": 0.29, "C": 0.05, "D": 0.45}
        a_def = [("A", "AEC"), ("E", "D")]
        expected = {"A": 0.55, "E": 0.45}
        self.assertEqual(recode_freq_vector(a_def, freqs), expected)
        # reversal of alphabet
        freqs = {"A": 0.21, "E": 0.29, "C": 0.05, "D": 0.45}
        a_def = [("A", "D"), ("E", "C"), ("C", "E"), ("D", "A")]
        expected = {"A": 0.45, "E": 0.05, "C": 0.29, "D": 0.21}
        self.assertEqual(recode_freq_vector(a_def, freqs), expected)

        # no change in freqs (old alphabet = new alphabet)
        freqs = {"A": 0.21, "E": 0.29, "C": 0.05, "D": 0.45}
        a_def = [("A", "A"), ("E", "E"), ("C", "C"), ("D", "D")]
        self.assertEqual(recode_freq_vector(a_def, freqs), freqs)

        freqs = {"A": 0.21, "E": 0.29, "C": 0.05, "D": 0.45}
        a_def = [("X", "AEC"), ("Y", "D")]
        expected = {"X": 0.55, "Y": 0.45}
        self.assertEqual(recode_freq_vector(a_def, freqs), expected)