Pypath also provides access to databases reporting protein complexes, such as CORUM (http://mips.helmholtz-muenchen.de/genre/proj/corum). In this notebook, we take a look at this information.
# Show all the plots inside the notebook
%matplotlib inline
# load packages
import pypath
import igraph # import igraph to use the plot function
import numpy as np
import pandas as pd
import seaborn as sns
# Load the ipython display and image module
from IPython.display import Image
from IPython.display import display
pa = pypath.main.PyPath()
=== d i s c l a i m e r === All data coming with this module either as redistributed copy or downloaded using the programmatic interfaces included in the present module are available under public domain, are free to use at least for academic research or education purposes. Please be aware of the licences of all the datasets you use in your analysis, and please give appropriate credits for the original sources when you publish your results. To find out more about data sources please look at `pypath.descriptions` and `pypath.data_formats.urls`. » New session started, session ID: 'v3cjg' logfile:'./log/v3cjg.log'.
pa.init_network()
:: Loading data from cache previously downloaded from www.uniprot.org :: Ready. Resulted `plain text` of type file object. :: Local file at `/Users/admin/Documents/ltobalina/COMBINE/Projects/PrECISE/Code/Omnipath/cache/ec920965677ac83b8805d72853c79d45-`. :: Loading data from cache previously downloaded from www.uniprot.org :: Ready. Resulted `plain text` of type file object. :: Local file at `/Users/admin/Documents/ltobalina/COMBINE/Projects/PrECISE/Code/Omnipath/cache/ec920965677ac83b8805d72853c79d45-`. :: Loading data from cache previously downloaded from ftp.uniprot.org :: Ready. Resulted `gz extracted data` of type file object. :: Local file at `/Users/admin/Documents/ltobalina/COMBINE/Projects/PrECISE/Code/Omnipath/cache/079410d8e3f429e7699c167b9d4ef3b7-HUMAN_9606_idmapping.dat.gz`. :: Processing ID conversion list: finished, 100.0% » NetPath :: Reading from cache: cache/netpath.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values
» DOMINO :: Reading from cache: cache/domino.edges.pickle :: Loading 'genesymbol' to 'uniprot' mapping table :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values
» AlzPathway :: Reading from cache: cache/alzpathway.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values
» CancerCellMap :: Reading from cache: cache/cancercellmap.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values
» ARN :: Reading from cache: cache/arn.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values
» DeathDomain :: Reading from cache: cache/deathdomain.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values
» ELM :: Reading from cache: cache/elm.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values
» CA1 :: Reading from cache: cache/ca1.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values
» DEPOD :: Reading from cache: cache/depod.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values
» TRIP :: Reading from cache: cache/trip.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values
» HPRD :: Reading from cache: cache/hprd.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `hprd_mechanism` has multiple types of values: str, list WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values
» SPIKE :: Reading from cache: cache/spike.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values
» LMPID :: Reading from cache: cache/lmpid.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values
» dbPTM :: Reading from cache: cache/dbptm.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values
» SignaLink3 :: Reading from cache: cache/signalink3.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `netbiol_is_direct` has multiple types of values: str, list WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `netbiol_effect` has multiple types of values: unicode, str, list WARNING:pypath.logn:### WARNING ###### Edge attribute `netbiol_mechanism` has multiple types of values: str, list
» MatrixDB :: Reading from cache: cache/matrixdb.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `netbiol_effect` has multiple types of values: unicode, list
» InnateDB :: Reading from cache: cache/innatedb.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `netbiol_effect` has multiple types of values: unicode, list
» MPPI :: Reading from cache: cache/mppi.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `netbiol_effect` has multiple types of values: unicode, list
» NRF2ome :: Reading from cache: cache/nrf2ome.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `netbiol_effect` has multiple types of values: unicode, list
» Signor :: Reading from cache: cache/signor.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `netbiol_effect` has multiple types of values: unicode, list
» Macrophage :: Reading from cache: cache/macrophage.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `netbiol_effect` has multiple types of values: unicode, list
» PDZBase :: Reading from cache: cache/pdzbase.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `netbiol_effect` has multiple types of values: unicode, list
» PhosphoSite :: Reading from cache: cache/phosphosite.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `netbiol_effect` has multiple types of values: unicode, list
» BioGRID :: Reading from cache: cache/biogrid.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `netbiol_effect` has multiple types of values: unicode, list
» Guide2Pharma :: Reading from cache: cache/guide2pharma.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `netbiol_effect` has multiple types of values: unicode, list
» DIP :: Reading from cache: cache/dip.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `netbiol_effect` has multiple types of values: unicode, list
» phosphoELM :: Reading from cache: cache/phosphoelm.edges.pickle :: Processing nodes: finished, 100.0% :: Processing edges: finished, 100.0% :: Processing attributes: finished, 100.0%
WARNING:pypath.logn:### WARNING ###### Vertex attribute `name` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `label` has multiple types of values: str, unicode WARNING:pypath.logn:### WARNING ###### Vertex attribute `exp` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `negative_refs` has only None values WARNING:pypath.logn:### WARNING ###### Edge attribute `netbiol_effect` has multiple types of values: unicode, list
:: Comparing with reference lists... done. » 29949 interactions between 7476 nodes from 27 resources have been loaded, for details see the log: ./log/v3cjg.log
# remove links reported in papers with more than 50 interactions (by default)
pa.remove_htp()
:: Interactions from only high-throughput resources have been removed. 4009 interactions removed. Number of edges decreased from 29949 to 25940, number of vertices from 7476 to 6820.
# load CORUM database (http://mips.helmholtz-muenchen.de/genre/proj/corum)
pa.load_corum()
:: Loading data from cache previously downloaded from mips.helmholtz-muenchen.de :: Ready. Resulted `plain text` of type file object. :: Local file at `/Users/admin/Documents/ltobalina/COMBINE/Projects/PrECISE/Code/Omnipath/cache/0ae62365c8f43bed0f7ddadd90c948f0-allComplexes.csv`. :: Processing data: finished, 100.0% :: Loading 'uniprot-sec' to 'uniprot-pri' mapping table :: Loading 'genesymbol' to 'trembl' mapping table :: Loading 'genesymbol' to 'swissprot' mapping table :: Loading 'genesymbol-syn' to 'swissprot' mapping table
The following are 5 frequently mutated genes in prostate cancer. We will check if any of them belongs to a protein complex.
query_nodes = set(['PTEN', 'FOXA1', 'TP53', 'SPOP', 'AR'])
for i_node in query_nodes:
i_complex_list = pa.gs(i_node)['complexes']['corum'].keys()
if len(i_complex_list)>0:
print("Gene {} is reported in the following complexes in the CORUM database:".format(i_node))
for i in i_complex_list:
print("\t{}".format(i))
else:
print("Gene {} is not reported to belong to any protein complex in the CORUM database".format(i_node))
print("---")
Gene FOXA1 is not reported to belong to any protein complex in the CORUM database --- Gene PTEN is not reported to belong to any protein complex in the CORUM database --- Gene SPOP is reported in the following complexes in the CORUM database: Ubiquitin E3 ligase --- Gene AR is reported in the following complexes in the CORUM database: AR-AKT-APPL complex AOF2-AR complex --- Gene TP53 is reported in the following complexes in the CORUM database: CNS-P53 complex p300-MDM2-p53 protein complex FHL2-p53-HIPK2 complex Axin-p53-HIPK2 complex P53-BARD1-Ku70 complex DAXX-Axin-p53-HIPK2 complex hSIR2-p53 complex FOXO3-TP53 complex, oxidative stress stimulated YY1-MDM2-p53 complex Daxx-Axin-p53 complex p53-BCL2 complex p53-SP1 complex NUMB-TP53-MDM2 complex MSH2/6-BLM-p53-RAD51 complex p53 homotetramer complex Er-alpha-p53-hdm2 complex ---
We can check the details of these complexes, for instance, the Ubiquitin E3 ligase complex in which SPOP participates.
prot_complex_details = pa.gs("SPOP")['complexes']['corum']['Ubiquitin E3 ligase']
prot_complex_details
{'all_members': [u'Q13618', u'Q9UER7', u'O43791'], 'all_members_original': [u'Q13618', u'Q9UER7', u'O43791'], 'diseases': u'', 'full_name': u'Ubiquitin E3 ligase (SPOP, DAXX, CUL3)', 'functions': u'Ubiquitin E3 ligases covalently attach ubiquitin to a lysine residue on a target protein. Polyubiquitination marks proteins for degradation by the proteasome. SPOP serves as an adaptor of Daxx for the ubiquitination by Cul3-based ubiquitin ligase and subsequent degradation by the proteasome. Experiments suggest that SPOP/Cul3-ubiquitin ligase plays an essential role in the control of Daxx level and, thus, in the regulation of Daxx-mediated cellular processes, including transcriptional regulation and apoptosis.', 'references': [u'16524876']}
The references field contains the pmid of the article supporting this complex. We can query some details of it with the following code:
ref_pmid = prot_complex_details['references'][0]
pypath.main.Reference(ref_pmid).info()
# we can also open the webpage with the article abstract in a separate window with the following command
# pypath.main.Reference(ref_pmid).open()
:: Retrieving data from NCBI e-utils: working on it, 1/1 :: Loading data from cache previously downloaded from eutils.ncbi.nlm.nih.gov :: Ready. Resulted `plain text` of type file object. :: Local file at `/Users/admin/Documents/ltobalina/COMBINE/Projects/PrECISE/Code/Omnipath/cache/e745ee0c568cc26ca9bdd379ee03019b-esummary.fcgi`. :: Retrieving data from NCBI e-utils: finished, 1/1
{u'16524876': {u'articleids': [{u'idtype': u'pii', u'idtypen': 4, u'value': u'M600204200'}, {u'idtype': u'doi', u'idtypen': 3, u'value': u'10.1074/jbc.M600204200'}, {u'idtype': u'pubmed', u'idtypen': 1, u'value': u'16524876'}, {u'idtype': u'eid', u'idtypen': 8, u'value': u'16524876'}, {u'idtype': u'rid', u'idtypen': 8, u'value': u'16524876'}], u'attributes': [u'Has Abstract'], u'authors': [{u'authtype': u'Author', u'clusterid': u'', u'name': u'Kwon JE'}, {u'authtype': u'Author', u'clusterid': u'', u'name': u'La M'}, {u'authtype': u'Author', u'clusterid': u'', u'name': u'Oh KH'}, {u'authtype': u'Author', u'clusterid': u'', u'name': u'Oh YM'}, {u'authtype': u'Author', u'clusterid': u'', u'name': u'Kim GR'}, {u'authtype': u'Author', u'clusterid': u'', u'name': u'Seol JH'}, {u'authtype': u'Author', u'clusterid': u'', u'name': u'Baek SH'}, {u'authtype': u'Author', u'clusterid': u'', u'name': u'Chiba T'}, {u'authtype': u'Author', u'clusterid': u'', u'name': u'Tanaka K'}, {u'authtype': u'Author', u'clusterid': u'', u'name': u'Bang OS'}, {u'authtype': u'Author', u'clusterid': u'', u'name': u'Joe CO'}, {u'authtype': u'Author', u'clusterid': u'', u'name': u'Chung CH'}], u'availablefromurl': u'', u'bookname': u'', u'booktitle': u'', u'chapter': u'', u'doccontriblist': [], u'docdate': u'', u'doctype': u'citation', u'edition': u'', u'elocationid': u'', u'epubdate': u'2006 Mar 8', u'essn': u'1083-351X', u'fulljournalname': u'The Journal of biological chemistry', u'history': [{u'date': u'2006/03/08 00:00', u'pubstatus': u'aheadofprint'}, {u'date': u'2006/03/10 09:00', u'pubstatus': u'pubmed'}, {u'date': u'2006/06/29 09:00', u'pubstatus': u'medline'}, {u'date': u'2006/03/10 09:00', u'pubstatus': u'entrez'}], u'issn': u'0021-9258', u'issue': u'18', u'lang': [u'eng'], u'lastauthor': u'Chung CH', u'locationlabel': u'', u'medium': u'', u'nlmuniqueid': u'2985121R', u'pages': u'12664-72', u'pmcrefcount': 46, u'pubdate': u'2006 May 5', u'publisherlocation': u'', u'publishername': u'', u'pubstatus': u'256', u'pubtype': [u'Journal Article'], u'recordstatus': u'PubMed - indexed for MEDLINE', u'references': [], u'reportnumber': u'', u'sortfirstauthor': u'Kwon JE', u'sortpubdate': u'2006/05/05 00:00', u'sorttitle': u'btb domain containing speckle type poz protein spop serves as an adaptor of daxx for ubiquitination by cul3 based ubiquitin ligase ', u'source': u'J Biol Chem', u'srccontriblist': [], u'srcdate': u'', u'title': u'BTB domain-containing speckle-type POZ protein (SPOP) serves as an adaptor of Daxx for ubiquitination by Cul3-based ubiquitin ligase.', u'uid': u'16524876', u'vernaculartitle': u'', u'viewcount': 109, u'volume': u'281'}, u'uids': [u'16524876']}
We might be curious about wether all the proteins in the complex share the same neighbours.
proteins_in_complex = prot_complex_details['all_members']
for i_protein in proteins_in_complex:
print("Neighbours of {}: ".format(pa.up(i_protein)['label']))
print(', '.join([i['label'] for i in pa.up_neighbors(i_protein)]))
print('---')
Neighbours of CUL3: SKP1, RBX1, KEAP1, NFE2L2, DCUN1D1, DCUN1D2, DCUN1D3, SPOP, KLHL3, CAND1, KLHL25, KCTD5, KLHL11, KCTD7, KCTD11, UBXN7 --- Neighbours of DAXX: HDAC2, MDM2, MAPK3, PIN1, RIPK3, PML, RELB, ETS1, TP53, MAP3K5, SUMO1, HDAC1, TGFBR2, HIST1H4C, HIST1H3B, AIRE, CSNK2A1, FAS, ATM, CFLAR, UBE2I, SUMO2, HIPK2, SPOP, HDAC3, SUMO3, H3F3B, RASSF1, HIST2H3D, MCRS1, ATRX --- Neighbours of SPOP: TRAF6, H2AFY, DAXX, CUL3 ---
We can see that these genes do not necesarily share the same neighbours. In fact, they can also participate in other complexes:
print("Gene {} is reported in the following complexes in the CORUM database:".format("CUL3"))
print(pa.gs("CUL3")['complexes']['corum'].keys())
print("---")
print("Gene {} is reported in the following complexes in the CORUM database:".format("DAXX"))
print(pa.gs("DAXX")['complexes']['corum'].keys())
print("---")
Gene CUL3 is reported in the following complexes in the CORUM database: [u'Ubiquitin E3 ligase', u'CAND1-CUL3-RBX1 complex'] --- Gene DAXX is reported in the following complexes in the CORUM database: [u'DAXX-DNMT1-DMAP1 complex', u'Daxx-Axin-p53 complex', u'ATRX-DAXX complex', u'Ubiquitin E3 ligase', u'DAXX-AXIN complex', u'DAXX-Axin-p53-HIPK2 complex'] ---