Skip to content

Instantly share code, notes, and snippets.

@caodac
caodac / monogenic.py
Last active July 13, 2020 13:06
generate candidates for aav gene therapy
from neo4j import GraphDatabase
import mysql.connector
import sys, json, requests, logging, traceback
logger = logging.getLogger(__name__)
uri = "bolt://disease.ncats.io:80"
driver = GraphDatabase.driver(uri, auth=("neo4j", ""))
USER='tcrd'
@caodac
caodac / inxight-list.py
Created December 23, 2020 17:07
download data from drugs.ncats.io
import requests
import sys
if len(sys.argv) == 1:
print('usage: %s FILE...' % sys.argv[0])
sys.exit(1)
def get_additional_data(id):
r = requests.get('https://drugs.ncats.io/api/v1/substances(%s)/@additional' % id)
if 200 == r.status_code:
@caodac
caodac / inxight-drugs.py
Created December 28, 2020 20:35
Get list of U.S. approved drugs from https://drugs.ncats.io
import requests
def get_additional_data(id):
r = requests.get('https://drugs.ncats.io/api/v1/substances(%s)/@additional' % id)
if 200 == r.status_code:
return r.json()
return None
# experiment with the filters at https://drugs.ncats.io
params = {
@caodac
caodac / ars-regression.py
Last active January 28, 2021 20:38
ARS regression test
from neo4j import GraphDatabase
from jinja2 import Template
import concurrent.futures
import sys, json, threading, requests, random
# update this query accordingly
QUERY = """{
"message": {
"query_graph": {
"nodes": {
@caodac
caodac / count-leafs.py
Created February 11, 2021 13:39
Count the number of leaf nodes for each HPO category under Phenotypic Abnormality (HP:0000118)
from neo4j import GraphDatabase
from jinja2 import Template
import json
QUERY="""
match p=(d:DATA)-[:PAYLOAD]->(n:S_HP)-[e:R_subClassOf*0..11]->(m:S_HP)-[e2:R_subClassOf]->(:S_HP)<-[:PAYLOAD]-(z)
where z.notation = 'HP:0000118'
and d.notation='{{ leaf }}'
and all(x in e where x.source=n.source or n.source in x.source)
and (e2.source=n.source or n.source in e2.source)
@caodac
caodac / pharos-batch.py
Created February 13, 2021 13:47
Fetching data from Pharos's graphql api
import json, requests
QUERY = """
{
batch(targets: ["abl1", "P42858"]) {
targetResult {
facets {
facet
values {
name
@caodac
caodac / pharos-targets.py
Created March 8, 2021 15:37
page through the targets pharos graphql api
import json, requests
QUERY = """{
targets %s {
count
targets(top:%d, skip:%d) {
sym
name
tdl
novelty