Пример #1
0
    def split(self, split_by="123"):
        """Splits a MSA and returns a dictionary of keys to MSAs,
        using the keys in the 'split_by' parameter at the top
        level. See also paleomix.common.sequences.split."""
        self.validate(self)
        if not split_by:
            raise TypeError("No partitions to split by specified")

        results = dict((key, set()) for key in split_by)
        for record in self:
            for (key, partition) in split(record.sequence, split_by).items():
                results[key].add(FASTA(record.name, None, partition))

        for (key, value) in results.items():
            results[key] = MSA(value)

        return results
Пример #2
0
    def split(self, split_by = "123"):
        """Splits a MSA and returns a dictionary of keys to MSAs,
        using the keys in the 'split_by' parameter at the top
        level. See also paleomix.common.sequences.split."""
        self.validate(self)
        if not split_by:
            raise TypeError("No partitions to split by specified")

        results = dict((key, set()) for key in split_by)
        for record in self:
            for (key, partition) in split(record.sequence, split_by).iteritems():
                results[key].add(FASTA(record.name, None, partition))

        for (key, value) in results.items():
            results[key] = MSA(value)

        return results
Пример #3
0
def test_split__empty_sequence():
    assert_equal(split(""), {"1": "", "2": "", "3": ""})
Пример #4
0
def test_split__partial_group():
    expected = {"1": "AA", "2": "CA", "3": "G"}
    assert split("ACGAA") == expected
Пример #5
0
def test_split__empty_group():
    expected = {"1": "A", "2": "C", "3": ""}
    assert split("AC") == expected
Пример #6
0
def test_split__no_split_by():
    split("", split_by="")
Пример #7
0
def test_split__empty_group():
    expected = {"1": "A", "2": "C", "3": ""}
    assert_equal(split("AC"), expected)
Пример #8
0
def test_split__two_groups():
    assert_equal(split("ACGCAT", "112"), {"1": "ACCA", "2": "GT"})
Пример #9
0
def test_split__empty_sequence():
    assert split("") == {"1": "", "2": "", "3": ""}
Пример #10
0
def test_split__partial_group():
    expected = {"1": "AA", "2": "CA", "3": "G"}
    assert_equal(split("ACGAA"), expected)
Пример #11
0
def test_split__empty_group():
    expected = {"1": "A", "2": "C", "3": ""}
    assert_equal(split("AC"), expected)
Пример #12
0
def test_split__three_groups():
    expected = {"1": "AC", "2": "CA", "3": "GT"}
    assert_equal(split("ACGCAT", "123"), expected)
    assert_equal(split("ACGCAT"), expected)
Пример #13
0
def test_split__two_groups():
    assert_equal(split("ACGCAT", "112"), {"1": "ACCA", "2": "GT"})
Пример #14
0
def test_split__single_group():
    assert_equal(split("ACGCAT", "111"), {'1': 'ACGCAT'})
Пример #15
0
def test_split__no_split_by():
    split("", split_by="")
Пример #16
0
def test_split__single_group():
    assert_equal(split("ACGCAT", "111"), {'1': 'ACGCAT'})
Пример #17
0
def test_split__no_split_by():
    with pytest.raises(ValueError, match="No split_by specified"):
        split("", split_by="")
Пример #18
0
def test_split__three_groups():
    expected = {"1": "AC", "2": "CA", "3": "GT"}
    assert_equal(split("ACGCAT", "123"), expected)
    assert_equal(split("ACGCAT"), expected)
Пример #19
0
def test_split__single_group():
    assert split("ACGCAT", "111") == {"1": "ACGCAT"}
Пример #20
0
def test_split__partial_group():
    expected = {"1": "AA", "2": "CA", "3": "G"}
    assert_equal(split("ACGAA"), expected)
Пример #21
0
def test_split__two_groups():
    assert split("ACGCAT", "112") == {"1": "ACCA", "2": "GT"}
Пример #22
0
def test_split__three_groups():
    expected = {"1": "AC", "2": "CA", "3": "GT"}
    assert split("ACGCAT", "123") == expected
    assert split("ACGCAT") == expected
Пример #23
0
def test_split__empty_sequence():
    assert_equal(split(""), {"1": "", "2": "", "3": ""})