t_kahi’s blog

KNIMEやCellProfiler、創薬に関する記事と,日々のメモです

open targetsを少しだけ使った

open targetを少しだけ使ったのでメモ

open targets のサイトへ行き、好きなターゲット分子、疾患を検索 今回は"pain"を検索してみた

f:id:t_kahi:20180403222122p:plain

すると以下のような画面へと移る

f:id:t_kahi:20180403222142p:plain

この右側のリストに"pain"に関連するターゲットすべてが示されており、association scoreが高い順に並んでいる association scoreは1が一番高く、0が一番低い

association scoreはまだきちんと勉強していないのでとりあえずここでは置いておく

試しに、一番上のassociation scoreが1.0の"GRIA1"をクリックするとこのような画面へ移る

f:id:t_kahi:20180403222513p:plain

左上のマークを見ると、painのassociation scoreが高いのは、drugに関する関連性が高いからだとわかる

試しにdrugのタブをクリックすると以下のようになる

f:id:t_kahi:20180403222627p:plain

scoreについては以下の論文に書いてあった

Open Targets: a platform for therapeutic target identification and validation

drugのscoreはCheMBLのデータベースがもとになっており、以下のような点数がつけられる

ChEMBL Clinical trial phase binned score:
Phase 0: 0.09
Phase 1: 0.1
Phase 2: 0.2
Phase 3: 0.7
Phase 4: 1.0

TOPIRAMATEという薬のstatusが一番高いphase IVになっているのがわかる だから、painとの関連性が高いのか、、、納得


pythonでopen targetsを使うことができたらいいなあと思い、こちらも少しだけ試してみた

ホーム画面の右上にAPIというボタンがあるので、ここからPython clientをクリックするとインストールの説明が書いてあった

コマンドプロンプトを開いて

pip install opentargets

でインストールができた

jupyter notebookを開いて、以下のように打つと

from opentargets import OpenTargetsClient
ot = OpenTargetsClient()

a_for_disease = ot.get_associations_for_disease('pain')
print(a_for_disease[0])

"pain"の疾患に関連するターゲットの1番目の分子の情報がdictionaryの形で出てきた

{'target': {'gene_info': {'symbol': 'GRIA1', 'name': 'glutamate ionotropic receptor AMPA type subunit 1'}, 'id': 'ENSG00000155511'}, 'association_score': {'datatypes': {'literature': 0.23568389953842897, 'rna_expression': 0.0, 'genetic_association': 3.91725e-05, 'somatic_mutation': 0.0, 'known_drug': 1.0, 'animal_model': 0.0, 'affected_pathway': 0.0}, 'overall': 1.0, 'datasources': {'slapenrich': 0.0, 'expression_atlas': 0.0, 'europepmc': 0.23568389953842897, 'uniprot_literature': 0.0, 'phenodigm': 0.0, 'eva': 0.0, 'gene2phenotype': 0.0, 'gwas_catalog': 0.0, 'intogen': 0.0, 'genomics_england': 0.0, 'postgap': 0.0, 'uniprot': 0.0, 'chembl': 1, 'cancer_gene_census': 0.0, 'reactome': 0.0, 'uniprot_somatic': 0.0, 'eva_somatic': 0.0, 'phewas_catalog': 3.91725e-05}}, 'disease': {'efo_info': {'therapeutic_area': {'labels': ['phenotype'], 'codes': ['EFO_0000651']}, 'path': [['EFO_0000651', 'EFO_0003765', 'EFO_0003843']], 'label': 'pain'}, 'id': 'EFO_0003843'}, 'is_direct': True, 'evidence_count': {'datatypes': {'literature': 58.0, 'rna_expression': 0.0, 'genetic_association': 1.0, 'somatic_mutation': 0.0, 'known_drug': 4.0, 'animal_model': 0.0, 'affected_pathway': 0.0}, 'total': 63.0, 'datasources': {'slapenrich': 0.0, 'expression_atlas': 0.0, 'europepmc': 58.0, 'uniprot_literature': 0.0, 'phenodigm': 0.0, 'eva': 0.0, 'gene2phenotype': 0.0, 'gwas_catalog': 0.0, 'intogen': 0.0, 'genomics_england': 0.0, 'postgap': 0.0, 'uniprot': 0.0, 'chembl': 4.0, 'cancer_gene_census': 0.0, 'reactome': 0.0, 'uniprot_somatic': 0.0, 'eva_somatic': 0.0, 'phewas_catalog': 1.0}}, 'id': 'ENSG00000155511-EFO_0003843'}

辞書型なので、こんな感じで打てば情報が取り出せるのはわかった(当たり前…)

a_for_disease = ot.get_associations_for_disease('pain')
print(a_for_disease[0]['target']["gene_info"])

{'symbol': 'GRIA1', 'name': 'glutamate ionotropic receptor AMPA type subunit 1'}

今日はここまで、また少しづつ使い方を覚えていきたい