Created
October 20, 2015 20:48
-
-
Save felipealbrecht/0e61b615f0ca018510cc to your computer and use it in GitHub Desktop.
DeepBlue Tutorial - BioSources
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#DeepBlue organizes the Biological Names into BioSources and Samples. | |
#BioSources are biological entities, e.g. Cell Lins, Cell Types, Tissues, and Organs. | |
#They are imported from three ontologies: Cell Type, Experimental Factor Ontology, and Uber Anatomy Ontology. | |
#They are organized hierarchicaly and the BioSource terms may contain synonyms. | |
import xmlrpclib | |
# Before going further, we must set up the client: | |
url = "http://deepblue.mpi-inf.mpg.de/xmlrpc" | |
server = xmlrpclib.Server(url, encoding='UTF-8', allow_none=True) | |
# You can use the anonymous key or your own user key | |
user_key = "anonymous_key" | |
# Use the command list_biosources for listing all biosources: | |
(status, biosources) = server.list_biosources(None, user_key) | |
len(biosources) | |
# It is expected more than 17.000 biosources | |
# As DeepBlue uses Ontologies, the common names are all included. It can be verified with the is_biosource command. | |
server.is_biosource("blood", user_key) | |
# output: ['okay', 'blood'] | |
server.is_biosource("brain", user_key) | |
# output: ['okay', 'brain'] | |
# We may not know all terms, for example, the CD4 Cell Type Family. | |
# For example, if we execute the is_biosource command with "CD4" as parameter, we receive the information that it is not a BioSource: | |
server.is_biosource("CD4", user_key) | |
# output: ['error', "104000:Invalid BioSource Name 'CD4'. No BioSource or Synonym was defined with this name."] | |
#In this case, we can use the list_similar_biosources to list all BioSources which the names are similar: | |
server.list_similar_biosources("CD4", user_key) | |
# Output (partial) : | |
# ['okay', | |
# [['bs1264', | |
# 'CD34-positive, CD41-positive, CD42-negative megakaryocyte progenitor cell'], | |
# ['bs852', 'CD4-positive, alpha-beta intraepithelial T cell'], | |
# ['bs851', 'CD4-positive, alpha-beta thymocyte'], | |
# ['bs846', 'CD4-negative, CD8-negative type I NK T cell'], | |
# ['bs845', | |
# 'CD4-negative, CD8-negative type I NK T cell secreting interferon-gamma'], | |
# ['bs844', | |
# 'CD4-negative, CD8-negative type I NK T cell secreting interleukin-4'], | |
# It is possible to obtain the BioSources hierarchy: | |
server.get_biosource_parents('CD4-positive, alpha-beta intraepithelial T cell', user_key) | |
# Output: | |
# ['okay', | |
# [['bs851', 'CD4-positive, alpha-beta thymocyte'], | |
# ['bs868', 'alpha-beta intraepithelial T cell'], | |
# ['bs858', 'CD4-positive, alpha-beta T cell']]] | |
server.get_biosource_parents('CD4-positive, alpha-beta T cell', user_key) | |
# Output: | |
# ['okay', [['bs856', 'mature alpha-beta T cell'], ['bs9347', 'venous blood']]] | |
server.get_biosource_parents('mature alpha-beta T cell', user_key) | |
# Output | |
# ['okay', | |
# [['bs788', 'immature alpha-beta T cell'], | |
# ['bs787', 'alpha-beta T cell'], | |
# ['bs914', 'mature T cell']]] | |
# Also, it is very easy to obtain the terms that are under other term, for example, all terms that are under blood: | |
server.get_biosource_children('blood', user_key) | |
# Output (partial) : | |
# ['okay', | |
# [['bs9343', 'blood'], | |
# ['bs9344', 'capillary blood'], | |
# ['bs9345', 'arterial blood'], | |
# ['bs9346', 'blood clot'], | |
# ['bs8899', 'umbilical cord blood'], | |
# The BioSources may have synonyms: | |
server.get_biosource_synonyms("blood", user_key) | |
# Output: | |
#['okay', | |
# [['bs9343', 'blood'], | |
# ['bs9343', 'portion of blood'], | |
# ['bs9343', 'vertebrate blood'], | |
# ['bs9343', 'whole blood']]] | |
server.get_biosource_synonyms("T Cell", user_key) | |
# Output: | |
#['okay', | |
# [['bs786', 'T cell'], | |
# ['bs786', 'T lymphocyte'], | |
# ['bs786', 'Th2'], | |
# ['bs786', 'Th1'], | |
# ['bs786', 'T-lymphocytes'], | |
# ['bs786', 'pancreatic T effector cell']]] | |
# The next tutorial will present how to use and access the Experiments related to the desired BioSource. | |
# We will do our best efforts to make the BioSource names, synonyms, and hierarchy correct, | |
# but it is an automatized process that may lead to mistakes. | |
# Please, inform us at http://deepblue.userecho.com/list/37282-general/ if you find any innacurate information. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment