1简介

从Bioconductor 3.5版本开始,EnsDb创建的数据库/包ensembldb对于具有编码区域的转录本,包中还包含转录本与蛋白质之间的映射。因此,除了基于RNA/ dna的特征外,还可以获得以下蛋白质相关信息:

  • protein_id: ensemble protein ID。这是在Ensembl中定义的蛋白质的主要ID,每个(蛋白质编码)Ensembl转录本都有一个分配给它的蛋白质ID。
  • protein_sequence:蛋白质的氨基酸序列。
  • uniprot_id:蛋白质的Uniprot ID。注意不是每一个ensembleprotein_id都有Uniprot ID,每个protein_id可能映射到几个uniprot_id.同样,同一个Uniprot ID可以映射到不同的Uniprot IDprotein_id
  • uniprot_db:该特性被注释的Uniprot数据库的名称。可以是任何一个SPTREMBLSWISSPROT
  • uniprot_mapping_type:用于将Uniprot ID分配给Ensembl蛋白ID的映射方法的类型。
  • protein_domain_id:根据source/analysis in/by定义的蛋白质结构域ID。
  • protein_domain_source:蛋白质结构域信息的来源,其中之一pfscanscanprosite总科包含了打印聪明的pirsftigrfam
  • interpro_accession:蛋白质域的Interpro登录ID(如果可用)。
  • prot_dom_start:该蛋白质序列中蛋白质结构域的起始点。
  • prot_dom_start:该蛋白质结构域在该蛋白质序列中的结束位置。

因此,对于蛋白质编码转录本,也可以从数据库中获取这些注释,因为蛋白质注释是可用的。请注意EnsDb通过Ensembl Perl API创建的数据库包含蛋白质注释,而使用ensDbFromAHensDbFromGffensDbFromGRanges而且ensDbFromGtf不喜欢。

library(ensembldb) library(EnsDb.Hsapiens.v86) edb <- EnsDb.Hsapiens.v86)v86 ##评估我们是否有蛋白质注释可用
##[1]真

类也会列出附加的表和列listTables而且listColumns方法。

listTables(教育局)
# # # # $基因[1]“gene_id”“gene_name”“gene_biotype”“gene_seq_start”# #[5]“gene_seq_end”“seq_name”“seq_strand”“seq_coord_system”# # [9]tx美元符号“# # # # # #[1]“tx_id”“tx_biotype”“tx_seq_start”“tx_seq_end”# #[5]“tx_cds_seq_start”“tx_cds_seq_end”“gene_id”“tx_name tx2exon美元# # # # # #[1]“tx_id”“exon_id”“exon_idx”外显子美元# # # # # #[1]“exon_id”“exon_seq_start”“exon_seq_end”# # # # # #号染色体美元[1]“seq_name”“seq_length”“is_circular”# # # # # # $蛋白质[1]“tx_id”“protein_id”“protein_sequence”## ## $ uniprot# #[1]“protein_id”“uniprot_id”“uniprot_db”##[4]“uniprot_mapping_type”## ## $protein_domain ##[1]“protein_id”“protein_domain_id”“protein_domain_source”##[4]“interpro_accession”“prot_dom_start”“prot_dom_end”## ## $entrezgene ##[1]“gene_id”“entrezid”## ## $metadata ##[1]“name”“value”

在接下来的章节中,我们将举例说明如何1)获取蛋白质注释作为基因/转录注释的附加列,2)获取蛋白质注释数据和3)将蛋白质映射到基因组。

2获取基因和转录本的蛋白质注释

(蛋白质编码)转录本的蛋白质注释可以通过将所需的注释列添加到的参数。基因成绩单方法。

##获得ZBTB16转录本的蛋白质信息txs <- transcripts(edb, filter = GeneNameFilter("ZBTB16"), columns = c("protein_id", "uniprot_id", "tx_biotype")) txs
GRanges对象有11个范围和5个元数据列:# # seqnames范围链| protein_id # # < Rle > < IRanges > < Rle > | <人物> # # ENST00000335953 11 114059593 - 114059593 + | ENSP00000338157 # # ENST00000335953 11 114059593 - 114059593 + | ENSP00000338157 # # ENST00000541602 11 114059725 - 114059725 + | < NA > # # ENST00000544220 11 114059737 - 114059737 + | ENSP00000437716 # # ENST00000535700 11 114060257 - 114060257 + | ENSP00000443013 # # ENST00000392996 11 114060507 - 114060507 + | ENSP00000376721 # # ENST00000392996 11 114060507 - 114060507 + | ENSP00000376721## ENST00000539918 11 114064412-114247344 + | ENSP00000445047 ## ENST00000545851 11 114180766-114247296 + |  ## ENST00000535379 11 114237207-114250557 + |  ## ENST00000535509 11 114246790-114250476 + |  ## uniprot_id tx_biotype tx_id ##    ## ENST00000335953 Q05516 protein_coding ENST00000335953 ## ENST00000335953 A0A024R3C6 protein_coding ENST00000335953 ## ENST00000541602  retained_intron ENST00000541602 ## ENST00000544220 F5H6C3 protein_coding ENST00000544220 ## ENST00000535700 F5H5Y7 protein_coding ENST00000535700 ## ENST00000392996 Q05516 protein_coding ENST00000392996 ## ENST00000392996 A0A024R3C6 protein_coding ENST00000392996 ## ENST00000539918 H0YGW2 nonsense_mediated_de.. ENST00000539918 ## ENST00000545851  processed_transcript ENST00000545851 ## ENST00000535379  processed_transcript ENST00000535379 ## ENST00000535509  retained_intron ENST00000535509 ## gene_name ##  ## ENST00000335953 ZBTB16 ## ENST00000335953 ZBTB16 ## ENST00000541602 ZBTB16 ## ENST00000544220 ZBTB16 ## ENST00000535700 ZBTB16 ## ENST00000392996 ZBTB16 ## ENST00000392996 ZBTB16 ## ENST00000539918 ZBTB16 ## ENST00000545851 ZBTB16 ## ENST00000535379 ZBTB16 ## ENST00000535509 ZBTB16 ## ------- ## seqinfo: 1 sequence from GRCh38 genome

基因ZBTB16具有蛋白质编码和非编码转录本,因此,我们得到了编码-和的蛋白质IDNA对于非编码成绩单。还请注意,我们有一个针对无义介导的mrna衰变的转录本,与之相关的蛋白ID,但没有Uniprot ID。

tx_biotype转录本的子集,而不是protein_coding。Txs [Txs $tx_biotype != "protein_coding", c("uniprot_id", "tx_biotype", "protein_id")]
5个范围和3个元数据列的GRanges对象:# # seqnames范围链| uniprot_id # # < Rle > < IRanges > < Rle > | <人物> # # ENST00000541602 11 114059725 - 114059725 + | < NA > # # ENST00000539918 11 114064412 - 114064412 + | H0YGW2 # # ENST00000545851 11 114180766 - 114180766 + | < NA > # # ENST00000535379 11 114237207 - 114237207 + | < NA > # # ENST00000535509 11 114246790 - 114246790 + | < NA > # # tx_biotype protein_id # # <人物> <人物> # # ENST00000541602 retained_intron < NA > # # ENST00000539918 nonsense_mediated_de . .ENST00000545851 processed_transcript  ## ENST00000535379 processed_transcript  ## ENST00000535509 retained_intron  ## ------- # seqinfo:来自GRCh38基因组的1个序列

而从一个蛋白质编码转录本到一个Ensembl蛋白ID的映射(列protein_id)为1:1,之间的映射protein_id而且uniprot_id可以是n:m,即每个Ensembl蛋白ID可以映射到1个或多个Uniprot ID,每个Uniprot ID可以映射到多个protein_id(因此tx_id).如果从数据库中查询与Uniprot相关的附加列或甚至蛋白质ID特征的转录本,则应该记住这一点,因为在这种情况下会返回一个冗余的转录本列表。

列出编码转录本mcols(txs[txs$tx_biotype == "protein_coding", c("tx_id", "protein_id", "uniprot_id")]的蛋白质id和uniprot id)
# # DataFrame 6行3列# # tx_id protein_id uniprot_id # # <人物> <人物> <人物> # # ENST00000335953 ENST00000335953 ENSP00000338157 Q05516 # # ENST00000335953 ENST00000335953 ENSP00000338157 A0A024R3C6 # # ENST00000544220 ENST00000544220 ENSP00000437716 F5H6C3 # # ENST00000535700 ENST00000535700 ENSP00000443013 F5H5Y7 # # ENST00000392996 ENST00000392996 ENSP00000376721 Q05516 # # ENST00000392996 ENST00000392996 ENSP00000376721 A0A024R3C6

一些针对Uniprot id的n:m映射可以通过将其限制为来自一个Uniprot数据库(SPTREMBLSWISSPROT)或映射到某种类型的映射方法的映射。对应的过滤器是UniprotDbFilterUniprotMappingTypeFilter(使用uniprot_db而且uniprot_mapping_type的列uniprot数据库表)。在下面的示例中,我们将结果限制为具有映射类型的Uniprot id直接

列出数据库中所有的uniprot映射类型。listUniprotMappingTypes(教育局)
##[1]“直接”“sequence_match”
##获取ZBTB16的所有protein_coding转录本以及它们的protein_id ##和Uniprot id,限制为基于“DIRECT”映射方法的protein_id到uniprot_id映射。txs <- transcripts(edb, filter = list(GeneNameFilter("ZBTB16"), UniprotMappingTypeFilter("DIRECT")), columns = c("protein_id", "uniprot_id", "uniprot_db")) mcols(txs)
## ENST00000335953 ENST00000544220 ENSP00000437716 F5H6C3 SPTREMBL ENST00000544220 ## ENST00000535700 ENSP00000443013 F5H5Y7 SPTREMBL ENST00000535700 ## ENST00000392996 ensp00000446721 Q05516 SWISSPROT ENST00000392996 ## ENST00000539918 ENSP00000445047 hygw2 SPTREMBL ENST00000539918 ## gene_nameuniprot_mapping_type ## <字符> <字符> ## ENST00000335953 ZBTB16 DIRECT ## ENST00000544220 ZBTB16 DIRECT ## ENST00000535700 ZBTB16 DIRECT ## ENST00000392996 ZBTB16 DIRECT ## ENST00000539918 ZBTB16 DIRECT

在本例中使用UniprotMappingTypeFilter解决了Uniprot ID与Ensembl蛋白ID的多重映射问题,但Uniprot ID与Ensembl蛋白ID之间存在一定的差异Q05516仍然被分配到两个ensemble蛋白idENSP00000338157而且ENSP00000376721

所有蛋白质注释也可以添加为元数据列到结果的时候基因外显子exonsBytranscriptsBycdsByfiveUTRsByTranscript而且threeUTRsByTranscript方法来指定所需的列名参数。对于非编码转录本NA将在蛋白质注释列中报告。

除了从数据库中检索蛋白质注释外,我们还可以使用蛋白质数据来过滤结果。在下面的例子中,例如,我们从数据库中获取由任何转录本编码的蛋白质中具有特定蛋白质结构域的所有基因。

##获取所有编码在11号染色体上的基因,该蛋白质含有##特定的蛋白质结构域。gns <-基因(edb, filter = ~ prot_dom_id == "PS50097" & seq_name == "11")长度(gns)
## [1]
排序(gns gene_name美元)
##[1]“abtb2”“btbd18”“kbtbd3”“kbtbd4”“kctd21”“klhl35”“zbtb16”“zbtb3”##[9]“zbtb44”

所以,我们总共得到了152个蛋白质结构域的基因。除了ProtDomIdFilter,亦是ProteinidFilterUniprotidFilter可用于查询数据库中蛋白质ID或Uniprot ID匹配条件的条目。

3.方法中的方法AnnotationDbi包来查询蛋白质注释

选择而且mapIds方法。AnnotationDbi包也可以用来查询EnsDb对象用于蛋白质注释。类返回所支持的列和键类型而且keytypes方法。

##显示数据库列提供的所有列(edb)
[1]“entrezid”“exonid”“exonidx”##[4]“exonseqend”“exonseqstart”“genebiotype”##[7]“geneid”“geneseqend”“interproaccession”“iscircular”##[13]“protdomend”“protdomstart”“proteindomainid”## b[16]“proteindomainsource”“proteinid”“proteinsequence”##[19]“seqstrand”“seqlength”“seqname”##[25]“txcdsseqend”“txcdsseqstart”“txbiotype”##[28]“txname”“txseqend”“txseqstart”##[31]“uniprotdb”“UNIPROTID”“UNIPROTMAPPINGTYPE”
##显示所有支持的键类型/过滤器
##[1]“entrezid”“exonid”“genebiotype”##[4]“geneid”“genename”“protdomid”##[7]“proteindomainid”“proteindomainsource”“proteinid”##[10]“seqname”“seqstrand”“symbol”##[13]“txbiotype”“txid”“txname”##[16]“uniprotid”

下面我们获取注释到该基因的所有Uniprot idZBTB16

select(edb, keys = "ZBTB16", keytype = "GENENAME", columns = "UNIPROTID")
## genename uniprotid ## 1 zbtb16 q05516 ## 2 zbtb16 a0a024r3c6 ## 3 zbtb16 < na > ## 4 zbtb16 f5h6c3 ## 5 zbtb16 f5h5y7 ## 6 zbtb16 h0ygw2

这将返回由基因转录本编码的所有蛋白质的所有Uniprot id。来自ZBTB16的一个转录本,虽然有一个CDS并被注释到一个蛋白质,但没有分配Uniprot ID(因此NA由上述调用返回)。正如我们在下面看到的,这个转录本是无意义介导的mRNA衰变的目标。

##调用select,这次提供一个GeneNameFilter。select(edb, keys = GeneNameFilter("ZBTB16"), columns = c("TXBIOTYPE", "UNIPROTID", "PROTEINID")))
# # 1 # # TXBIOTYPE UNIPROTID PROTEINID GENENAME protein_coding Q05516 ENSP00000338157 ZBTB16 # # 2 protein_coding A0A024R3C6 ENSP00000338157 ZBTB16 # # 3 retained_intron < NA > < NA > ZBTB16 # # 4 protein_coding F5H6C3 ENSP00000437716 ZBTB16 # # 5 protein_coding F5H5Y7 ENSP00000443013 ZBTB16 # # 6 protein_coding Q05516 ENSP00000376721 ZBTB16 # # 7 protein_coding A0A024R3C6 ENSP00000376721 ZBTB16 # # 8 nonsense_mediated_decay H0YGW2 ENSP00000445047 ZBTB16 # # 9 processed_transcript < NA > < NA > ZBTB16

还要注意,这次我们通过了aGeneMameFilter参数。

4从数据库中检索蛋白质

蛋白质可以使用专用的蛋白质方法返回,不像基于DNA/ rna的方法基因成绩单,不是农庄对象默认为DataFrame对象。或者,结果可以返回为data.frame或者作为AAStringSet对象的Biobase包中。请注意,如果有更合适的对象来表示蛋白质注释,这可能会在未来的版本中发生变化。

在下面的代码块中,我们获取该基因的所有蛋白质注释ZBTB16

##获取所有蛋白质,并返回一个AAStringSet prts <- proteins(edb, filter = GeneNameFilter("ZBTB16"),返回。type = "AAStringSet") prts
长度为5的AAStringSet对象:## width seq names ## [1] 673 MDLTKMGMIQLQNPSHPTGLLCKghkpeeippdriektylylcyv ensp00000338157 ## [2] 115 mdltkmgmiqlqnpshptgllck…Qakaedlddllyaaeileieyle ensp00000437716 ## [3] 148 mdltkmgmiqlqnpshptgllck…Qasddndteatmadggaeeeedr ensp00000443013 ## [4] 673 mdltkmgmiqlqnpshptgllck…ghkpeeippdriektylylcyv ensp00000376721 ## [5] 55 xggllpqgfiqrelfsklgelav…GEQCSVCGVELPDNEAVEQHRVF ENSP00000445047

除了氨基酸序列,还有prt属性还包含可访问的其他注释mcols方法(元数据列)。参数提供的所有附加列也添加到mcolsDataFrame

mcols (prt)
## ENSP00000338157 ENST00000335953 ensp00000544220 ENSP00000437716 ZBTB16 ## ENSP00000443013 ENST00000535700 ENSP00000443013 ZBTB16 ## ENSP00000376721 ENST00000392996 ENSP00000376721 ZBTB16 ## ENSP00000445047 ENST00000539918 ENSP00000445047 ZBTB16

注意蛋白质方法将只检索编码蛋白质的转录本的基因/转录本注释。因此,注释的非编码转录本的基因ZBTB16,这些邮件都被回复了基因成绩单在前一节中没有获取。

查询额外的Uniprot标识符或蛋白质域数据目前将导致一个冗余的蛋白质列表,如下面的代码块所示。

除了蛋白质注释之外,还可以获取蛋白质域注释。pd <- proteins(edb, filter = GeneNameFilter("ZBTB16"), columns = c("tx_id", listColumns(edb, "protein_domain")),返回。type = "AAStringSet"
##长度为81的AAStringSet对象:hkpeeippdriektylylcyv ensp00000338157 ## [2] 673 mdltkmgmiqlqnpshptgllck…hkpeeippdriektylylcyv ensp00000338157 ## [3] 673 mdltkmgmiqlqnpshptgllck…hkpeeippdriektylylcyv ensp00000338157 ## [4] 673 mdltkmgmiqlqnpshptgllck…hkpeeippdriektylylcyv ensp00000338157 ## [5] 673 mdltkmgmiqlqnpshptgllck…hkpeeippdriektylylcyv ensp00000338157 ## ... ... ...## [77] 673 mdltkmgmiqlqnpshptgllck…hkpeeippdriektylylcyv ensp00000376721 ## [78] 673 mdltkmgmiqlqnpshptgllck…hkpeeippdriektylylcyv ensp00000376721 ## [79] 673 mdltkmgmiqlqnpshptgllck…hkpeeippdriektylylcyv ensp00000376721 ## [80] 673 mdltkmgmiqlqnpshptgllck…hkpeeippdriektylylcyv ensp00000376721 ## [81] 55 xggllpqgfiqrelfsklgelav…EQCSVCGVELPDNEAVEQHRVF ENSP00000445047

结果包含每个蛋白质中每个蛋白质结构域的一行/元素。每个蛋白质的蛋白质结构域的数量和mcols如下所示。

每个蛋白质的蛋白质结构域数量:table(names(pd))
## ## ensp00000338157 ensp00000376721 ensp00000437716 ensp00000443013 ensp00000445047 ## 36 36 44 1
## mcols(pd)
## ENSP00000338157 ENSP00000338157 ENST00000335953 ensp00000335953 ENSP00000338157 PS50157 ## ENSP00000338157 ENST00000335953 ENSP00000338157 PS50157 ## ENSP00000338157 ENST00000335953 ensp00000335953 ENSP00000338157 PS50157 ## ENSP00000338157 ENST00000335953 ENSP00000338157 PS50157 ## ENSP00000338157 ENST00000335953 ENSP00000338157 PS50157 ## ENSP00000338157 ENST00000335953 ENSP00000338157 PS50157 ## ENSP00000338157 ENST00000335953 ENSP00000338157 PS50157 ## ENSP00000338157 ENST00000335953 ENSP00000338157 PS50157 ## ENSP00000338157 ENST00000335953 ENSP00000338157 PS50157 ## ENSP00000338157 ENST00000335953 ENSP00000338157 PS50157# # # # ENSP00000376721 ENST00000392996 ENSP00000376721 SM00355 ENSP00000376721 ENST00000392996 ENSP00000376721 SM00355 # # ENSP00000376721 ENST00000392996 ENSP00000376721 SM00355 # # ENSP00000376721 ENST00000392996 ENSP00000376721 SM00355 # # ENSP00000445047 ENST00000539918 ENSP00000445047 NA # # protein_domain_source interpro_accession prot_dom_start # # <人物> <人物> <整数> # # ENSP00000338157 pfscan IPR007087 602 # # ENSP00000338157 pfscan IPR007087 490 # # ENSP00000338157 pfscanIPR007087 630 ## ENSP00000338157 pfscan IPR007087 432 ## ENSP00000338157 pfscan IPR007087 546 ## ... ... ... ...# ENSP00000376721智能IPR015880 546 ## ENSP00000376721智能IPR015880 602 ## ENSP00000376721智能IPR015880 630 ## ENSP00000445047 NA NA NA ## prot_dom_end gene_name ## <整数> <字符> ## ENSP00000338157 629 ZBTB16 ## ENSP00000338157 517 ZBTB16 ## ENSP00000338157 459 ZBTB16 ## ENSP00000338157 573 ZBTB16 ## ... ... ...## ensp00000376721 596 zbtb16 ## ensp00000376721 624 zbtb16 ## ensp00000376721 652 zbtb16 ## ensp00000445047 na zbtb16

正如我们所看到的,每个蛋白质都可以有几个蛋白质结构域,氨基酸序列中的开始坐标和结束坐标以列形式报告prot_dom_start而且prot_dom_end.而且,不是所有的集成蛋白id,比如protein_idENSP00000445047映射到Uniprot ID或具有蛋白质结构域。

5将蛋白质中的肽特征映射到基因组中

坐标映射。限制型心肌病Vignette提供了所有功能的详细描述,允许在基因组、转录本和蛋白质坐标之间进行映射。

6会话信息

sessionInfo ()
## R版本4.0.5(2021-03-31)##平台:x86_64-pc-linux-gnu(64位)##运行在:Ubuntu 18.04.5 LTS ## ##矩阵产品:默认## BLAS: /home/biocbuild/bbs-3.12-bioc/R/lib/libRblas。所以## LAPACK: /home/biocbuild/bbs-3.12-bioc/R/lib/libRlapack。所以## ## 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_phone = c# # [11] LC_MEASUREMENT=en_US。UTF-8 LC_IDENTIFICATION=C ## ##附加的基本包:##[1]网格stats4并行统计图形grDevices utils ##[8]数据集方法基础## ##其他附加包:# # # # [1] AnnotationHub_2.22.1 [2] BiocFileCache_1.14.0 # # [3] dbplyr_2.1.1 # # [4] magrittr_2.0.1 # # [5] BSgenome.Hsapiens.NCBI.GRCh38_1.3.1000 # # [6] BSgenome_1.58.0 # # [7] rtracklayer_1.50.0 # # [8] Biostrings_2.58.0 # # [9] XVector_0.30.0 # # [10] Gviz_1.34.1 # # [11] EnsDb.Hsapiens.v86_2.99.0 # # [12] ensembldb_2.14.1 # # [13] AnnotationFilter_1.14.0 # # [14] GenomicFeatures_1.42.3 # # [15] AnnotationDbi_1.52.0 # # [16] Biobase_2.50.0 # # [17] GenomicRanges_1.42.0 # # [18] GenomeInfoDb_1.26.7 # # [19]IRanges_2.24.1 ## [20] S4Vectors_0.28.1 ## [21] BiocGenerics_0.36.1 ## [22] BiocStyle_2.18.1 ## ##通过命名空间加载(并且没有附加):# # # # [1] colorspace_2.0-0 ellipsis_0.3.1 [3] biovizBase_1.38.0 htmlTable_2.1.0 # # [5] base64enc_0.1-3 dichromat_2.0-0 # # [7] rstudioapi_0.13 bit64_4.0.5 # # [9] interactiveDisplayBase_1.28.0 fansi_0.4.2 # # [11] xml2_1.3.2 splines_4.0.5 # # [13] cachem_1.0.4 knitr_1.32 # # [15] Formula_1.2-4 jsonlite_1.7.2 # # [17] Rsamtools_2.6.0 cluster_2.1.2 # # [19] png_0.1-7 shiny_1.6.0 # # [21] BiocManager_1.30.12 compiler_4.0.5 # # [23] httr_1.4.2 backports_1.2.1 # # [25] assertthat_0.2.1 Matrix_1.3-2 # # [27][39] jquerylib_0.1.3 vctrs_0.3.7 ## [41] xfun_0.22 string_1 .4.0 ## [45] XML_3.99-0.6 zlibbioc_1.36.0 ## [47] scales_1.1.1 VariantAnnotation_1.36.0 ## [49] promises_1.2.0.1 hms_1.0.0 ## [53] MatrixGenerics_1.2.1 ProtGenerics_1.22.0 ## [35] GenomeInfoDbData_1.2.4 dplyr_1.0.5 ## [37] rappdirs_0.3.3 Rcpp_1.0.6 ## [39] jquerylib_0.1.3 vctrs_0.3.7 ## [43] mimme_0.10 lifecycle_1.0.0 ## [47] MatrixGenerics_1.2.1 SummarizedExperiment_1.20.0 RColorBrewer_1.1-2 ## [55] yaml_2.2.1 curl_4.3 ## [57] memoise_2.0.0 gridExtra_2.3 ## [59] ggplot2_3.3.3 sass_0.3.1 ## [61] biomaRt_2.46.3 rpart_4.1-15 ## [63] latticeExtra_0.6-29 stringi_1.5.3 ## [65] RSQLite_2.2.6 BiocVersion_3.12.0 ## [67] highr_0.9 checkmate_2.0.0 ## [69] BiocParallel_1.24.1 rlang_0.4.10 ## [71] pkgconfig_2.0.3 matrixStats_0.58.0 ## [73] bitops_1.0-6 evaluate_0.14 ## [75] lattice_0.20-41 purrr_0.3.4 ## [77] GenomicAlignments_1.26.0 htmlwidgets_1.5.3 ## [79] bit_4.0.4 tidyselect_1.1.0 ## [81] bookdown_0.21 R6_2.5.0 ## [83] magick_2.7.1 generics_0.1.0 ## [85] Hmisc_4.5-0 DelayedArray_0.16.3 ## [87] DBI_1.1.1 withr_2.4.2 ## [89] pillar_1.6.0 foreign_0.8-81 ## [91] survival_3.2-10 RCurl_1.98-1.3 ## [93] nnet_7.3-15 tibble_3.1.1 ## [95] crayon_1.4.1 utf8_1.2.1 ## [97] rmarkdown_2.7 jpeg_0.1-8.1 ## [99] progress_1.2.2 data.table_1.14.0 ## [101] blob_1.2.1 digest_0.6.27 ## [103] xtable_1.8-4 httpuv_1.5.5 ## [105] openssl_1.4.3 munsell_0.5.0 ## [107] bslib_0.2.4 askpass_1.1