National Institute of Allergy and Infectious Diseases (NIAID)により無償で提供されているデータベース”DAVID”は各遺伝子のアノテーション情報を解析できる優れたサイトです。
DAVID:http://david.abcc.ncifcrf.gov/home.jsp
使用するには遺伝子解析の知識が必要ですが、DAVIDのサイトをよく読めば大丈夫かと思います。
Rを利用せずとも遺伝子リストがあればDAVIDのサイトで解析はできますが、図への出力するは意外と手間でした。
そんな手間を解決する「BACA」バッケージを紹介します。
「BACA」パッケージはDAVIDサイトで利用者登録することで解析、結果からBubbleプロット、functional annotationの相関をヒートマップで出力することができます。
登録は無料ですので、ぜひ、お試しください。バージョンは1.3です。
DAVIDサイトで利用者登録
下記URLからアクセスして利用者登録をおこないます。利用者登録に利用したメールアドレスはDAVIDsearchコマンドでdavid.userへ設定します。
DAVID Webservice Registration
http://david.abcc.ncifcrf.gov/webservice/register.htm
パッケージのインストール
下記、コマンドを実行してください。BACAパッケージの利用には”RDAVIDWebServiceパッケージ”が必要です。RDAVIDWebServiceパッケージは”bioconductor”からインストールします。
biocLite("RDAVIDWebService")
install.packages("BACA")
実行コマンドの紹介
パッケージに付属している、2群、12/24時間に測定、down-regulated/up-regulatedした遺伝子が収録されているデータを使用しています。詳細は紹介コードのコメントをご覧ください。
library("RDAVIDWebService")
library("ggplot2")
library("BACA")
#データの読み込み
data("gene.lists.ex")
#データ内容の表示
str(gene.lists.ex)
List of 8
$ dn_cond.1_12h: chr [1:66] "12876" "67717" "433904" "72185" ...
$ up_cond.1_12h: chr [1:369] "14537" "18971" "74424" "59126" ...
$ dn_cond.1_24h: chr [1:731] "17289" "12808" "59049" "99586" ...
$ up_cond.1_24h: chr [1:1157] "17159" "637515" "14113" "18226" ...
$ dn_cond.2_12h: chr [1:756] "23873" "70601" "74211" "621542" ...
$ up_cond.2_12h: chr [1:1170] "72026" "327958" "104009" "21841" ...
$ dn_cond.2_24h: chr [1:1537] "12616" "18769" "20112" "66343" ...
$ up_cond.2_24h: chr [1:1569] "664987" "26447" "114606" "67561" .
#DAVIDのAPIを利用し遺伝子リストのENTREZ_GENE_IDからKEGG_PATHWAYの情報をアノテーション
#david.userは登録に使用したメールアドレスです
#speciesはgene.listの内容から決定されるようです
#annotationの設定はDAVIDのAnnotation Summary Resultsに準拠します
#結果はリストで出力されます
result.kegg <- DAVIDsearch(gene.list = gene.lists.ex, david.user = "登録に使用したメールアドレス",
idType = "ENTREZ_GENE_ID", annotation = "KEGG_PATHWAY")
#bubble plot
BBplot(result.kegg, max.pval = 0.05, min.ngenes = 10,
name.com = c("C1_12h", "C1_24h","C2_12h","C2_24h"),
labels = c("down", "up"), colors = c("#deb7a0", "#4b61ba"),
title = "BBplot - KEGG")
#heatmap
#functional annotationの相関を表示します
Jplot(result.kegg[[2]], result.kegg[[4]],
max.pval = 0.05, min.ngenes = 10,
print.term = "name")
出力例
Bubbleプロット

ヒートマップ

少しでも、あなたのウェブや実験の解析が楽になりますように!!