rとsqliteによるオミックス解析の促進

62
RSQLiteによるオミックス解析の促進 東京理科大学 薬学研究科 薬科学専攻 博士後期課程1露崎 弘毅

Upload: antiplastics

Post on 14-Jun-2015

3.900 views

Category:

Technology


7 download

DESCRIPTION

「第2回Rでつなぐ次世代オミックス情報統合解析研究会」で使用した発表資料

TRANSCRIPT

Page 1: RとSQLiteによるオミックス解析の促進

RとSQLiteによるオミックス解析の促進

東京理科大学 薬学研究科 薬科学専攻 博士後期課程1年

露崎 弘毅

Page 2: RとSQLiteによるオミックス解析の促進

read.tableの限界

read.table

堅気の人はまず見る事が無いエラーメッセージ

webから取得した

シロイヌナズナの

遺伝子発現データ

2

4.39GB

Page 3: RとSQLiteによるオミックス解析の促進

3

Page 4: RとSQLiteによるオミックス解析の促進

!!注意!!

4

・“ビッグデータ”の話しではありません (そういうのは、Hadoop、NOSQL等で) ・あくまでR(とRのパッケージ)を最後まで使いたい人 ・データが数GB程度で、もうちょっとRで頑張りたい人 ・スパコン使わずにローカルPCでなんとかしたい人 を想定 ・ff、bigmemoryの利用など別のアプローチもある

Page 5: RとSQLiteによるオミックス解析の促進

RとSQLiteの組み合わせ

5

GBレベルのデータ

read.table

Page 6: RとSQLiteによるオミックス解析の促進

6

GBレベルのデータ

Input / Output

一度SQLiteに格納

RとSQLiteの組み合わせ

こうすればまだまだ頑張れるはず!?

Page 7: RとSQLiteによるオミックス解析の促進

SQLiteとの併用のメリット

7

・元々ある程度大きいデータを扱う事を想定している言語

・インデックス、トランザクション、型指定等、高速化のための技術が豊富 ・SQL言語(RDBMS)はデータの検索、集計等大雑把な操作に適している ・Rは検定、可視化等、データの詳細な解析に適している ・共にテーブル形式のデータを想定している → RDBMSとRは相性が良い

Page 8: RとSQLiteによるオミックス解析の促進

なぜSQLite?

8

楽だから

MySQL, PostgreSQL, Oracle … (イメージ)

SQLite (イメージ)

サーバvsクライアント

サーバvsクライアントという概念が無い

ローカルで自分だけが使う場合、SQLiteで十分

root権限、パスワード設定、起動、停止、再起動、Anonymousユーザ-、セキュリティ、ロック、バックアップ…

自分しか使わない

他人が途中アクセスしてくるという事がそもそも無い .sqliteというデータベースファイルが1個できるだけ いらなくなったら削除すればおしまい

DB

.sqlite

DB DB

管理者

Page 9: RとSQLiteによるオミックス解析の促進

9

実際に内部でSQLiteを 利用しているパッケージ

GO.db

DESCRIPTION

NAMESPACE

R

man

zzz.R

~.Rd

extdata GO.sqlite

Page 10: RとSQLiteによるオミックス解析の促進

実際に内部でSQLiteを 利用しているパッケージ

10

アノテーションパッケージを中心に、大きいデータを提供するパッケージでは、内部的にSQLiteを利用している (ユーザーは気づかないが)

Macの場合 ls /Library/Frameworks/R.framework/Resources/library/*/extdata/*.sqlite DECIPHER/extdata/Bacteria_175seqs.sqlite DO.db/extdata/DO.sqlite GO.db/extdata/GO.sqlite GenomicFeatures/extdata/Biomart_Ensembl_sample.sqlite IlluminaHumanMethylation450k.db/extdata/IlluminaHumanMethylation450k.sqlite KEGG.db/extdata/KEGG.sqlite … (.sqliteは23個、.sqlは1個、.dbは2個)

Page 11: RとSQLiteによるオミックス解析の促進

1. SQLiteの基礎

1. SQLiteの基礎 / 11

Page 12: RとSQLiteによるオミックス解析の促進

SQLiteの起動、終了、DB作成 /* 起動 */ sqlite3 /* 終了 */ .exit

1. SQLiteの基礎 / 12

Page 13: RとSQLiteによるオミックス解析の促進

SQLiteの起動、終了、DB作成

test.sqlite

/* 起動 */ sqlite3 /* 終了 */ .exit /* DBファイルを作成 */ sqlite3 test.sqlite

test.sqlite

カレントディレクトリにファイルができる

1. SQLiteの基礎 / 13

Page 14: RとSQLiteによるオミックス解析の促進

テーブル作成

1. SQLiteの基礎 / 14

gene_name control treatment /* テーブル作成 */ CREATE TABLE RNASEQ ( gene_name VARCHAR(50), control NUMERIC, treatment NUMERIC );

RNASEQ

test.sqlite

*SQLiteは値の型を指定しなくても動いてしまうが、指定したほうが良い

Page 15: RとSQLiteによるオミックス解析の促進

データ追加

1. SQLiteの基礎 / 15

gene1 0 0

gene2 12 25

gene3 100 203

gene4 0 0

gene5 230 13

gene_name control treatment /* データ追加 */ INSERT INTO RNASEQ VALUES(“gene1”, 0, 0) INSERT INTO RNASEQ VALUES(“gene2”, 12, 25) INSERT INTO RNASEQ VALUES(“gene3”, 100, 203) INSERT INTO RNASEQ VALUES(“gene4”, 0, 0) INSERT INTO RNASEQ VALUES(“gene5”, 230, 13)

RNASEQ

test.sqlite

Page 16: RとSQLiteによるオミックス解析の促進

データの更新

1. SQLiteの基礎 / 16

gene1 0 0

gene2 12 25

gene3 100 203

gene4 10 0

gene5 230 13

gene_name control treatment

RNASEQ

test.sqlite

/* データ更新 */ UPDATE RNASEQ SET control = 10 WHERE gene_name == “gene4”;

Page 17: RとSQLiteによるオミックス解析の促進

削除に関して

1. SQLiteの基礎 / 17

/* 行に対して */ DELETE FROM RNASEQ WHERE gene_name == “gene1”; gene1 0 0

gene2 12 25

gene3 100 203

gene4 10 0

gene5 230 13

gene_name control treatment

RNASEQ

test.sqlite

Page 18: RとSQLiteによるオミックス解析の促進

削除に関して

1. SQLiteの基礎 / 18

/* 行に対して */ DELETE FROM RNASEQ WHERE gene_name == “gene1”; /* 列に対して */ CREATE TABLE TMP( gene_name VARCHAR(50), treatment ); INSERT INTO TMP SELECT gene_name, treatment FROM RNASEQ; DROP TABLE RNASEQ; ALTER TABLE TMP RENAME TO RNASEQ;

gene2 12 25

gene3 100 203

gene4 10 0

gene5 230 13

gene_name control treatment

RNASEQ

test.sqlite

Page 19: RとSQLiteによるオミックス解析の促進

削除に関して

1. SQLiteの基礎 / 19

/* 行に対して */ DELETE FROM RNASEQ WHERE gene_name == “gene1”; /* 列に対して */ CREATE TABLE TMP( gene_name VARCHAR(50), treatment ); INSERT INTO TMP SELECT gene_name, treatment FROM RNASEQ; DROP TABLE RNASEQ; ALTER TABLE TMP RENAME TO RNASEQ; /* 全データに対して */ DELETE FROM RNASEQ;

gene_name treatment

test.sqlite

RNASEQ

Page 20: RとSQLiteによるオミックス解析の促進

削除に関して

1. SQLiteの基礎 / 20

/* 行に対して */ DELETE FROM RNASEQ WHERE gene_name == “gene1”; /* 列に対して */ CREATE TABLE TMP( gene_name VARCHAR(50), treatment ); INSERT INTO TMP SELECT gene_name, treatment FROM RNASEQ; DROP TABLE RNASEQ; ALTER TABLE TMP RENAME TO RNASEQ; /* 全データに対して */ DELETE FROM RNASEQ; /* テーブルに対して */ DROP TABLE RNASEQ; test.sqlite

Page 21: RとSQLiteによるオミックス解析の促進

削除に関して

1. SQLiteの基礎 / 21

/* データベースに対して */ test.sqliteを削除すればいいだけ (rm test.sqliteなり、右クリック→ゴミ箱なり)

Page 22: RとSQLiteによるオミックス解析の促進

SELECT

1. SQLiteの基礎 / 22

gene1 0 0

gene2 12 25

gene3 100 203

gene4 10 0

gene5 230 13

gene_name control treatment

RNASEQ

test.sqlite

/* テーブルのデータ全て */ SELECT * FROM RNASEQ;

* : 全てという意味(ワイルドカード)

SELECT 列名 FROM テーブル名 WHERE 条件式;

< SELECT文の基本 >

Page 23: RとSQLiteによるオミックス解析の促進

SELECT

1. SQLiteの基礎 / 23

gene1 0 0

gene2 12 25

gene3 100 203

gene4 10 0

gene5 230 13

gene_name control treatment

RNASEQ

test.sqlite

/* テーブルのデータ全て */ SELECT * FROM RNASEQ; /* gene3, gene4の行のみ */ SELECT * FROM RNASEQ WHERE gene_name == “gene3” OR gene_name == “gene4”;

Page 24: RとSQLiteによるオミックス解析の促進

SELECT

1. SQLiteの基礎 / 24

gene1 0 0

gene2 12 25

gene3 100 203

gene4 10 0

gene5 230 13

gene_name control treatment

RNASEQ

test.sqlite

/* テーブルのデータ全て */ SELECT * FROM RNASEQ; /* gene3, gene4の行のみ */ SELECT * FROM RNASEQ WHERE gene_name == “gene3” OR gene_name == “gene4”; /* controlもtreatmentも0では無い行を取り出す */ SELECT * FROM RNASEQ WHERE control != 0 AND treatment != 0;

Page 25: RとSQLiteによるオミックス解析の促進

SELECT

1. SQLiteの基礎 / 25

gene1 0 0

gene2 12 25

gene3 100 203

gene4 10 0

gene5 230 13

gene_name control treatment

RNASEQ

test.sqlite

/* テーブルのデータ全て */ SELECT * FROM RNASEQ; /* gene3, gene4の行のみ */ SELECT * FROM RNASEQ WHERE gene_name == “gene3” OR gene_name == “gene4”; /* controlもtreatmentも0では無い行を取り出す */ SELECT * FROM RNASEQ WHERE control != 0 AND treatment != 0; /* controlもtreatmentも0では無い行のgene_nameを取り出す */ SELECT gene_name FROM RNASEQ WHERE control != 0 AND treatment != 0;

Page 26: RとSQLiteによるオミックス解析の促進

SELECT (結合、JOIN)

1. SQLiteの基礎 / 26

gene1 0 0

gene2 12 25

gene3 100 203

gene4 10 0

gene5 230 13

gene_name control treatment

RNASEQ

test.sqlite

gene1 +104

gene5 -12

/* ある転写因子TF1の結合箇所 */ CREATE TABLE TF1BIND ( gene_name VARCHAR(50), TF1 NUMERIC ); INSERT INTO TF1BIND VALUES(“gene1”, 104); INSERT INTO TF1BIND VALUES(“gene2”, -12; /* 2テーブルに跨った検索 */ SELECT A.gene_name, A.control, A.treatment, B.TF1 FROM RNASEQ AS A, TF1BIND AS B WHERE A.gene_name == B.gene_name;

TF1BIND

gene_name TF1

gene1 0 0 +104

gene5 230 13 -12

gene_name TF1 control treatment

Page 27: RとSQLiteによるオミックス解析の促進

余談:双方向ベストヒット

JOINはなにかと便利

geneX

geneX geneY

オーソログ収集をしたい (パラログを除外したい)

BBH

Reciprocal Blast best hitの抽出 1. SQLiteの基礎 / 27

BBH:BLAST BEST HIT

BBH

生物種A

生物種B

geneA geneD

geneV geneU

geneX geneX

geneS geneL

geneD geneY

geneE geneH

geneG geneO

geneR geneR

geneY geneX

geneT geneF

geneX geneX

geneD geneA

A2B B2A

Agenes Bgenes

SELECT A2B.Agenes, A2B.Bgenes FROM A2B, B2A WHERE A2B.Agenes == B2A.Agenes AND A2B.Bgenes == B2A.Bgenes;

Agenes Bgenes

geneX geneX

Page 28: RとSQLiteによるオミックス解析の促進

補足:スキーマ

テーブルをどのように分割するか、 どのキー同士で参照するか、 どこにインデックスを貼るか…等 データベース全体のデザイン

テーブル2

テーブル3

テーブル1

今回はI/Oが早くなればそれでいいので、特にスキーマとか深く考えない

1. SQLiteの基礎 / 28

Page 29: RとSQLiteによるオミックス解析の促進

補足:スキーマ

ゲノムデータベースEnsemblのスキーマ

http://www.gramene.org/info/docs/api/funcgen/trimmed_funcgen_schema.png

1. SQLiteの基礎 / 29

Page 30: RとSQLiteによるオミックス解析の促進

補足:スキーマ

cummeRbundパッケージのスキーマ

http://compbio.mit.edu/cummeRbund/manual_2_0.html 1. SQLiteの基礎 / 30

Page 31: RとSQLiteによるオミックス解析の促進

2. RSQLiteの利用

2. RSQLiteの利用 / 31

Page 32: RとSQLiteによるオミックス解析の促進

RSQLite RでSQLiteを操作できるパッケージ

Rでコマンドを叩いても、実際は裏でSQLが走る

SQLがデータをとってきても、返ってくるのはRオブジェクト

.sqlite

DBI(データベースインターフェース)という

他の言語でも実装されている

例: PerlのDBD::Pg、JavaのJDBI、Rubyのruby-dbi、PHP …

SQL文

例: SELECT * FROM pubmed;

Rオブジェクト

(データフレーム)

2. RSQLiteの利用 / 32

Page 33: RとSQLiteによるオミックス解析の促進

データを取得する

言わずもがなの文献データベース

XML形式で文献データを提供

(http://www.ncbi.nlm.nih.gov/pmc/tools/ftp/)

ダウンロード 解凍

(34.1GB!!!)

雑誌毎にフォルダ分けされており、

中身は月毎にファイルを分けている(XML)

2. RSQLiteの利用 / 33

Page 34: RとSQLiteによるオミックス解析の促進

XML→TXT

このようなtab区切りテーブルpubmed.txtができる(???GB) 雑誌名 年代 タイトル アブスト PMCID URL

Nature 2012 hoge Hoge is... PMC2751374 http://www.ncbi.nlm.......

library(XML) d <- xmlToList(“XMLファイル名”) A <- d$front$’journal-meta’$’journal-id’$text B <- d$front$’article-meta’$’pub-date’$year C <- d$front$’article-meta’$’title-group’$’article-title’ D <- d$front$’article-meta’$’abstract$p E <- paste(“PMC”,d$front$’article-meta’$’article-id’$text,sep=“”) F <-paste(“http://www.ncbi.nlm.nih.gov/pmc/articles/”,E,”/pdf/”,sep=“”) … result <- c(A,B,C,D,E,F) sink(file=“pubmed.txt”,append=T) cat(result) sink()

みたいなのを毎回走らせる

のは面倒だから、

実際はシェルスクリプトで

2. RSQLiteの利用 / 34

Page 35: RとSQLiteによるオミックス解析の促進

pubmed.txt

467.1MB

この程度でもR単独ではかなりきつい

pubmed.txt

read.table (“pubmed.txt”)

2. RSQLiteの利用 / 35

279102行×6列

Page 36: RとSQLiteによるオミックス解析の促進

SQLiteにTXTをインポート

> sqlite3 pubmed.sqlite

sqlite> DROP TABLE IF EXISTS pubmed.sqlite;

sqlite> CREATE TABLE pubmed (

journal_name VARCHAR(30),

year INTEGER,

title VARCHAR(300),

abst VARCHAR(5000),

pmcid CHAR(10),

url VARCHAR(100)

);

sqlite> .separator ¥t

sqlite> .import pubmed.txt pubmed

sqlite> .exit

pubmed.sqlite

完成!!!

467.1MB

pubmed.txt

2. RSQLiteの利用 / 36

Page 37: RとSQLiteによるオミックス解析の促進

pubmed.sqliteにRで接続

pubmed.sqlite

# R起動

> R

# パッケージロード

> library(“RSQLite”)

> library(“DBI”)

# コネクション

> driver <- dbDriver(“SQLite”)

> db <- “pubmed.sqlite”

> con <- dbConnect(driver, db)

2. RSQLiteの利用 / 37

dbConnect()

Page 38: RとSQLiteによるオミックス解析の促進

検索してみる

dbGetQuery(

con,

"SELECT title FROM pubmed WHERE abst like '%RNA-Seq%';")

Microarrays, deep sequencing and the true…

Maintaining RNA integrity in a …

Microarrays and RNA-Seq identify molecular mechanisms…

2. RSQLiteの利用 / 38

pubmed.sqlite

dbGetQuery()

Page 39: RとSQLiteによるオミックス解析の促進

検索中 … (検索も数秒)

2. RSQLiteの利用 / 39

Page 40: RとSQLiteによるオミックス解析の促進

集計してみる

dbGetQuery(

con,

"SELECT COUNT(*) FROM pubmed WHERE abst like '%RNA-Seq%';")

アブストにRNA-Seqと書かれた論文は167件!

2. RSQLiteの利用 / 40

pubmed.sqlite

dbGetQuery()

Page 41: RとSQLiteによるオミックス解析の促進

可視化 paper <- rep(0:0,length=85)

for(i in 1928:2012){

command <- paste("SELECT COUNT(*) FROM pubmed WHERE abst like '%RNA-Seq%'

AND year = ",i,";",sep="")

prepaper <- dbGetQuery(con,command)

if(as.numeric(prepaper)!=0){

paper[i-1928] <- as.numeric(prepaper)

}

}

jpeg(file="paper.jpeg")

plot(1928:2012,paper,"l",ylab="Frequency",xlab="Year")

dev.off()

論文の本数が2000年後半あたりにいきなり急増している! 2. RSQLiteの利用 / 41

Page 42: RとSQLiteによるオミックス解析の促進

可視化

“RNA-Seq”,“microarray”,“RT-PCR”,“Western blot”,“two-

hybrid”,“GFP”の6実験手法のアブスト内での出現頻度(ノードの大きさ)と、共起頻度(エッジの太さ)をCytoscapeで可視化

2. RSQLiteの利用 / 42

Page 43: RとSQLiteによるオミックス解析の促進

pdf根こそぎダウンロード

# キーワード

> keyword <- "RNA-Seq"

# 自前で作ったダウンロード関数

> pubmed.download(keyword)

RNA-Seqというキーワー

ドがアブストにある文献を一度にダウンロード

2. RSQLiteの利用 / 43

RNA-Seqフォルダ

Page 44: RとSQLiteによるオミックス解析の促進

3. MeSHパッケージの紹介

3. MeSHパッケージの紹介 / 44

Page 45: RとSQLiteによるオミックス解析の促進

遺伝子アノテーションとは

3. MeSHパッケージの紹介 / 45

RNA-Seq Chip-Seq DNA Microarray SNP-array CAGE SAGE …

どんな機能に関わっているか

どこのパスウェイか

どんな転写因子結合サイトをもつか

遺伝子リスト (数百遺伝子?)

アノテーション = 注釈をつける

HNRNPR ZNF436 TCEA3 ASAP3 E2F2 ID3 GALE HMGCL FUCA1 CNR2 …

ゲノムワイドな実験(数万遺伝子)

Page 46: RとSQLiteによるオミックス解析の促進

MeSH(Medical Subject Headings)

論文にあてがわれた注釈情報

3. MeSHパッケージの紹介 / 46

Page 47: RとSQLiteによるオミックス解析の促進

MeSH(Medical Subject Headings)

Gene Ontology(GO)よりもボキャブラリーが多い

Nakazato et al. (2008) 3. MeSHパッケージの紹介 / 47

Page 48: RとSQLiteによるオミックス解析の促進

GOよりも階層が幅広い

GO

MeSH(Medical Subject Headings)

CC: Cellular Component BP: Biological Process

MF: Molecular Function

3階層

3. MeSHパッケージの紹介 / 48

Page 49: RとSQLiteによるオミックス解析の促進

MeSH

A : Anatomy B : Organisms C : Diseases D : Chemicals and Drugs E : Analytical, Diagnostic and Therapeutic Techniques and Equipment F : Psychiatry and Psychology G : Phenomena and Processes H : Disciplines and Occupations I : Anthropology, Education, Sociology and Social Phenomena J : Technology and Food and Beverages K : Humanities L : Information Science M : Persons N : Health Care V : Publication Type Z : Geographical Locations

MeSH(Medical Subject Headings)

16階層

3. MeSHパッケージの紹介 / 49

Page 50: RとSQLiteによるオミックス解析の促進

MeSH(Medical Subject Headings)

GOよりも階層が浅い

GO(BP)

下位(有意になりやすい)

上位(有意になりづらい)

3. MeSHパッケージの紹介 / 50

Page 51: RとSQLiteによるオミックス解析の促進

MeSH(Medical Subject Headings) MeSH(A)

浅く広い階層

3. MeSHパッケージの紹介 / 51

Page 52: RとSQLiteによるオミックス解析の促進

GOよりも好ましい性質を多くもつ →MeSHを遺伝子アノテーションに利用

3. MeSHパッケージの紹介 / 52

Page 53: RとSQLiteによるオミックス解析の促進

Nature Medicine

18, 766-773 (2012)

3. MeSHパッケージの紹介 / 53

Page 54: RとSQLiteによるオミックス解析の促進

既存のMeSH⇔GeneIDの対応

MeSH Pubmed Gene ID

これらは全てWebアプリケーション→ Rでも使えるようにしたい

gene2pubmed pubmed2mesh

http://gendoo.dbcls.jp/

http://gene2mesh.ncibi.org/

http://cbrc.musc.edu/homepage/jani/genemesh/index.html

3. MeSHパッケージの紹介 / 54

Page 55: RとSQLiteによるオミックス解析の促進

BioCHackathon 2012

二階堂愛: RIKEN CDB @dritoshi 担当:gendoo.Hs.db( https://github.com/dritoshi/gendoo.Hs.db)

師田郷太: UW-Madison @chikudaisei 担当:meshr(https://github.com/morota/meshr)

露崎弘毅 : Tokyo University of Science @antiplastics 担当:MeSH.db(https://github.com/kokitsuyuzaki/MeSH.db)

仲里猛 : DBCLS @chalkless Gendooを開発(2008)

目的 MeSHをRで使えるようにする

3. MeSHパッケージの紹介 / 55

Page 56: RとSQLiteによるオミックス解析の促進

MeSHパッケージ群の使い方

meshr (検定パッケージ)

MeSH.db (MeSHのデータ本体)

gendoo.Hs.db (Gene IDとMeSH IDの対応)

呼び出し

Gene ID Gene ID , MeSH Term, Fisher’s p-value

3. MeSHパッケージの紹介 / 56

HNRNPR ZNF436 TCEA3 ID3 …

なんらかの遺伝子に対するID

(gene synbol)

10236 80818 6920 55616 …

10236 Cancer 0.0467 80818 Cell division 0.031 6920 Leukocyte 0.643 55616 Nervous systems 0.943 …

エンリッチメント解析

Page 57: RとSQLiteによるオミックス解析の促進

MeSHパッケージ群の使い方

cummeRbundパッケージ内のテストデータ

iPS細胞 ES細胞

geneid : 全遺伝子(n=314) sig.geneid : 発現変動遺伝子(n=104) とする

3. MeSHパッケージの紹介 / 58

Page 58: RとSQLiteによるオミックス解析の促進

MeSHパッケージ群の使い方 GOによる遺伝子アノテーション

3. MeSHパッケージの紹介 / 59

MeSHによる遺伝子アノテーション

# ライブラリロード library(“GO.db”) library(“hgu95av2.db”) library(“Gostats”) # パラメーター設定 paraBP <- new(“GOHyperGParams”, geneIds=sig.geneid[,2], universeGeneIds=geneid[,2],annotation=“hgu95av2.db”, ontology=”BP”, pvalueCutoff=0.05, conditional=F, testDirection=“over”) # エンリッチメント解析 BP <- hyperGTest(paraBP) # 結果集計 summary(BP)

# ライブラリロード library(“MeSH.db”) library(“gendoo.Hs.db”) library(“meshr”) # パラメーター設定 paraA <- new(“MeSHHyperGparams”, geneIds=sig.geneid[,2], universeGeneIds=geneid[,2],annotation=“GendooMeSHA”, pvalueCutoff=0.05, pAdjust=“none”) # エンリッチメント解析 A <- meshHyperGTest(paraA) # 結果集計 summary(A)

Page 59: RとSQLiteによるオミックス解析の促進

MeSHパッケージ群の使い方 GOを利用したエンリッチメント解析

BP (144件) MF (6件) CC (5件)

3. MeSHパッケージの紹介 / 60

cell differentiation cell development cellular developmental process regulation of multicellular organismal development cell morphogenesis involved in differentiation chemotaxis taxis cellular component organization …

structural molecule activity protein binding binding kinase activity transferase activity, transferring phosphorus-containing groups phosphotransferase activity, alcohol group as acceptor

cell junction plasma membrane cell periphery cytosolic part synapse

Page 60: RとSQLiteによるオミックス解析の促進

MeSHパッケージ群の使い方

A : Anatomy (5件)

B : Organisms (10件)

C : Diseases (7件)

D : Chemicals and Drugs (13件)

G : Phenomena and Processes (13件)

3. MeSHパッケージの紹介 / 61

MeSHを利用したエンリッチメント解析

Cilia Chromosomes, Human, Pair 20 Chromosomes, Human, 21-22 and Y Chromosomes, Human, Pair 22 Central Nervous System

Cercopithecus aethiops Cricetinae Adenoviridae Drosophila Chimera Cricetulus Cattle Chickens Saccharomyces cerevisiae Haplorhini

Cell Transformation, Neoplastic Alzheimer Disease Breast Neoplasms Carcinoma, Non-Small-Cell Lung Carcinoma, Renal Cell Astrocytoma Cleft Palate

Amino Acid Sequence Cell Division Brain Chemistry Binding, Competitive Chromosomes, Human, Pair 20 Cell Survival Chromosomes, Human, 21-22 and Y Chemotaxis Cell Membrane Permeability Cell Cycle Chromosomes, Human, Pair 22 Autophagy Algorithms

Amino Acid Sequence Cell Division Brain Chemistry Binding, Competitive Chromosomes, Human, Pair 20 Cell Survival Chromosomes, Human, 21-22 and Y Chemotaxis Cell Membrane Permeability Cell Cycle Chromosomes, Human, Pair 22 Autophagy Algorithms

Page 61: RとSQLiteによるオミックス解析の促進

• 使い心地 – GOと似たようなものがヒットする

– A(Anatomy)はCC、D(Chemicals and Drugs)はMF、

G(Phenomena and Processes)はBPと少し似ている?

– B(Organisms), C(Diseases),Aの臓器等、GOでは見れないタームがあり、そこに強みがあると思われる

– 1階層あたりのターム数はGOの方が多い (MeSHの方が広く浅いから)

• 展望 – 他の階層への拡張

– 他の生物種への拡張 (マイナーな生物種への対応も)

3. MeSHパッケージの紹介 / 62

Page 62: RとSQLiteによるオミックス解析の促進

63

+

第7回 Kashiwa.R バイオ実験系ラボ支援回

日時:2013 / 3 / 19 15:00~18:00 場所:東京理科大学野田キャンパス 薬学部校舎(14号館) 1411教室