1简介

BiocSet是一个以tibble格式表示元素集的包BiocSet类。元素集被读入并转换为tibble格式。从这里开始,典型的dplyr可以对元素集执行操作。BiocSet还提供了映射不同ID类型的功能,并为元素和集提供引用url。

2安装

安装Bioconductor的最新版本:

如果(!requireNamespace("BiocManager", quiet = TRUE)) install.packages("BiocManager")

开发版也可从GitHub安装:

BiocManager:安装(“Kayla-Morrell / BiocSet”)

然后加载BiocSet

库(BiocSet)

3.BiocSet

3.1输入与输出

BiocSet可以创建BiocSet对象使用两种不同的输入方法。第一种是输入元素集的命名字符向量。BiocSet返回三个tibbles,es_element它包含元素,es_set其中包含集合和es_elementset它包含元素和集合。

台< - BiocSet (set2 =中的字母,关于我校=字母)台# >类:BiocSet # > # > es_element(): # > #宠物猫:52 x 1 # >元素# > < >从而向1 # > # > 2 b # > 3 c  #> # ... 有49行# > # > es_set(): # > #宠物猫:2 x 1 # >设置# > < >从而向# > 1 set2 # > 2中的关于我校# > # > es_elementset() <活性>:# > #宠物猫:52 x 2 # >元素集# > <空空的> < >从而向1 # > set2 # > 2 b中的set2 # > 3 c中的set2。中的  #> # ... 有49行

创建的第二种方法BiocSet对象的读入.gmt文件。使用进口(),一个下载的路径.gmt文件被读入BiocSet对象返回。下面的示例使用从GSEA,也包括在此套餐中。这BiocSet包括一个列中的es_elementset用于参考元素集的来源。

gmtFile <- system. txt。file(package = "BiocSet", "extdata", " hallmarker .gene. signal .gmt") tbl2 <- import(gmtFile) tbl2 #> class: BiocSet #> #> es_element(): #> # A tibble: 4,386 x 1 #> element #>  #> 1 JUNB #> 2 CXCL2 #> 3 ATF3 #> #…with 4,383 more rows #> # b> es_set(): #> # A tibble:50 x 2 #> set source #>   #> 1 HALLMARK_TNFA_SIGNALIN…http://www.broadinstitute.org/gsea/msigdb/cards/HALLM…#> 2 HALLMARK_HYPOXIA http://www.broadinstitute.org/gsea/msigdb/cards/HALLM…#> 3 hallmark_cholol_h…http://www.broadinstitute.org/gsea/msigdb/cards/HALLM…#> #…with 47 more rows #> #> es_elementset() : #> # A tibble:7,324 x 2 #>元素集#>   #> 1 JUNB HALLMARK_TNFA_SIGNALING_VIA_NFKB #> 2 CXCL2 HALLMARK_TNFA_SIGNALING_VIA_NFKB #> 3 ATF3 HALLMARK_TNFA_SIGNALING_VIA_NFKB #> #

export ()允许BiocSet对象要导出到具有扩展名的临时文件.gmt

fl <- tempfile(fileext = ".gmt") gmt <- export(tbl2, fl) gmt #> GMTFile对象#>资源:/tmp/RtmpbBXhto/file70e03300dff0.gmt

3.2实现的功能

可用于BiocSet是激活不同的tibbles来执行某些功能的能力。当一个BiocSet是创造的,tibblees_elementset自动激活,所有功能将在此tibble上执行。BiocSet采用多种常用的用法dplyr函数如filter ()select ()变异()总结(),安排().对于每个函数,用户都可以选择不同的tibble来激活和使用' verb_tibble '来工作。在函数执行之后,' active ' tibble将返回到函数调用之前活动的tibble。下面展示了这些函数如何工作的一些示例。

台< - BiocSet (set2 =中的字母,关于我校=字母)台# >类:BiocSet # > # > es_element(): # > #宠物猫:52 x 1 # >元素# > < >从而向1 # > # > 2 b # > 3 c  #> # ... 有49行# > # > es_set(): # > #宠物猫:2 x 1 # >设置# > < >从而向# > 1 set2 # > 2中的关于我校# > # > es_elementset() <活性>:# > #宠物猫:52 x 2 # >元素集# > <空空的> < >从而向1 # > set2 # > 2 b中的set2 # > 3 c中的set2。中的  #> # ... 有49行台% > % filter_element(元素= =”“| = =“a”)# >类:BiocSet # > # > es_element ():# > #宠物猫:2 x 1 # >元素# > < >从而向# > 1 # > 2 # > # > es_set(): # > #宠物猫:2 x 1 # >设置# > < >从而向# > 1 set2 # > 2中的关于我校# > # > es_elementset() <活性>:# > #宠物猫:2 x 2 # >元素集# > <空空的> < >从而向1 # > set2 # > 2中的一个关于我校资源% > % mutate_set (pval = rnorm(1:2)) # >类:BiocSet # > # > es_element(): # > #宠物猫:52 x 1 # >元素# > < >从而向1 # > # > 2 b # > 3 c  #> # ... 有49行# > # > es_set(): # > #宠物猫:2 x 2 # >设置pval # > <空空的> <双> # > 1 set2 1.06中的# -1.01 # > # > > 2关于我校es_elementset() <活性>:# > #宠物猫:52 x 2 # >元素集# > <空空的> < >从而向1 # > set2 # > 2 b中的set2 # > 3 c中的set2。中的  #> # ... 有49行台% > % arrange_elementset (desc(元素))# >类:BiocSet # > # > es_element(): # > #宠物猫:52 x 1 # # > >元素< >从而向1 # > # > 2 b # > 3 c  #> # ... 有49行# > # > es_set(): # > #宠物猫:2 x 1 # >设置# > < >从而向# > 1 set2 # > 2中的关于我校# > # > es_elementset() <活性>:# > #宠物猫:52 x 2 #>元素集#>   #> 1 z set1 #> 2 y set1 #> 3 x set1 #> #

3.3集合操作

BiocSet对象上执行常用的集合操作BiocSet对象。联盟()而且十字路口()两个set操作是否可用BiocSet.我们将演示用户如何找到两个并集BiocSet对象或在单个对象中BiocSet对象。交集的用法与此相同。

#两个BiocSet对象联盟es1 < - BiocSet (set2 =中的字母c(1:3),关于我校=字母(1:3)[c]) es2 < - BiocSet (set2 =中的字母c(2:4),关于我校=字母(2:4)[c])联盟(es1, es2) # >类:BiocSet # > # > es_element(): # > #宠物猫:8 x 1 # >元素# > < >从而向1 # > # > 2 b # > 3 c  #> # ... 有5行# > # > es_set(): # > #宠物猫:2 x 1 # >设置# > < >从而向# > 1 set2 # > 2中的关于我校# > # > es_elementset() <活性>:# > #宠物猫:8 x 2 # >元素集# > <空空的> < >从而向1 # > set2 # > 2 b中的set2 # > 3 c中的set2。中的  #> # ... 与# 5行工会在单个BiocSet对象胡< - BiocSet (set2 =中的字母c(1:10),关于我校=字母(4:20)[c]) union_single(胡)# >类:BiocSet # > # > es_element(): # > #宠物猫:20 x 1 # >元素# > < >从而向1 # > # > 2 b # > 3 c  #> # ... 与17行# > # > es_set(): # > #宠物猫:1 x 1 # >设置# > < >从而向# # # > > > 1联盟es_elementset() <活性>:# > #宠物猫:20 x 2 #>元素集#>   #> 1 a union #> 2 b union #> 3 c union #> #

4案例研究一

接下来,我们将演示的几个用法BiocSet用实验数据集气道从包装来看气道.该数据来自呼吸道平滑肌(ASM)细胞系的RNA-Seq实验。

第一步是加载库和必要的数据。

库(气道)数据(“气道”)se <-气道

这个函数go_sets ()从org对象中发现键并使用AnnotationDbi:选择来创建到GO id的映射。go_sets ()还允许用户在选择GO id时指明他们想要的证据类型或本体类型。默认情况是使用所有证据类型和所有本体类型。我们用a表示这些恒等式BiocSet对象。使用go_sets函数中,我们能够从人类数据的基因组注释中映射Ensembl id和GO idorg.Hs.eg.db包中。Ensembl id被视为元素,而GO id被视为集合。

库(org.Hs.eg.db)去< - go_sets (org.Hs.eg.db,“运用”)# >类:BiocSet # > # > es_element(): # > #宠物猫:22432 x 1 # >元素# > < >从而向# > 1 ENSG00000151729 # > 2 ENSG00000025708 # > 3 ENSG00000068305  #> # ... 与22429多行# > # > es_set(): # > #宠物猫:18105 x 1 # >设置# > < >从而向# > 1:0000002 # > 2:0000003 # > 3:0000003  #> # ... 与18102多行# > # > es_elementset() <活性>:# > #宠物猫:317035 x 2 # >元素集# > <空空的> <装备> > 1号ENSG00000151729: 0000002 # > 2 ENSG00000025708: 0000002 # > 3 ENSG00000068305: 0000002  #> # ... # 317032多行构造子集的一个例子,证据类型go_sets (org.Hs.eg.db,“运用”,证据= c(“他们”,“助教”))# >类:BiocSet # > # > es_element(): # > #宠物猫:15976 x 1 # >元素# > < >从而向# > 1 ENSG00000151729 # > 2 ENSG00000168685 # > 3 ENSG00000114030  #> # ... 与15973多行# > # > es_set(): # > #宠物猫:4305 x 2 #> set evidence #>   #> 1 GO:0000002  #> 2 GO:0000018  #> 3 GO:0000019  #> # with 4,302 more rows #> # A tibble: 67,915 x 2 #> elementset #>   #> 1 ENSG00000151729 GO:0000002 #> 2 ENSG00000168685 GO:0000018 #> 3 ENSG00000114030 GO:0000018 #> # with 67,912 more rows

有些用户可能对报告非描述性元素不感兴趣。的子集气道数据包括非零分析,然后过滤掉非描述性元素。

se1 = se (rowSums(化验(se)) ! = 0,)去% > % filter_element(元素% % rownames (se1)) # >类:BiocSet # > # > es_element(): # > #宠物猫:16472 x 1 # >元素# > < >从而向# > 1 ENSG00000151729 # > 2 ENSG00000025708 # > 3 ENSG00000068305  #> # ... 与16469多行# > # > es_set(): # > #宠物猫:18105 x 1 # >设置# > < >从而向# > 1:0000002 # > 2:0000003 # > 3:0000003  #> # ... 与18102多行# > # > es_elementset() <活性>:# > #宠物猫:249,545 x 2 #>元素集#>   #> 1 ENSG00000151729 GO:0000002 #> 2 ENSG00000025708 GO:0000002 #> 3 ENSG00000068305 GO:0000002 #> #…with 249,542 more rows

用户也可能感兴趣的是知道每个集合中有多少个元素。使用函数,我们可以计算每个集合的元素。

go %>% group_by(set) %>% dplyr::count() #>警告:' group_by() '的' add '参数从dplyr 1.0.0开始已弃用。#>请使用'。改为添加'参数。#>该警告每8小时显示一次。#>调用' lifecycle::last_warnings() '查看此警告生成的位置。#> # A tibble: 18105 x 2 #> # Groups: set [18105] #> set n #>   #> #> 1 GO:0000002 13 #> 2 GO:0000003 4 #> 3 GO:0000010 2 #> 4 GO:0000012 7 #> 5 GO:0000014 9 #> 6 GO:0000016 4 #> 8 GO:0000018 6 #> 9 GO:0000019 3 #> 10 GO:0000022 2 #> #…with 18,095 more rows

删除空集也可能有帮助。因为我们已经展示了如何计算每个集合的元素数量,所以我们知道这个数据集不包含任何空集。我们决定为那些可能需要此功能的用户进行演示。

Drop <- es_activate(go, elementset) %>% group_by(set) %>% dplyr::count() %>% filter(n == 0) %>% pull(set) go %>% filter_set(!(集% %下降))# >类:BiocSet # > # > es_element(): # > #宠物猫:22432 x 1 # >元素# > < >从而向# > 1 ENSG00000151729 # > 2 ENSG00000025708 # > 3 ENSG00000068305  #> # ... 与22429多行# > # > es_set(): # > #宠物猫:18105 x 1 # >设置# > < >从而向# > 1:0000002 # > 2:0000003 # > 3:0000003  #> # ... 与18102多行# > # > es_elementset() <活性>:# > #宠物猫:317,035 x 2 #>元素集#>   #> 1 ENSG00000151729 GO:0000002 #> 2 ENSG00000025708 GO:0000002 #> 3 ENSG00000068305 GO:0000002 #> #…with 317,032 more rows

为了简化映射,我们创建了一对地图功能。map_unique ()当已知1:1映射时使用,这需要四个参数,一个BiocSet对象,一个AnnotationDbi对象、要从中映射的id和要映射到的id。map_multiple ()需要第五个参数来指示函数在存在多个映射时应如何处理元素。两个函数都利用mapIdsAnnotationDbi并返回BiocSet对象。在下面的例子中,我们将展示如何使用map_unique映射的id从ensemble到基因符号。

% > % map_unique (org.Hs.eg.db,“运用”、“符号”)# >的选择()返回1:许多键之间的映射和列# >加入,通过=“元素”# >“mutate_if()的忽视以下分组变量:# # > >列元素的加入,通过= # >加入“元素”,由= # >加入“元素”,由= # >加入“集”,由= c(“元素”,“设置”)# >类:BiocSet # > # > es_element(): # > #宠物猫:19821 x 1 # >元素# > < >从而向# > 1 AKT3 # > 2 LONP1 # > 3 MEF2A  #> # ... 与19818多行# > # > es_set ():#> # A tibble: 18105 x 1 #> set #>  #> 1 GO:0000002 #> 2 GO:0000003 #> 3 GO:0000010 #> # with 18,102 more rows #> #> es_elementset() : #> # A tibble: 280,881 x 2 # b> elementset #>   #> 1 AKT3 GO:0000002 #> 2 LONP1 GO:0000002 #> 3 MEF2A GO:0000002 #> # with 280,878 more rows

的另一个功能BiocSet是向tibbles添加信息的能力。使用GO.db库中我们能够将定义映射到GO id。从那里,我们可以添加映射到tibble使用map_add ()还有变异函数。

library(go .db) map <- map_add_set(go, go .db, "GOID", "DEFINITION") go %>% mutate_set(DEFINITION = map) #> class: BiocSet #> #> es_element(): #> # A tibble: 22,432 x 1 #> element #>  #> 1 ENSG00000151729 #> 2 ENSG00000025708 #> 3 ENSG00000068305 #> # with 22,429 more rows #> #> es_set(): #> # A tibble:18105 x 2 #>集合定义#>   #> 1 GO:0000002线粒体结构和完整性的维护#> 2 GO:0000003新个体的产生,包含部分gen…#> 3 GO:0000010催化反应:全反式六烯基二磷酸+ isoop…#> #…与18,102多行#> #> es_elementset() <活跃>:#> # A tibble:317,035 x 2 #>元素集#>   #> 1 ENSG00000151729 GO:0000002 #> 2 ENSG00000025708 GO:0000002 #> 3 ENSG00000068305 GO:0000002 #> #…with 317,032 more rows

图书馆KEGGREST是KEGG REST服务器的客户端接口。KEGG包含了代表各种生物过程和疾病的相互作用、反应和关系网络的通路图。BiocSet有没有利用的功能KEGGREST发展一个BiocSet对象,该对象包含KEGG中每个路径映射的元素。

由于KEGGREST包的局限性,kegg_sets可能需要一些时间来运行,这取决于感兴趣的物种的路径数量。因此我们用BiocFileCache使数据对用户可用。

library(BiocFileCache) rname <- "kegg_hsa" exists <- NROW(bfcquery(query=rname, field="rname")) != 0L if (!exists) {kegg <- kegg_sets("hsa") fl <- bfcnew(rname =rname, ext =" .gmt") export(kegg_sets("hsa"), fl)} kegg <- import(bfcrpath(rname=rname))

kegg_sets ()函数删除不包含任何元素的路径。的元素使元素tibble发生突变map_add函数包含Ensembl和Entrez id。

map <- map_add_element(kegg, org.Hs.eg.db, "ENTREZID", "ENSEMBL") #> 'select()'返回1:多个键和列之间的映射kegg <- kegg %>% mutate_element(ENSEMBL = map)

由于我们使用的是ASM数据,我们认为我们可以将气道数据只包含哮喘途径中的元素。这个过滤器是在KEGG id上执行的,对于哮喘来说,KEGG id是“hsa05310”。

哮喘<- kegg %>% filter_set(set == "hsa05310") se <- se[rownames(se) %in% es_element(asthma)$ensembl,] se #> class: rangedsummarize实验#> dim: 7684 8 #> metadata(1): " #> assays(1): counts #> rownames(7684): ENSG00000000419 ENSG00000000938…ENSG00000273079 #> ENSG00000273085 #> rowData names(0): #> colnames(8): SRR1039508 SRR1039509…SRR1039520 SRR1039521 #> colData names(9): SampleName cell…样本BioSample

也可以对多条路径进行过滤。

pathways <- c("hsa05310", "hsa04110", "hsa05224", "hsa04970") multipaths <- kegg %>% filter_set(set %in% pathways) multipaths #> class: BiocSet #> #> es_element(): #> # A tibble: 7,911 x 2 #> element ensembl #>   #> 1 3101 ENSG00000160883 #> 2 3098 ENSG00000156515 #> 3 3099 ENSG00000159399 # b> # with 7,908 more rows #> #> es_set(): #> # A tibble:4 x 2 #> set source #>   #> 1 hsa04110  #> 2 hsa04970  #> 3 hsa05224  #> # with 1 more row #> # b> es_elementset() : #> # A tibble: 392 x 2 #> elementset #>   #> 1 595 hsa04110 #> 2 894 hsa04110 #> 3 896 hsa04110 #> # with 389 more rows

5案例研究二

此示例将以与案例研究一开始相同的方式开始,即加载气道数据集,但我们也会对数据进行一些重新格式化。最终目标是能够对数据执行基因集富集分析,并返回基因集的BiocSet对象。

数据("气道")气道$dex <-重新level(气道$dex, "untrt")

与其他分析类似,我们对气道使用图书馆的数据DESeq2然后将结果存储到tibble中。

库(DESeq2)库(tibble) des <- DESeqDataSet(airway, design = ~ cell + dex) des <- DESeq(des) #>估计大小因子#>估计分散#>基因分散估计#>均值-分散关系#>最终分散估计#>拟合模型和测试res <- results(des) tbl <- res %>% as.data.frame() %>% as_tibble(rownames = "ENSEMBL")

因为我们要用limma: goana ()为了执行GSEA,我们需要在数据中有ENTREZ标识符,并过滤掉一些NA信息。稍后,这将被视为我们的“元素”tibble。

tbl <- tbl %>% mutate(ENTREZID = mapIds(org.Hs.eg.db, ENSEMBL, "ENTREZID", "ENSEMBL") %>% unname()) #> 'select()'返回1:many mapping between key and columns tbl <- tbl %>% filter(!is.na(padj), !is.na(ENTREZID)) tbl #> # A tibble: 14,585 x 8 #> ENSEMBL baseMean log2FoldChange lfcSE stat pvalue padj ENTREZID #>         #> 1 ENSG0000000…709。-0.381 0.101 -3.79 1.52e-4 1.28e-3 7105 #> 2 ENSG0000000…0.207 0.112 1.84 6.53e-2 1.97e-1 8813 #> 3 ENSG0000000…237。0.0379 0.143 0.264 7.92e-1 9.11e-1 57147 #> 4 ENSG0000000…57.9 -0.0882 0.287 -0.307 7.59e-1 8.95e-1 55732 #> 5 ENSG0000000…5817。0.426 0.0883 4.83 1.38e-6 1.82e-5 3075 #> 6 ENSG0000000…1282。-0.241 0.0887 -2.72 6.58e-3 3.28e-2 2519 #> 7 ENSG0000000…-0.0476 0.167 -0.286 7.75e-1 9.053 e-1 2729 #> 8 ENSG0000000…369。-0.500 0.121 -4.14 3.48e-5 3.42e-4 4800 #> 9 ENSG0000000…183。-0.124 0.180 -0.689 4.91e-1 7.24e-1 90529 #> 10 ENSG0000000…-0.0411 0.103 -0.400 6.89e-1 8.57e-1 57185 #> #

现在已经为GSEA准备好了数据,我们可以继续使用了goana ()然后把结果做成画报。这将被认为是我们的'集' tibble。

下面的对象是蒙面从'package:DESeq2': #> #> plotMA #>下面的对象是蒙面从'package:BiocGenerics: #> #> plotMA go_ids <- goana(tbl$ENTREZID[tbl$padj < 0.05], tbl$ENTREZID, "Hs") %>% as.data.frame() %>% as_tibble(rownames = "GOALL") go_ids #> # A tibble:21148 x 6 # > GOALL项安大略省的N DE P.DE # > <空空的> <空空的> <空空的> <双> <双> <双> > 1号:00017……细胞激活BP 944 334 8.47 e-12 # > 2: 00022……免疫效应过程BP 819 256 1.66 e - 4 # > 3: 00022……参与免疫细胞激活resp BP 500 148 2.75 e - 2 # > 4: 00022…骨髓白细胞激活BP 465 149 1.23 e - 3 # > 5: 00022……骨髓细胞的激活参与imm BP 399 118 4.58 e - 2 # > 6: 00022中性粒细胞激活参与immun……BP 361 108 4.05 e - 2 # > 7: 00023…白细胞活化参与免疫…BP 496 148 2.11e- 2 #> 8 GO:00023…免疫系统过程BP 1960 650 2.32e-15 #> 9 GO:00024…白细胞介导免疫BP 544 167 4.83e- 3 #> 10 GO:00024…髓系白细胞介导免疫BP 409 124 2.03e- 2 #> #

我们需要做的最后一件事是创建一个tibble,我们将其视为我们的' elementset ' tibble。这个tibble将是所有元素和集合的映射。

foo <- AnnotationDbi::select(org.Hs.eg.db, tbl$ENTREZID, "GOALL", "ENTREZID") %>% as_tibble() #> 'select()'返回多个:多个键和列之间的映射foo <- foo %>% dplyr::select(- evidenceall) %>% distinct() foo <- foo %>% filter(ONTOLOGYALL == "BP") %>% dplyr::select(-ONTOLOGYALL) foo #> # A tibble:1,149,541 x 2 #> ENTREZID GOALL #>   #> 1 7105 GO:0001816 #> 2 7105 GO:0001817 #> 4 7105 GO:0002221 #> 5 7105 GO:0002252 #> 6 7105 GO:0002376 #> 7 7105 GO:0002682 #> 8 7105 GO:0002683 # b> 9 7105 GO:0002697 #> 10 7105 GO:0002698 #> #…with 1,149,531 more rows

这个函数BiocSet_from_elementset ()允许用户从tibbles创建一个BiocSet对象。当tibble中包含的元数据应该在BiocSet对象中时,此函数非常有用。为了使该函数正常工作,需要正确命名所连接的列。例如,为了在我们创建的tibbles上使用这个函数,我们需要将' element ' tibble中的列更改为' element ', ' set ' tibble中的列更改为' set ', ' elementset ' tibble也将如此。下面我们将对此进行演示,然后使用简单的函数创建BiocSet对象。

foo < - foo % > % dplyr:重命名(元素= ENTREZID设置= GOALL)台< -资源% > % dplyr::重命名(元素= ENTREZID) go_ids < - go_ids % > % dplyr::重命名(设置= GOALL) es < - BiocSet_from_elementset (foo,台,go_ids) # >加入,通过= # >加入“元素”,由= # >加入“集”,由= c(“元素”,“设置”)# >更多的元素“元素”比“elementset”# >元素在“设置”超过“elementset”es # >类:BiocSet # > # > es_element(): # > #宠物猫:12270 x 8 #> element ENSEMBL baseMean log2FoldChange lfcSE stat pvalue padj# >         #> 1 3980 ENSG00000005…206。-0.393 0.172 -2.29 2.23e- 2 8.66e-2 #> 2 1890 ENSG00000025…1.23 0.199 6.18 6.58e-10 1.49e-8 #> 3 4205 ENSG00000068…1566。0.529 0.0919 5.76 1.64 8.45 e - 9 e  #> # ... 与12267多行# > # > es_set(): # > #宠物猫:15000 x 6 # >设置项观察N DE P.DE # > <空空的> <空空的> <空空的> <双> <双> <双> > 1号:0000002线粒体基因组维护英国石油公司21日6 0.466 # > 2:0000003繁殖BP 963 309 0.00000334 # > 3: 0000012单链断裂修复BP 8 1 0.908  #> # ... 与14997多行# > # > es_elementset() <活性>:# > #宠物猫:1,149,541 x 2 #>元素集#>   #> 1 3980 GO:0000002 #> 2 1890 GO:0000002 #> 3 4205 GO:0000002 #> #…with 1,149,538 more rows

对于那些可能需要将这个元数据填充的BiocSet对象放回类似GRanges或summarizeexperimental的对象中的用户,我们已经创建了允许将BiocSet对象创建到tibble或data.frame中的函数。

tibble_from_element(es) #>连接,by = "set" #>连接,by = "element" #> #一个tibble:12262 x 14 # >元素设置项安大略省的N DE P.DE运用baseMean log2FoldChange # > <空空的> < lis > < lis > < lis > < lis > < lis > < lis > <列表> <列表> <列表> > 1 # 1 <空空…<空空…<空空…<双…<双…<双…<空空的[…<双[3…<双[32]> # > 100 <空空…<空空…<空空…<双…<双…<双…<空空的[…<双[4…<双[479]> # > 1000 <空空…<空空…<空空…<双…<双…<双…<空空的[…<双[2…<双[255]> # > 10000 <空空…<空空…<空空…<双…<双…<双…<空空的[…<双[1…<双[159]> # > 10001 <空空…<空空…<空空…<双…<双…<双…<空空的[…<双[7…<双[79]> # > 10003 <空空…<空空…<空空…<双…<双…<双…<空空的[…<双[3…<双[31]> # > 10004 <空空…<空空…<空空…<双…<双…<双…<空空的[…<双[1…<双[19]> # > 8 100048 <空空…<空空…<空空…<双…<双…<双…<空空的[…<双[9…<双[95]> # 9 > 10005 <空空…<空空…<空空…<双…<双…<双…<空空的[…<双[1…<双[152]> # > 10006 <空空…<空空…<空空…<双…<双…<双…<空空的[…<双[1…<双[166 ]> #> # ... 12252多行,4个变量:lfcSE , stat , #> # pvalue , padj  head(data.frame_from_elementset(es)) #>连接,by = "set" #>连接,by = "element" #>元素集Term Ont N DE P.DE #> 3980 GO:0000002线粒体基因组维护BP 21 6 0.4661969 #> 1890 GO:0000002线粒体基因组维护BP 21 6 0.4661969 #> 4 10891 GO:0000002线粒体基因组维护BP 21 6 0.4661969 #> 5 55186 GO:0000002线粒体基因组维护BP 21 6 0.4661969 #> 6 4358 GO:0000002线粒体基因组维护BP 21 6 0.4661969 #> ENSEMBLbaseMean log2FoldChange lfcSE stat pvalue #> 1 ENSG00000005156 205.6627 -0.39272067 0.17180717 -2.285822 2.226466e-02 #> 2 ENSG00000025708 144.6965 1.23104228 0.19933257 6.175821 5.759155 8.453618e-09 #> 4 ensg000001098305 152.4021 -0.23932270 0.17393025 -1.375969 1.688311e-01 #> 5 ENSG00000114120 2065.4720 0.14500117 0.09361789 1.548862 1.214150e-01 #> 6 ENSG00000115204 1091.6398 -0.09563418 0.09191349 -1.040480 2.981168e-01 #>Padj #> 1 8.661787e-02 #> 2 1.494473e-08 #> 3 1.636969e-07 #> 4 3.845953e-01 #> 5 3.059216e-01 #> 6 5.485252e-01

6信息查询

最后一个特点BiocSet是添加关于所有元素/集的引用信息的能力。用户可以使用该功能url_ref ()控件中添加信息BiocSet对象。如果用户对某个特定id有疑问,那么他们可以通过参考url获取更多信息。下面是一个使用的例子url_ref ()方法添加引用url我们上面使用的数据集。

url_ref(去)# >类:BiocSet # > # > es_element(): # > #宠物猫:22432 x 2 # # >元素url > <空空的> <科> # > 1 ENSG000001517…https://www.ensembl.org/Homo_sapiens/Gene/Summary?db=core; g = EN # > 2 ENSG000000257…https://www.ensembl.org/Homo_sapiens/Gene/Summary?db=core; g = EN # > 3 ENSG000000683…https://www.ensembl.org/Homo_sapiens/Gene/Summary?db=core; g = EN ... #> # ... 与22429多行# > # > es_set(): # > #宠物猫:18105 x 2 #>设置url #>   #> 1 GO:0000002 http://amigo.geneontology.org/amigo/medial_search?q=GO:0000002 #> 2 GO:0000003 http://amigo.geneontology.org/amigo/medial_search?q=GO:0000003 #> 3 GO:0000010 http://amigo.geneontology.org/amigo/medial_search?q=GO:0000010 #> #…with 18,102 more rows #> #> es_elementset() : #> # A tibble:317,035 x 2 #>元素集#>   #> 1 ENSG00000151729 GO:0000002 #> 2 ENSG00000025708 GO:0000002 #> 3 ENSG00000068305 GO:0000002 #> #…with 317,032 more rows

7会话信息

sessionInfo() #> R version 4.0.2(2020-06-22) #>平台:x86_64-pc-linux-gnu (64-bit) #>运行在:Ubuntu 18.04.4 LTS #> #>矩阵产品:默认#> BLAS: /home/biocbuild/bbs-3.11-bioc/R/lib/libRblas。所以#> LAPACK: /home/biocbuild/bbs-3.11- bio/ R/lib/libRlapack。so #> #> locale: #> [1] LC_CTYPE=en_US。UTF-8 LC_NUMERIC= c# > [3] LC_TIME=en_US。UTF-8 LC_COLLATE= c# > [5] LC_MONETARY=en_US。utf - 8 LC_MESSAGES = en_US。UTF-8 #> [7] LC_PAPER=en_US。UTF-8 LC_NAME= c# > [9] LC_ADDRESS=C LC_TELEPHONE= c# > [11] LC_MEASUREMENT=en_US。UTF-8 LC_IDENTIFICATION= c# > #>附加基础包:#> [1]parallel stats4 stats graphics grDevices utils datasets #>[8]方法基础#> #>其他附加包:# > [1] limma_3.44.3 tibble_3.0.3 # > [3] DESeq2_1.28.1 BiocFileCache_1.12.0 # > [5] dbplyr_1.4.4 GO.db_3.11.4 # > [7] org.Hs.eg.db_3.11.4 AnnotationDbi_1.50.1 # > [9] airway_1.8.0 SummarizedExperiment_1.18.2 # > [11] DelayedArray_0.14.1 matrixStats_0.56.0 # > [13] Biobase_2.48.0 GenomicRanges_1.40.0 # > [15] GenomeInfoDb_1.24.2 IRanges_2.22.2 # > [17] S4Vectors_0.26.1 BiocGenerics_0.34.0 # > [19] BiocSet_1.2.2 dplyr_1.0.0 # > [21] BiocStyle_2.16.0 # > # >加载通过名称空间(而不是附加):#> [10] pillar_1.4.6 RSQLite_2.2.0 lattice_0.20-41 #> [13] glue_1.4.1 digest_0.6.25 rcolorbrewer_1 .1- 1 #> [19] XVector_0.28.0 colorspace_1.4-1 htmltools_0.5.0 #> [19] Matrix_1.2-18 plyr_1.8.6 XML_3.99-0.4 #> [22] pkgconfig_2.0.3 genefilter_1.70.0 bookdown_0.20 #> [25] zlibbioc_1.34.0 xtable_1. 4 purrr_0.3.4 #> [28] scales_1.1.1BiocParallel_1.22.0 annotate_1.66.0 #> [31] KEGGREST_1.28.0 ggplot2_3.3.2 generics_0.0.2 #> [34] ellipsis_0.3.1 cli_2.0.2 survival_3. 3 #> [37] magrittr_1.5 crayon_1.3.4 memoise_1.1.0 #> [40] evaluate_0.14 fansi_0.4.1 tools_4.0.2 #> [43] formatR_1.7 lifecycle_0.2.0 string_1 .4.0 #> [46] locfit_1.5-9.4 munsell_0.5.0 Biostrings_2.56.0 #> [49] compiler_4.0.2 rlang_0.4.7 grid_4.0.2 #> [52] RCurl_1.98-1.2 rappdirs_0.3.1 bitops_1.0-6 #> [55] rmarkdown_2.3 gtable_0.3.0 DBI_1.1.0 #> [58] curl_4.3R6_2.4.1 GenomicAlignments_1.24.0 #> [61] knitr_1.29 rtracklayer_1.48.0 bit_1.1-15.2 #> [64] utf8_1.1.4 stringi_1.4.6 Rcpp_1.0.5 #> [67] geneplotter_1.66.0 vctrs_0.3.2 png_0.1-7 #> [70] tidyselect_1.1.0 xfun_0.15