image
富集分析是一種大家常用分析方法;msigdb數(shù)據(jù)庫中有定義好的基因集,但其中絕大多數(shù)數(shù)據(jù)都是人類的置谦;老鼠和其它物種的基因集有的,但是比較少亿傅,無法滿足大眾的需求媒峡。msigdbr 是一個(gè)工具包,就可以很好地幫大家解決這個(gè)問題葵擎。
#1. 安裝:
install.packages("msigdbr")
#2. 使用
library(msigdbr)
2.1 查看數(shù)據(jù)可用的物種
msigdbr_show_species()
#> [1] "Bos taurus" "Caenorhabditis elegans" "Canis lupus familiaris"
#> [4] "Danio rerio" "Drosophila melanogaster" "Gallus gallus"
#> [7] "Homo sapiens" "Mus musculus" "Rattus norvegicus"
#> [10] "Saccharomyces cerevisiae" "Sus scrofa"
2.2 人類的基因集:
m_df = msigdbr(species = "Homo sapiens")
head(m_df)
#> # A tibble: 6 x 9
#> gs_id gs_name gs_cat gs_subcat human_gene_… species_n… entrez_g… gene_sym… sources
#> <chr> <chr> <chr> <chr> <chr> <chr> <int> <chr> <chr>
#> 1 M12609 AAACCAC_M… C3 MIR:MIR_Le… ABCC4 Homo sapi… 10257 ABCC4 <NA>
#> 2 M12609 AAACCAC_M… C3 MIR:MIR_Le… ABRAXAS2 Homo sapi… 23172 ABRAXAS2 <NA>
#> 3 M12609 AAACCAC_M… C3 MIR:MIR_Le… ACTN4 Homo sapi… 81 ACTN4 <NA>
#> 4 M12609 AAACCAC_M… C3 MIR:MIR_Le… ACVR1 Homo sapi… 90 ACVR1 <NA>
#> 5 M12609 AAACCAC_M… C3 MIR:MIR_Le… ADAM9 Homo sapi… 8754 ADAM9 <NA>
#> 6 M12609 AAACCAC_M… C3 MIR:MIR_Le… ADAMTS5 Homo sapi… 11096 ADAMTS5 <NA>
2.3 查看基因集類別:
m_df %>% dplyr::distinct(gs_cat, gs_subcat) %>% dplyr::arrange(gs_cat, gs_subcat)
#> # A tibble: 19 x 2
#> gs_cat gs_subcat
#> <chr> <chr>
#> 1 C1 ""
#> 2 C2 "CGP"
#> 3 C2 "CP"
#> 4 C2 "CP:BIOCARTA"
#> 5 C2 "CP:KEGG"
#> 6 C2 "CP:PID"
#> 7 C2 "CP:REACTOME"
#> 8 C3 "MIR:MIRDB"
#> 9 C3 "MIR:MIR_Legacy"
#> 10 C3 "TFT:GTRD"
#> 11 C3 "TFT:TFT_Legacy"
#> 12 C4 "CGN"
#> 13 C4 "CM"
#> 14 C5 "BP"
#> 15 C5 "CC"
#> 16 C5 "MF"
#> 17 C6 ""
#> 18 C7 ""
#> 19 H ""
2.4 檢索鼠類的hallmark 基因集:
m_df = msigdbr(species = "Mus musculus", category = "H")
head(m_df)
#> # A tibble: 6 x 9
#> gs_id gs_name gs_cat gs_subcat human_gen… species_… entrez_g… gene_sym… sources
#> <chr> <chr> <chr> <chr> <chr> <chr> <int> <chr> <chr>
#> 1 M5905 HALLMARK… H "" ABCA1 Mus musc… 11303 Abca1 Inparanoid,Ho…
#> 2 M5905 HALLMARK… H "" ABCB8 Mus musc… 74610 Abcb8 Inparanoid,Ho…
#> 3 M5905 HALLMARK… H "" ACAA2 Mus musc… 52538 Acaa2 Inparanoid,Ho…
#> 4 M5905 HALLMARK… H "" ACADL Mus musc… 11363 Acadl Inparanoid,Ho…
#> 5 M5905 HALLMARK… H "" ACADM Mus musc… 11364 Acadm Inparanoid,Ho…
#> 6 M5905 HALLMARK… H "" ACADS Mus musc… 11409 Acads Inparanoid,Ho…
2.5 檢索鼠類C2 (curated) CGP (chemical and genetic perturbations)基因集:
m_df = msigdbr(species = "Mus musculus", category = "C2", subcategory = "CGP")
head(m_df)
#> # A tibble: 6 x 9
#> gs_id gs_name gs_cat gs_subcat human_gen… species_… entrez_g… gene_sym… sources
#> <chr> <chr> <chr> <chr> <chr> <chr> <int> <chr> <chr>
#> 1 M1423 ABBUD_LI… C2 CGP AHNAK Mus musc… 66395 Ahnak Inparanoid,Ho…
#> 2 M1423 ABBUD_LI… C2 CGP ANKRD40 Mus musc… 71452 Ankrd40 Inparanoid,Ho…
#> 3 M1423 ABBUD_LI… C2 CGP ARID1A Mus musc… 93760 Arid1a Inparanoid,Ho…
#> 4 M1423 ABBUD_LI… C2 CGP BCKDHB Mus musc… 12040 Bckdhb Inparanoid,Ho…
#> 5 M1423 ABBUD_LI… C2 CGP C16orf89 Mus musc… 239691 AU021092 Inparanoid,Ho…
#> 6 M1423 ABBUD_LI… C2 CGP CAPN9 Mus musc… 73647 Capn9 Inparanoid,Ho…
2.6 msigdbr()
的輸出谅阿,常規(guī)的R數(shù)據(jù)框操作都可以進(jìn)行
m_df = msigdbr(species = "Mus musculus") %>% dplyr::filter(gs_cat == "H")
head(m_df)
#> # A tibble: 6 x 9
#> gs_id gs_name gs_cat gs_subcat human_gen… species_… entrez_g… gene_sym… sources
#> <chr> <chr> <chr> <chr> <chr> <chr> <int> <chr> <chr>
#> 1 M5905 HALLMARK… H "" ABCA1 Mus musc… 11303 Abca1 Inparanoid,Ho…
#> 2 M5905 HALLMARK… H "" ABCB8 Mus musc… 74610 Abcb8 Inparanoid,Ho…
#> 3 M5905 HALLMARK… H "" ACAA2 Mus musc… 52538 Acaa2 Inparanoid,Ho…
#> 4 M5905 HALLMARK… H "" ACADL Mus musc… 11363 Acadl Inparanoid,Ho…
#> 5 M5905 HALLMARK… H "" ACADM Mus musc… 11364 Acadm Inparanoid,Ho…
#> 6 M5905 HALLMARK… H "" ACADS Mus musc… 11409 Acads Inparanoid,Ho…
#3 與其它Pathway 分析工具進(jìn)行整合分析
-
clusterProfiler
(for genes as Entrez Gene IDs).
m_t2g = m_df %>% dplyr::select(gs_name, entrez_gene) %>% as.data.frame()
enricher(gene = gene_ids_vector, TERM2GENE = m_t2g, ...)
-
clusterProfiler
(for genes as gene symbols).
m_t2g = m_df %>% dplyr::select(gs_name, gene_symbol) %>% as.data.frame()
enricher(gene = gene_symbols_vector, TERM2GENE = m_t2g, ...)
fgsea
m_list = m_df %>% split(x = .$gene_symbol, f = .$gs_name)
fgsea(pathways = m_list, ...)
#4 注意:
- msigdbr使用的是MSigDB v7.1 (released March 2020)。
- 可以從MSigDB 直接下載基因集,GSEABase包getGmt()函數(shù)導(dǎo)入數(shù)據(jù)签餐;但是從MSigDB 的數(shù)據(jù)主要是人源的寓涨,其他物種少一些。
- 如果通過改變基因大小寫來進(jìn)心人源和鼠的基因轉(zhuǎn)化氯檐,會(huì)有一小部分基因失敗戒良。
- 不使用msigdbr包,biomaRt 可以進(jìn)行物種間同源基因轉(zhuǎn)換冠摄;但是會(huì)面對一對多的情況糯崎。
- Ge Lab Gene Set Files 也提供多個(gè)物種的GMT文件供下載; WEHI也提供人類和鼠類的MSigDB 基因集耗拓,但是數(shù)據(jù)只是 Entrez ID以及每個(gè)基因集是單獨(dú)的文件拇颅。 MSigDF 是基于WEHI 數(shù)據(jù)的。
原文: Introduction to the msigdbr package
作者:eason
鏈接:http://www.reibang.com/p/f2febb3123d8
來源:簡書
著作權(quán)歸作者所有乔询。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán)樟插,非商業(yè)轉(zhuǎn)載請注明出處。