示例#1
0
def make_ontology_with_annotation() -> pyhpo.ontology.OntologyClass:
    """
    Generates the following Ontology
    - HP:0001
        - HP:0011
            - HP:0021               <- Gene/Disease 0 / Negative Disease 2
                - HP:0031(*)
        - HP:0012                   <- Gene/Disease 1
            - HP:0031(*)
                - HP:0041
        - HP:0013

    """

    Gene.clear()
    Omim.clear()
    Orpha.clear()
    Decipher.clear()

    items = make_terms()

    terms = Ontology(from_obo_file=False)
    for item in items:
        terms._append(item)

    terms._connect_all()

    genes = make_genes(2)
    genes[0].hpo.add(21)
    genes[1].hpo.add(12)

    omim = make_omim(3)
    omim[0].hpo.add(21)
    omim[1].hpo.add(12)
    omim[2].negative_hpo.add(21)

    decipher = make_decipher(3)
    decipher[0].hpo.add(21)
    decipher[1].hpo.add(12)
    decipher[2].negative_hpo.add(21)

    orpha = make_orpha(3)
    orpha[0].hpo.add(21)
    orpha[1].hpo.add(12)
    orpha[2].negative_hpo.add(21)

    ds._add_omim_to_ontology(terms)
    ds._add_decipher_to_ontology(terms)
    ds._add_orpha_to_ontology(terms)
    _add_genes_to_ontology(terms)

    return terms
示例#2
0
    def test_indexing(self):
        def subindex_length(x):
            return (
                len(x.keys()),
                len(x._indicies.keys()),
            )

        self.assertEqual(subindex_length(Orpha), (0, 0))
        _ = Orpha(diseaseid=1, name='Gaucher')
        self.assertEqual(subindex_length(Orpha), (1, 1))
        _ = Orpha(diseaseid=2, name='Fabry')
        self.assertEqual(subindex_length(Orpha), (2, 2))
        Orpha.clear()
        self.assertEqual(subindex_length(Orpha), (0, 0))
示例#3
0
 def setUp(self):
     Orpha.clear()
     self.ontology = make_ontology()
     self.orpha_diseases = make_orpha(5)
示例#4
0
 def tearDown(self):
     Orpha.clear()
示例#5
0
 def setUp(self):
     Orpha.clear()
示例#6
0
def tearDown():
    Gene.clear()
    Omim.clear()
    Orpha.clear()
    Decipher.clear()
示例#7
0
def make_orpha(n) -> List[pyhpo.annotations.DiseaseSingleton]:
    Orpha.clear()
    return [Orpha(diseaseid=i, name='Orpha{}'.format(i)) for i in range(n)]