Rで遺伝子解析:RからDAVIDデータベースが利用できます。Bubbleプロットもらくらく「BACA」パッケージの紹介


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”からインストールします。

source("http://bioconductor.org/biocLite.R")
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プロット
Rplot
ヒートマップ
Rplot01


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

スポンサードリンク

おすすめコンテンツ


スポンサードリンク