In [16]:
import json
from pprint import pprint

with open('./sample-simulation/subnet-d3.json') as data_file:    
    tree = json.load(data_file)

In [18]:
from goatools import obo_parser
oboUrl = './data/go.obo'
obo = obo_parser.GODag(oboUrl, optional_attrs=['def'])


load obo file ./data/go.obo
./data/go.obo: fmt(1.2) rel(2016-12-06) 47,833 GO Terms

In [26]:
obo['GO:0044710'].namespace


Out[26]:
'biological_process'

In [30]:
def update(node):
    if 'SUID' in node:
        del node['SUID']
    if 'selected' in node:
        del node['selected']
    if 'id' in node:
        del node['id']
    if 'type' in node:
        del node['type']
        
    if 'shared_name' in node:
        del node['shared_name']
        
    if node['name'] in obo:
        long_name = obo[node['name']].name
        namespace = obo[node['name']].namespace
        
        node['long_name'] = str(long_name)
        node['namespace'] = str(namespace)

        print(node['long_name'])
        print(node['namespace'])

    
    if 'children' in node:
        children = node['children']
        for c in children:
            update(c)


update(tree)

with open('./data/subnet-d3-full.json', 'w') as outfile:
    json.dump(tree, outfile)


biological_process
biological_process
single-organism process
biological_process
single-organism metabolic process
biological_process
small molecule metabolic process
biological_process
metabolic process
biological_process
organic substance metabolic process
biological_process
organic cyclic compound metabolic process
biological_process
single-organism cellular process
biological_process
nucleobase-containing small molecule metabolic process
biological_process
nucleoside phosphate metabolic process
biological_process
nucleoside monophosphate metabolic process
biological_process
purine ribonucleoside monophosphate metabolic process
biological_process
ribonucleoside monophosphate metabolic process
biological_process
electron transport chain
biological_process
respiratory electron transport chain
biological_process
mitochondrial electron transport, ubiquinol to cytochrome c
biological_process
cellular_component
cellular_component
membrane part
cellular_component
transmembrane transporter complex
cellular_component
mitochondrial respiratory chain complex III
cellular_component
mitochondrion
cellular_component