Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

090608-TogoWS REST

2,293 views

Published on

Published in: Technology, News & Politics
  • Be the first to comment

090608-TogoWS REST

  1. 1. 相同性検索の自動化 と統計処理の基礎 2009/06/08 金子 聡子 kaneko.satoko(at)ocha.ac.jp 瀬々 潤 1
  2. 2. 今日の内容 ・Web APIを利用する ・生命情報学関連のWeb API (TogoWS) 2
  3. 3. Web APIを利用する ・ Web APIとは ・ Google Chart APIとは ・ Google Chart APIの使い方 ・ Google Chart APIを実際に使ってみましょう。 ・ 演習問題 3
  4. 4. Web APIとは まず、APIとは「Application Programming Interface」の略で、プログラムがその機能 を他のプログラムから利用できるように公開するインターフェイスのことです。 Web APIとは、HTTPを利用してネットワーク越しに処理を実行して結果を受け取る仕 組みのことです。 Google Chart APIとは Google Chart APIとはグーグルが提供しているグラフ作成サービスです。 URLにパラメータを指定するだけでグラフをPNG画像として取得できます。 日本語での説明 Google Chart API入門(http://www.ajaxtower.jp/googlechart/) 例 URLに http://chart.apis.google.com/chart?chs=150x150&chd=t:78.0,32.0,84.0&cht=lc と入れると、以下の図を得ることができる。 4
  5. 5. Google Chart APIの使い方 サイズとデータ http://「指定のURL」?「パラメータ1」&「パラメータ2」&「パラメータn」 例: http://chart.apis.google.com/chart?chs=150x150&chd=t:78.0,32.0,84.0&cht=lc 指定のURLは「http://chart.apis.google.com/chart」で「?」でつなぎます。 パラメータは「パラメータ名=値」の形式になっていて、複数のパラメータを指定する場合 には区切り文字として「&」を使い、続けて記述します。 パラメータ chs: Chart size 単位はピクセル*です。 chs=<幅>x<高さ> *: ピクセル (pixel) とはコンピュータで画像を扱うときの最小単位で、色情報(色調や階調)を持つ画 素のこと。 グラフは指定したサイズいっぱいに表示されるように自動調整されて表示されます。 chd: Chart data 数値形式での指定 chd=t:<データを表す文字列> 系統を追加する場合 chd=t:<データを表す文字列>|<データを表す文字列>|<データを表す文字列> 1つのデータを表すのにX軸の値とY軸の値を指定する形式 chd=t:<系統1のX軸データ>|<系統1のY軸データ>|<系統2のX軸データ>|<系統2のY軸 データ> 5
  6. 6. Google Chart APIの使い方 グラフの種類 http://「指定のURL」?「パラメータ1」&「パラメータ2」&「パラメータn」 例: http://chart.apis.google.com/chart?chs=150x150&chd=t:78.0,32.0,84.0&cht=lc cht: Chart type cht=lc 折れ線グラフ(Y軸のデータを指定) cht=lxy 1つのデータを表すのにX軸の値とY軸の値を指定する折れ線グラフ cht=bhs 積み上げ棒グラフ(横棒) cht=bvs 積み上げ棒グラフ(縦棒) この講義では触れないので、 (http://www.ajaxtower.jp/googlechart/)を cht=bhg 集合棒グラフ(横棒) 参照して下さい。 cht=bvg 集合棒グラフ(縦棒) cht=p 2次元の円グラフ cht=3p 3次元の円グラフ cht=v ベン図(3つの集合に対するベン図を作成できます。) cht=s 散布図 6
  7. 7. Google Chart APIの使い方 色の指定 chco:Colors 例 chco=FF0000,00FF00 RRGGBB 赤青緑をそれぞれ16進数*で「00」から「FF」までの値で指定します。 HTMLで色を指定する場合と同じです。 例えば次のようになります。 000000 = 黒 FF0000 = 赤 00FF00 = 緑 0000FF = 青 FFFFFF = 白 *16進法 数値を表現する際に、各桁の重み付けの基本となる数を16とした数値の表現方法。 桁が一つ移動する毎に値の重みが1.6倍になる。 「0」から「9」までの10種類の数字に加え、「A」から「F」までの6種類の文字を数字として用 いる。「A」が10進数で言う「10」に、Bが11に、Cが12に、Dが13に、Eが14に、Fが15に対応 する。 7
  8. 8. Google Chart APIを実際に使ってみましょう 1 2つの系統からなる折れ線グラフ(Y軸のデータのみ指定)(赤と緑の線) http://chart.apis.google.com/chart?chs=300x300&chd=t:10,15,4,60,45|30,23,73,24,87 &cht=lc&chco=ff0000,00ff00 実行するには、Safariを立ち上げてURLのところに入れる 赤 | 緑 結果 データの値を変えて[enter]すると、 すぐに反映されます。 数値をいろいろ変えてみて下さい。 8
  9. 9. Google Chart APIを実際に使ってみましょう 2 散布図 http://chart.apis.google.com/chart?chs=200x200&chd=t:20,40,60|15,25,40&cht=s (x, y)=(20, 15) =(40, 25) =(60, 40) 上記のような3つの点をデータとして設定する 場合、次のように記述します。 データの値を増やしていろいろ試してみましょう。 chd=t:20,40,60|15,25,40 また、「X軸のデータ|Y軸のデータ|各点の大きさ」として 結果 点の大きさを変えることができます。 例 chd=t:20,40,60|15,25,40|25,50,75 9
  10. 10. Google Chart APIを実際に使ってみましょう 3 円グラフ http://chart.apis.google.com/chart?chs=300x300&chd=t:50,25,15,6,4&cht=p 3D円グラフ http://chart.apis.google.com/chart?chs=300x300&chd=t:50,25,15,6,4&cht=p3 結果 円グラフ 結果 3D円グラフ ラベルを付けたい場合には、 chl=<ラベル1>|<ラベル2>|<ラベルn> 例 chl=Italy|Spain|France|Germany|Greece|UK http://chart.apis.google.com/chart?chs=460x230&chd=t:35,34,12,12,6,1&cht=p &chl=Italy|Spain|France|Germany|Greece|UK 10
  11. 11. Google Chart APIを実際に使ってみましょう 4 ベン図 7つの値をデータとして指定する必要があります。 最初の3つの値で、3つの集合(A、B、Cとします)にそれぞれ含まれる個数を指定します。 4つ目の値で集合Aと集合Bに共通する個数を指定します。 5つ目の値で集合Aと集合Cに共通する個数を指定します。 6つ目の値で集合Bと集合Cに共通する個数を指定します。 7つ目の値で全ての集合で共通する個数を指定します。 http://chart.apis.google.com/chart?chs=200x200&chd=t:100,80,50,20,20,10,5&cht=v (A, B, C AB, AC, BC, ABC) 結果 データの値を変えていろいろな大きさと 重なりを試してみて下さい。 ファイルとして保存したい場合には、ターミナルから $ curl -o graph.png quot;http://chart.apis.google.com/chart?chs=200x200&chd=t:100,100,50,20,20,10,5&cht=vquot; 11
  12. 12. 演習 1) 以下のX軸とY軸の値を持つ折れ線グラフを描いて下さい。 系統1(x, y)=(0, 10) 系統2(x, y)=(0, 30) 系統3(x, y)=(0, 20) =(25, 15) =(30, 23) =(20, 50) =(50, 4) =(60, 73) =(40, 30) =(80, 60) =(90, 24) =(90, 50) そして、系統1,2,3それぞれ好きなように色を指定して下さい。 2) 集合Bが集合AとCを飲み込んでしまうベン図を描いて下さい。 答えの例 1) http://chart.apis.google.com/chart?chs=200x200&chd=t:0,25,50,90|10,15,4,60|0,30,60,90 |30,23,73,24|0,20,40,90|20,50,30,50&cht=lxy&chco=ff1100,9900ff,0034ff 2) http://chart.apis.google.com/chart?chs=300x300&chd=t:40,100,20,50,0,50,50&cht=v 12
  13. 13. 生命情報学関連のWeb API ・TogoWSとは ・TogoWSのサービス SOAP(サンプルコード(プログラム)の内容)/REST ・RESTを利用して塩基配列や論文情報を取得する ・KEGGとは ・KEGG関連のREST 13
  14. 14. TogoWSとは http://togows.dbcls.jp/site/ja/index.html ライフサイエンス分野におけるデータベースの統合化の拠点となることを目的として 2007年に設立されたライフサイエンス統合データベースセンターが提供するサービス のひとつです。 このサービスにより、NCBIやEnsemblのウェブサイトに行かなくても、ここで提供されて いるプログラムを用いることで、塩基配列やアミノ酸配列などいろいろな情報を得るこ とができる。 14
  15. 15. TogoWSのサービス トップページの 「Services: TogoWSの提供サービス」をクリック SOAP: Simple Object Access Protocol プログラムにより情報を取得する方法 →次回利用します。 REST: Representational State Transfer ここでは、URLに直接リクエスト内容を書き、 情報を取得できます。 15
  16. 16. TogoWS: REST –Entry retrieval- xml: Extensible Markup Language tagにより文書やデータの意味や構造を記述 json: JavaScript Object Notation JavaScriptのオブジェクトの表記法をベースとした軽量なデータ記述 gff: 'Gene-Finding Format' or 'General Feature Format' CDSやmotifについて記述 http://togows.dbcls.jp/entry/ 対応しているdatabaseが表示されます。 http://togows.dbcls.jp/entry/ncbi-genbank/ 情報を取得できる項目が表示されます。(例 definition, features, references, seqなど) 16
  17. 17. TogoWS: REST Entry retrieval (1) ・特定の遺伝子の情報や配列を取得 LOCUS http://togows.dbcls.jp/entry/ebi-uniprot/MKRN1_MOUSE,MKRN1_HUMAN http://togows.dbcls.jp/entry/ebi-uniprot/MKRN1_MOUSE,MKRN1_HUMAN.fasta http://togows.dbcls.jp/entry/ncbi-genbank/MKRN1_MOUSE/seq ACCESSION Number http://togows.dbcls.jp/entry/ncbi-genbank/NM_173335 http://togows.dbcls.jp/entry/ncbi-genbank/NM_173335.fasta http://togows.dbcls.jp/entry/ncbi-genbank/NM_173335/seq GI (GenInfo Identifier) http://togows.dbcls.jp/entry/ncbi-genbank/27545435 17
  18. 18. TogoWS: REST Entry retrieval (2) ・PubMedから論文情報や要旨などを取得 Buck & Axel Cell 1991 65:175-87 PMID:1840504 http://togows.dbcls.jp/entry/ncbi-pubmed/1840504 http://togows.dbcls.jp/entry/ncbi-pubmed/1840504/au http://togows.dbcls.jp/entry/ncbi-pubmed/1840504/abstract http://togows.dbcls.jp/entry/ncbi-pubmed/1840504/mesh Nozawa & Nei PNAS 2007 24:7122-7 PMID:17438280 http://togows.dbcls.jp/entry/ncbi-pubmed/17438280 http://togows.dbcls.jp/entry/ncbi-pubmed/17438280/au http://togows.dbcls.jp/entry/ncbi-pubmed/17438280/abstract http://togows.dbcls.jp/entry/ncbi-pubmed/17438280/mesh * meshとは、 MeSH (Medical Subject Headings)は、NLMが定める生命科学用語集のことです。 NLMがMEDLINEで文献を管理する際、文献の内容を表す適切な用語を、10〜15個程度 文献に付与し、この用語により文献を検索・管理できるようにしているが、その際に MeSHの用語を用いる。 18
  19. 19. TogoWS: REST –Database search- keywordによる検索 http://togows.dbcls.jp/search/ 対応しているdatabaseを見ることができます。 queryの文字をファイル中に含むものについての検索します。 略を使うと、目的以外のものが当たることが多くなります。 offset, limitで、hitした数を数えたり、表示する数を指定することができます。 19
  20. 20. TogoWS: REST Database search http://togows.dbcls.jp/search/[database]/[query+string]/[offset, limit] 例 http://togows.dbcls.jp/search/ebi-uniprot/olfactory/ http://togows.dbcls.jp/search/ebi-uniprot/olfactory/count http://togows.dbcls.jp/search/ebi-uniprot/olfactory+rat/ http://togows.dbcls.jp/search/ebi-uniprot/olfactory+rat/1,20 http://togows.dbcls.jp/search/ebi-biomodels/olfactory http://togows.dbcls.jp/search/ncbi-omim/olfactory http://togows.dbcls.jp/search/kegg-enzyme/carboxylesterase http://togows.dbcls.jp/search/ncbi-omim/carboxylesterase http://togows.dbcls.jp/search/kegg-orthology/carboxylesterase http://togows.dbcls.jp/search/kegg-reaction/carboxylesterase http://togows.dbcls.jp/search/ebi-go/carboxylesterase http://togows.dbcls.jp/search/ncbi-cdd/carboxylesterase (cdd: conserved domain database) 20
  21. 21. 演習 ・Makorin1についてRESTを利用して、論文情報と配列を取得する。 まず、NCBIのPubMedから 「Gray TA, Hernandez L, Carey AH, Schaldach MA, Smithwick MJ, Rus K, Marshall Graves JA, Stewart CL, Nicholls RD. The ancient source of a distinct gene family encoding proteins featuring RING and C(3)H zinc-finger motifs with abundant expression in developing brain and nervous system. Genomics. 2000 66:76-86.」のPMIDを取得。 http://togows.dbcls.jp/entry/ncbi-pubmed/[PMID] 論文情報は、コピーしてCotEditorで「makorin.paper」として保存して下さい。 論文情報に記載されている上から5つのアクセッション番号を用いて、 配列を取得して下さい。SI -GENBANK/AFOOOOOO http://togows.dbcls.jp/entry/ncbi-genbank/[Accession number].fasta fasta形式で取得して、種の名前も含めてCotEditorで「bin」に保存して下さい。 ファイル名の例「Makorin1_human.fasta」 これらを使ってdotplotを作成します。 21
  22. 22. Dotmatcherの使い方 dotmatcher dotmatcherを使います という指令 [-asequence] 比較したいファイル名(例: Makorin1_human.fasta) [-bsequence] 比較したいファイル名(例: Makorin1_human.fasta) -graph ps (postscript)で出力 -windowsize window sizeとして3以上の整数を入れる デフォルトは [10] -threshold 0かそれ以上の整数を入れる デフォルトは[23] -goutfile 出力ファイル名 (例:dot) $cd ~/bin $EMBOSS-6.0.1/emboss/dotmatcher Makorin1_human.fasta Makorin1_human.fasta - graph ps –windowsize 20 –threshold 40 –goutfile human オプションについての詳細は、 http://emboss.sourceforge.net/apps/release/5.0/emboss/apps/dotmatcher.html 22
  23. 23. Dotplot 演習 ・先ほど取得したMakorin1の配列について、humanとそれぞれの種のペアでdotmatcher を使ってdotplotして下さい。 -goutfile の後のファイル名をペア毎に変えていかないと、上書きされてしまうので注意し て下さい。 それぞれのペアで行ったdotplotを並べて比較して、配列の相同性と 下の図の系統関係においてそれぞれの種が経た時間との相関があるか、 結果を観察して下さい。 約7〜8億年 約3億年 約1億5000万年 約8000万年 ヒト マウス ワラビー ニワトリ ショウジョウバエ (霊長類) (げっ歯類) (有袋類) (鳥類) (昆虫) 23
  24. 24. Dotplot 演習 解説 種の分岐年代が古くなればなるほど、相同性を示す線が途切れがちになります。 human: AF192784, mouse: AF192785, wallaby: AF192786, chicken: AF192787, drosophila: AF192788 24
  25. 25. KEGGについて http://www.kegg.jp/ja/ KEGGとは、Kyoto Encyclopedia of Genes and Genomesの略で、 KEGGはゲノムネットという、京都大学化学研究所バイオインフォマティクスセンターが提 供するインターネットサービスの中核にあります。 ゲノムネットは、KEGG の知識とオントロジーを中核に、世界中の主要データベースを LinkDB で統合することを目的として作られています。 遺伝子・タンパク質に関するゲノム情報(KEGG GENES)、 生体内外の化学物質と生体内反応に関するケミカル情報(KEGG LIGAND)、 分子間相互作用・反応ネットワークに関するパスウェイ情報(KEGG PATHWAY)、 分子・細胞・個体に関する様々なオブジェクトの階層と関係(KEGG BRITE) から構成されています。 この講義では、KEGGの基本的な使い方と 論文等からマニュアルにより 関連性のある遺伝子をつないでいる PATHWAYと 階層状に機能分類をしたBRITEを 中心に紹介します。 25
  26. 26. KEGGでqueryから検索 トップページの枠にqueryを入れて「Search KEGG」とすると、結果の一部が表示される。 KEGG DGENES: KEGG Draft/Partial Genomes Genes Database 26
  27. 27. KEGGでqueryから検索 結果のリスト 全てのリストを表示して、マウス(Mus musculus, mmu)のMakorin1遺伝子の情報を見る。 Makorin1は、機能未知遺伝子なの で、BRITE hierarchyには含まれてい ない。 2ページ先 次のページ 種については、学名の一部で表記 例: Homo sapiens → hsa Mus musculus → mmu 27
  28. 28. KEGGでqueryから検索 モチーフ情報 配列情報の「motif」からその配列に含まれる、アミノ酸配列のモチーフを見ることができ ます。そして、これらのモチーフを持った遺伝子を取ってくることができます。 ここでは、4つのモチーフがありますが、そのうちの1つでも一致しているものが リストになっています。 オプションで「View motifs」を選ぶと、 hitしたもの全てのモチーフが表示されます。 28
  29. 29. KEGGでqueryから検索 Ortholog, Paralog Orthologは他の種で、Paralogは同種内で、queryと同じmotifを持つ遺伝子のリスト CLUSTALW, MAFFT, PRRN -> アミノ酸配列のalignment Draw alignment -> alignmentの模式図、各配列にリンクがはられている Search common motifs -> motifの模式図 List definition -> チェックを入れた項目を抜き出す -> alignmentやfasta形式のアミノ酸配 列を取ることができる。 29
  30. 30. 演習 ・ラットのOlr1082をqueryとして検索して、olfactory receptor geneの関わる PATHWAYを探しましょう。 「BRITE hierarchy」からリンクがあります。 http://nobelprize.org/nobel_prizes/medicine/laureates/2004/press.html 30
  31. 31. 演習 答え KEGG ORTHOLOGY (KO): PATHWAYとBRITEに基づくオーソロググループ 31
  32. 32. 演習 答え 解説 「PATH:rno04740」 匂いが伝達される主な経路 odorant(匂い物質) ↓ Golf (G protein) ↓ AC (adenylate cyclase) ↓ cAMP ↓ CNG (cyclic nucleotide gated channel) ↓ Ca2+ ↓ CLCA (chloride channel calcium activated) 緑色になっている部分は、 それらに関する遺伝子リストへ リンクが貼られています。 32
  33. 33. KEGGのREST ・遺伝子情報の取得 http://togows.dbcls.jp/entry/kegg-genes/mmu:54484 http://togows.dbcls.jp/entry/kegg-genes/mmu:54484/entry_id #この情報のID http://togows.dbcls.jp/entry/kegg-genes/mmu:54484/division #配列の状態 http://togows.dbcls.jp/entry/kegg-genes/mmu:54484/organism #生物種名 http://togows.dbcls.jp/entry/kegg-genes/mmu:54484/gene #遺伝子の名前 http://togows.dbcls.jp/entry/kegg-genes/mmu:54484/definition #遺伝子の特徴など http://togows.dbcls.jp/entry/kegg-genes/mmu:54484/position #染色体上の位置 http://togows.dbcls.jp/entry/kegg-genes/mmu:54484/aaseq #アミノ酸の配列 http://togows.dbcls.jp/entry/kegg-genes/mmu:54484/aalen #アミノ酸の長さ http://togows.dbcls.jp/entry/kegg-genes/mmu:54484/ntseq #塩基配列 http://togows.dbcls.jp/entry/kegg-genes/mmu:54484/ntlen #塩基配列の長さ ・KEGG ORTHOLOGYからの情報取得 http://togows.dbcls.jp/entry/kegg-orthology/K04257 http://togows.dbcls.jp/entry/kegg-orthology/K04257/entry_id #この情報のID http://togows.dbcls.jp/entry/kegg-orthology/K04257/names #KOでの名前 http://togows.dbcls.jp/entry/kegg-orthology/K04257/definition #遺伝子名 http://togows.dbcls.jp/entry/kegg-orthology/K04257/keggclasses #KOのclass 33
  34. 34. まとめ ・ Web API Google Chart APIの使い方 ・ ライフサイエンス関連のWeb API (TogoWS)のRESTの使い方 ・ KEGGの使い方 次回は、TogoWSのSOAPを利用します。 34

×