Git Product home page Git Product logo

uberon's Introduction

Processing Uberon data

DOI: 10.5281/zenodo.45527

Uberon is "an integrated cross-species ontology โ€ฆ representing a variety of anatomical entities. [source]" We use Uberon as the vocabulary to represent anatomical structures for our drug repurposing research.

Execution

To reconstruct the analysis, run the notebooks in the following order:

  1. human-constraint.ipynb: Compares two methods for filtering the ontology for anatomies that exist in humans.
  2. process.ipynb: Downloads and processes the Uberon ontology in OBO format. Creates TSVs of terms, xrefs, and subsets. Additionally, creates Uberon hetio-slim, a subset of Uberon terms for inclusion in our hetnet.

Datasets

The following datasets are created:

License

Uberon content and its derivatives are licensed under CC-BY. All original content in this repository is released as CC0.

uberon's People

Contributors

dhimmel avatar

Stargazers

 avatar

Watchers

 avatar  avatar

uberon's Issues

OBO Dependency

Hi Daniel,

Which OBO package did you use? At the moment "pip install obo" does not work, since it seems no such library exists anymore.

human-constraint.ipynb: RecursionError: maximum recursion depth exceeded

An error occurred in the module below. I used the current version uberon 2021.02.13. But when I used the old version you provided 2015-07-24 Uberon release, there is no error.

The error message is:

---------------------------------------------------------------------------
RecursionError                            Traceback (most recent call last)
<ipython-input-9-8c5d22ff6c90> in <module>
      9     # Find whether term is in humans by seeing if node or its children
     10     # xref specific human terminologies
---> 11     children = get_children(ontology, node, in_keys = {'is_a', 'part_of', 'develops_from'})
     12     child_xrefs = set()
     13     for child in children | {node}:

<ipython-input-7-44d667171172> in get_children(graph, node, in_keys, out_keys)
      4         if key in in_keys:
      5             children.add(u)
----> 6             children |= get_children(graph, u)
      7     for u, v, key in graph.out_edges(node, keys=True):
      8         if key in out_keys:

... last 1 frames repeated, from the frame below ...

<ipython-input-7-44d667171172> in get_children(graph, node, in_keys, out_keys)
      4         if key in in_keys:
      5             children.add(u)
----> 6             children |= get_children(graph, u)
      7     for u, v, key in graph.out_edges(node, keys=True):
      8         if key in out_keys:

RecursionError: maximum recursion depth exceeded
-------------------------------------------------------------------------------------------------------

The error message was as follows, and I tried several things, but it didn't work. What should I do?

-------------------------------------------------------------------------------------------------------
import sys
sys.setrecursionlimit(30000)
print(sys.getrecursionlimit())
-------------------------------------------------------------------------------------------------------
The kernel for  human-constraint.ipynb appears to have died. It will restart automatically.
-------------------------------------------------------------------------------------------------------

Kindly regards

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.