##警告:“GGBase”包已弃用,将从Bioconductor ## 3.13版本中删除
##警告:软件包“GGtools”已弃用,将从Bioconductor ## 3.13版本中删除
##警告:“GGdata”包已弃用,将从Bioconductor ## 3.13版本中删除
R版本: R版本4.0.3 (2020-10-10)
Bioconductor版本: 3.12
包: 1.14.0
许多研究采用了mRNA丰度的全基因组测量(通常使用DNA微阵列分析,最近使用RNA-seq)结合高分辨率基因分型(通常补充对未直接分析的位点的统计imputation,导致具有量化不确定性的基因型调用)来寻找基因表达变异的遗传决定因素。人类应用中的主要参考文献包括张,Spielman, evens, Weber, Morley和Burdick (2005), Majewski和Pastinen(2011),以及Gaffney, Veyrieras, Degner, Pique-Regi, Pai, Crawford, Stephens, Gilad和Pritchard (2012);Shabalin(2012)解决了计算问题。
本文档主要讨论eQTL的搜索
一份典型的报告描述了搜索的调整(包括,例如,待测变异的小等位基因频率的边界,批量效应和其他形式的混淆的校正方法,从基因编码区域的距离方面的搜索范围),列举与附近基因表达变异相关的证据的变异,然后描述所发现变异的生物学作用。
注意:gQTLstats包将取代GGtools进行可扩展的eQTL分析;请查看2016Q1修订的工作流程。
假设有\ (N \)独立采样个体,基因表达测量\ (G \)基因或探针。每个个体在\ (\)DNA位置,由NCBI dbSNP或1000个基因组编目。已知a\(G \乘N\)矩阵表达测定结果,和\(N \乘以S\)基因分型结果以每个基因座的B等位基因数(或期望B等位基因数)的形式出现。选择搜索半径ρ\ (\ \)(例如,100kb)和每个基因\ (g \),确定搜索邻域\(N_g = N_{g,\rho} = [a_g-\rho, b_g+\rho]\),在那里\ (a_g \)表示基因转录区5 '端基因组坐标\ (g \),\ (b_g \)是3 '端的坐标。让\ (| N_g | \)表示该邻域的SNP数。主要目标是
GGtools函数All.cis()示例中的代码产生了一个在chr21上使用HapMap CEU population上的数据对cis eQTL进行严格限制搜索的示例。
##获取数据…构建地图……
##注意:以25000为半径扩展基因范围会导致负起始位置被重置为1。
##运行smFilter…滤镜探测在地图…测试…获取数据…建立映射,运行smFilter…滤镜探测在地图…测试…获取数据…建立映射,运行smFilter…滤镜探测在地图…测试…获取数据…建立映射,运行smFilter…滤镜探测在地图…测试…
cc = new("CisConfig") #采用默认配置chrnames(cc) = "21" #限制到chr21估计(cc) = FALSE #没有点估计需要f1 <-所有。Cis (cc) #计算测试;可以慢没有出席#到并行化
函数的结果继承自GRanges,并包含与生成函数有关的元数据。
长度(f1)
## [1] 4038
f1 [1:3]
包含3个范围和13个元数据列的cisRun对象:## seqnames ranges strand | snp snplocs ## | ## GI_11342663-S chr21 41337026-41434392 + | rs978935 41337036 - s chr21 41337026-41434392 + | rs2837335 41337988 ## gi_11337026 - s chr21 41337026-41434392 + | rs2837336 41338014 ## score fdr probeid MAF dist.mid mindist ## ## GI_11342663-S 0.94 1 GI_11342663-S 0.16667 -48673 24990 ## GI_11342663-S 0.320225 -4772124038 ## GI_11342663-S 0.06 1 GI_11342663-S 0.366667 -47695 24012 ## genestart geneend permScore_1 permScore_2 permScore_3 ## ## GI_11342663-S 41362026 41409392 0.29 0.00 0.09 ## GI_11342663-S 41362026 41409392 0.30 0.03 0.03 ## GI_11342663-S 41362026 41409392 0.65 0.23 1.76 ## ------- ## seqinfo: 93 sequences (1 circular) from hg19 genome
元数据(f1)
## $call ##所有。cis(config = cc) ## ## $config ## CisConfig实例;基因组hg19。关键参数:## smpack = GGdata;## nperm = 3;半径= 25000 ## ==== ## 配置使用# #[1]“smpack < -”“rhs <”“nperm < -”“folderStem < -“# #”[5]< -半径”“shortfac < -”“chrnames < -”“smchrpref < -“# #”[9]gchrpref < -”“schrpref < -”“geneApply < -”“geneannopk < -“# #”[13]snpannopk < -”“smFilter < -”“exFilter < -”“keepMapCache < -“# #”[17]SSgen < - <”“基因组”“excludeRadius < -”“估计< -“# #[21]”extraProps < -”“useME < - MEpvot < - - - - - -”
使用grange组织关联检验统计数据可以方便地将发现与其他形式的基因组注释合并。保留在排列下实现的关联分数,允许在组合或过滤后重新计算插件FDR。
GGBase中的plot_EvG函数支持关联的目标可视化。为了得到右图,对表达式矩阵进行了变换,去掉了10个最大特征值对应的主成分。这是一种减少“表达异质性”的粗略方法,这是迄今为止eQTL分析的主要关注点(Leek和Storey, 2007)。
plot_EvG(probeId("o67h4JQSuEa02CJJIQ"), rsid("rs2259928"), c20f, main="10 expr。电脑删除”)
上面我们有一个单一的snp -基因关联。
与ABHD12顺式观察到的关联家族也可以结合转录本模型进行可视化。
截至2013年11月,使用R包定义了表达、样本和基因型数据的合理有效表示
ExpressionSet实例的sampleNames元素必须与SnpMatrix实例的行名元素一致。在分析时,将发出警告,并在巧合不准确时尝试协调。
SnpMatrix实例使用字节码(潜在的)估算基因型。代码的每个元素在下面显示的单纯形上定义一个点,允许一个离散但丰富的关键数量集,即B等位基因的期望数量。请注意,在这种表示中不包含核苷酸代码。通常对于双等位的SNP, B表示字母顺序较晚的核苷酸。
我们可以使用在Yoruban (YRI) HapMap细胞系上收集的数据,用这个整体结构来说明基本操作。表达数据在ArrayExpression E-MTAB-264中获得(Stranger, Montgomery, Dimas, Parts, Stegle, Ingle, Sekowska, Smith, Evans, Gutierrez-Arcelus, Price, Raj, Nisbett, Nica, Beazley, Durbin, Deloukas, and Dermitzakis, 2012)。
库(GGtools)库(yri1kgv)库(lumiHumanAll.db) if (!exists("y22")) y22 = getSS("yri1kgv", "chr22")
## harmonizesamestrue和samplenes不符合行名(sml[[1]]);协调……[不是警告]
y22
## snpmatrix基于基因型集:##样本数量:79 ##存在的染色体数量:1 ##注释:lumiHumanAll.db ##表达数据dims: 21800 x 79 ## SNP总数:494322 ##表型数据:类'AnnotatedDataFrame'对象## sampleNames: NA18486 NA18487…NA19257 (79 total) ## varLabels:材料名称。类型……Factor.Value.SIGNAL。(26 ## total) ## varMetadata: labelDescription
暗(exprs (y22))
## [1] 21800 79
fn = featurename (y22)[1:5]
表情特征的注释可以从几个方向进行探索。首先,探测器名称本身在芯片上编码50个mers。
Library (lumi) id2seq(fn) #获取每个探针的50mer
## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #
#和一些注释
其次,可以映射到机构策划的基因标识符。
select(lumiHumanAll.db, keys=fn, keytype="PROBEID", columns=c("SYMBOL", "CHR", "ENTREZID"))
## deprecedcolsmessage()中的警告:不支持通过'CHR','CHRLOC','CHRLOCEND'访问基因位置信息。请使用一个基于范围的访问器,如基因(),或选择()##列值,如TXCHROM和TXSTART在TxDb或组织mdb ##对象。
## 'select()'返回键和列之间的1:1映射
## PROBEID符号CHR ENTREZID ## 1 NQqs8dKRwVSgI4SRPk THBS3 1 7059 ## 2 BvIpQQ9yzp__kCLnEU SLC38A2 12 54407 ## 3 NH1MoTHk7CULTog3nk CCNB1 5 891 ## 4 KNJlVFShMX1UoyIkRc ZNF496 1 84838 ## 5 fuplG2R3erO3QrujDk LOC100130238 12 100130238
最后,我们可以看看基因型信息。这可能是大量的,并在一个环境中进行管理,以减少潜在的复制费用。
gt22 <- smList(y22)[[1]] #访问基因型as(gt22[1:5,1:5], "character")
# # # # rs149201999 rs146752890 rs139377059 rs188945759 rs6518357 NA18486“/”“/”“/”“/”“/”# # NA18487“/”“/”“/”“/”“/”# # NA18489“/”“/”“/”“/”“/”# # NA18498“/”“/”“/”“/”“/”# # NA18499“/”“/”“/”“/”“/”
Cs22 = col.summary(gt22) #关于Cs22基因型的一些信息[1:10,]
##呼叫。利率确定。呼叫RAF MAF p.a a# # rs149201999 79 11 0.094936709 0.094936709 0.8101266 ## rs146752890 79 11 0.069620253 0.069620253 0.8607595 ## rs188945759 79 11 0.006329114 0.006329114 0.9873418 ## rs6518357 79 11 0.0075949367 0.075949367 0.8481013 ## rs62224609 79 11 0.000000000 0.000000000 0.297468354 0.297468354 0.4936709 ## rs192339082 11 0.000000000 0.000000000 1.0000000 ## rs192339082 11 1 0.000000000 0.000000000 1.00000000.000000000 1.0000000 ## rs79725552 79 11 0.075949367 0.8481013 ## P.AB . bb z.HWE ## # rs149201999 0.18987342 0.00000000 0.932328086 ## rs146752890 0.13924051 0.00000000 0.665102984 ## rs189377059 0.13924051 0.00000000 0.665102984 ## rs188945759 0.01265823 0.00000000 0.056612703 ## rs62224609 0.00000000 0.008860759 -0.005111095 ## rs143503259 0.00000000 0.00000000 0.00000000 NA ## # rs192339082 0.000000000.00000000 NA ## rs79725552 0.15189873 0.00000000 0.730536527
该工作流基于Amazon EC2计算,使用麻省理工学院星团公用事业.基于EC2的机器的配置和管理非常简单。这里描述的部分运行的大部分使用了配置变量
在完整的运行中,对于染色体1,需要使用更大的实例类型(m3.2xlarge)进行抢救运行。
我们将描述一种本质上的整体方法,使用集群来搜索eQTL,其中单个R函数的计算驱动搜索。主进程将通过套接字与从进程通信;从服务器将把结果写入磁盘,然后发送回主服务器。该任务是在染色体上执行的,这些染色体被大致分成三份,以减少RAM消耗。
GGtools的cisisqbycluster函数是搜索的主力。此函数的参数决定如何配置和执行搜索。这里的调用要求在四条染色体上进行搜索,将工作从一个主R进程分派到一个四个节点集群,每个节点有八个核心,多核并发性用于特定于基因的搜索。在targetfolder文件夹中生成三个输出文件:
下面的脚本可以在上面提到的AMI上使用,它将生成partceu100k_dt数据。表实例用于下面的分析。
library(parallel) newcl = makePSOCKcluster(c("master", paste0("node00", 1:3))) library(foreach) library(dopar列)registerdopar列(cores=8) #可能想保持在5 library(GGtools) ceuDemoRecov = try(cisisqbycluster (newcl, chromsToRun=19:22, finaltag="partceu100k", outprefix="ceurun", ncoresPerNode=8, targetfolder=" ceuDemoRecov.rda") save(ceuDemoRecov, file="ceuDemoRecov.rda") stopCluster(newcl) stopImplicitCluster() sessionInfo()
cisqbycluster的完整参数集和默认值为
与数据一起生成的GFF3文件。表实例对于目标查询很有用,可能来自外部应用程序。在R中使用它的主要困难是需要解析字段9的可选数据子字段。
在全基因组关联研究中检查qqplot是习惯的。对于eQTL搜索,测试结果的数量可能达到数十亿个,因此采用分箱方法。
binnedQQ(partceu100k_dt, ylim=c(0,30), xlim=c(-2,15), end45=12)
这表明,绝大多数观察到的snp -基因对关联统计量的分布与零模型一致。
因为我们的数据。表输出保留了根据基因型排列表达后获得的关联分数的信息,我们可以在以各种方式过滤完整记录集后重新计算保留的位点的插件fdr。eqsens_dt函数允许探索不同维度上eQTL枚举的敏感性,用户可以通过适当的编程添加额外的维度。首先说明默认行为:
data(partceu100k_dt) library(foreach) #基本函数包括一个%dopar% library(dopar列)library(parallel) # dcdown = max(c(detectCores()-1,1)) ##使用大量内存dcdown = 1 registerDoSEQ() if (. platform $OS。type != "windows") {#cl = makeForkCluster(dcdown) registerdopar列(cores=dcdown) #嵌套?}
eqsens_dt(partceu100k_dt)
plotsens (eq1)
eqsens_dt的参数是
args (eqsens_dt)
##函数(dtab, filtgen = filtgen.maf.)dist, by = c("pairs", "snps", ## "probes")[1], targfdrs = c(0.05, 0.01, 0.005), parmslist = list(mafs = c(0.025, ## 0.05, 0.075, 0.1, 0.125), dists = c(1000,5000,10000, 25000, ## 50000, 1e+05))) ## NULL
parmslist参数的设置组件管理将使用的调优参数向量集。对额外维度的探索将涉及为filtgen参数传递一个不同的函数;filtgen. mafd .dist假设2向量(MAF, dist)将用于保留MAF超过输入MAF的行,并且dist不大于从SNP到基因的输入mindist。
截至2014年1月20日,对scoresCis()的调用只能用R-devel和GGtools 4.11.28+执行。
我们将关注数据。表输出。一个基本的目标是有针对性的可视化。scoresCis函数可以帮助实现这一点。我们加载数据。表实例优先。
library(data.table) data("partceu100k_dt.rda") scoresCis("CPNE1", partceu100k_dt)
在本节中,我们将考虑如何使用结构和遗传信息来区分SNP基因型与表型变异相关的条件概率。我们使用GGtools包中提供的一些附加数据,涉及a)淋巴母细胞样细胞系GM12878的染色质状态,该细胞系与生成表达数据的形式类似,以及b)在NHGRI GWAS目录中发现的命中或命中值为$ R^2 > 0.80 $的LD SNP身份。更多信息请参见GGtools包中的hmm878和gwastagger包中的gwastagger手册。这些数据自动传播到cisqbycluster数据。表输出。
我们的方法是对150万条记录使用逻辑回归。我们使用biglm包来保持适当的内存映像。
我们将一些关键因素离散化,并形成一个指示变量,用于SNP处于活跃或稳定启动子染色质状态区域的事件,由GM12878上的ChromHMM确定。
Distcat = cut(partceu100k_dt$mindist,c(- 1,1,1000, 5000, 10000, 50000, 100001)) fdrcat = cut(partceu100k_dt$fdr,c(-.01,。005, .05, .1, .2,1.01)) fdrcat = relevel(fdrcat, "(0.2,1.01]") mafcat = cut(partceu100k_dt$MAF,c(0,。05, .1, .2, .3, .51)) apm = 1*partceu100k_dt$chromcat878 %in% c("1_Active_Promoter", "3_Poised_Promoter")
现在我们重建数据。表并将模型拟合到随机选择的训练集,该训练集约为记录总数的一半。
partceu100k_dt = cbind(partceu100k_dt, distcat, fdrcat, mafcat, approm) set.seed(1234) train = sample(1:nrow(partceu100k_dt), size=floor(nrow(partceu100k_dt)/2), replace=FALSE) library(biglm) b1 = bigglm(isgwashit~distcat+fdrcat+mafcat+approm, fam=binomial(), data=partceu100k_dt[train,], maxit=30)
优点数字的一个来源是对测试集中实际命中事件的预测进行校准。
Pp = predict(b1, newdata=partceu100k_dt[-train,], type="response") summary(Pp)
## V1 ##最小值:0.002191 ##第一曲:0.006662 ##中位数:0.016831 ##平均值:0.015989 ##第三曲:0.027556 ##最大值: 0.183083
CPP = cut(pp, c(0,。025, .05, .12, .21))表(cpp)
## CPP ## (0,0.025] (0.025,0.05] (0.05,0.12] (0.12,0.21] ## 1032096 462408 1255 1630
Sapply (split(partceu100k_dt$isgwashit[-train], cpp), mean)
## (0,0.025] (0.025,0.05] (0.05,0.12] (0.12,0.21] ## 0.009176472 0.030769364 0.079681275 0.136809816
这个模型,用少量染色体的数据拟合,似乎具有一定的预测效用。我们可以将这些系数可视化:
Tmat =矩阵(rownames(summary(b1)$mat),nc=1) est = summary(b1)$mat[,1] library(rmeta) forestplot(Tmat, est, est-)。01, est +。01, xlog=TRUE, boxsize=。3.5, graphwidth=unit(3, "inches"), xticks=exp(seq(-4,2,2)))
在反应之间存在相关性的标准误差需要进一步的方法发展。
## used (Mb) gc触发器(Mb) max used (Mb) ## Ncells 13712495 732.4 28481709 1521.1 28481709 1521.1 ## Vcells 95548213 729.0 282636798 2156.4 431878141 3295.0
##警告:韭菜:2007p1723:意外END_OF_INPUT“##”
[1] V. G.张,R. S. Spielman, K. G. eens,等。“通过区域和全基因组关联绘制人类基因表达的决定因素”。Eng。:自然437.7063(2005年10月),第1365-9页。DOI: 10.1038 / nature04244。
D. J. Gaffney, J. Veyrieras, J. F. Degner等,“剖析基因表达qtl的调控结构”。Eng。:基因组医学杂志13.1(2012年1月),第R7页。DOI: 10.1186 / gb - 2012 - 13 - 1 - r7。<网址:http://genomebiology.com/content/13/1/R7>。
J. T.韭菜和J. D. Storey。“通过替代变量分析捕获基因表达研究中的异质性”。Eng。:公共科学图书馆麝猫3.9(2007年9月),第1724-35页DOI: 10.1371 / journal.pgen.0030161。<网址:http://www.plosgenetics.org/article/info%253Adoi%252F10.1371%252Fjournal.pgen.0030161}。>
J.马杰夫斯基和T.帕斯提宁。通过RNA-seq研究eQTL变异:从SNPs到表型Eng。:趋势麝猫27.2(2011年2月),第72-9页。DOI: 10.1016 / j.tig.2010.10.006。
A. A.沙巴林。“矩阵eQTL:通过大矩阵运算的超快速eQTL分析”。Eng。:生物信息学(牛津,英国)28.10(2012年5月),第1353-8页。DOI: 10.1093 /生物信息学/ bts163。<网址:http://bioinformatics.oxfordjournals.org/content/28/10/1353.long>。
B. E.斯特兰奇,S. B.蒙哥马利,A. S.迪马斯等,“不同人群中顺式调节变异的模式”。Eng。:公共科学图书馆麝猫8.4(2012年1月),p. e1002639。DOI: 10.1371 / journal.pgen.1002639。
sessionInfo ()
## R版本4.0.3(2020-10-10)##平台: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] eQTL_1.14.0 [2] SNPlocs.Hsapiens.dbSNP144.GRCh37_0.99.20 # # [3] BSgenome_1.58.0 # # [4] rtracklayer_1.50.0 # # [5] Biostrings_2.58.0 # # [6] XVector_0.30.0 # # [7] rmeta_3.0 # # [8] lumiHumanAll.db_1.22.0 # # [9] biglm_0.9-2 # # [10] DBI_1.1.0 # # [11] doParallel_1.0.16 # # [12] iterators_1.0.13 # # [13] foreach_1.5.1 # # [14] lumi_2.42.0 # # [15] scatterplot3d_0.3-41 # # [16] yri1kgv_0.32.0 # # [17] GGdata_1.28.0 # # [18] illuminaHumanv1.db_1.26.0 # # [19] GGtools_5.26.0 # # [20] Homo.sapiens_1.3.1 # #[21] TxDb.Hsapiens.UCSC.hg19.knownGene_3.2.2 ## [22] org.Hs.eg.db_3.12.0 ## [23] GO.db_3.12.0 ## [24] OrganismDbi_1.32.0 ## [25] GenomicFeatures_1.42.0 ## [26] GenomicRanges_1.42.0 ## [27] AnnotationDbi_1.52.0 ## [28] Biobase_2.50.0 ## [29] data.table_1.13.2 ## [30] GGBase_3.52.0 ## [31] snpStats_1.40.0 ## [32] Matrix_1.2-18 ## [33] survival_3.2-7 ## [34] GenomeInfoDb_1.26.0 ## [35] IRanges_2.24.0 ## [36] S4Vectors_0.28.0 ## [37] BiocGenerics_0.36.0 ## [38] bibtex_0.4.2.3 ## [39] knitcitations_1.0.10 ## [40] BiocStyle_2.18.0 ## ## loaded via a namespace (and not attached): ## [1] tidyselect_1.1.0 RSQLite_2.2.1 ## [3] htmlwidgets_1.5.2 BiocParallel_1.24.0 ## [5] munsell_0.5.0 codetools_0.2-16 ## [7] preprocessCore_1.52.0 nleqslv_3.3.2 ## [9] colorspace_1.4-1 knitr_1.30 ## [11] rstudioapi_0.11 ROCR_1.0-11 ## [13] MatrixGenerics_1.2.0 GenomeInfoDbData_1.2.4 ## [15] bit64_4.0.5 rhdf5_2.34.0 ## [17] vctrs_0.3.4 generics_0.0.2 ## [19] xfun_0.18 biovizBase_1.38.0 ## [21] BiocFileCache_1.14.0 R6_2.5.0 ## [23] illuminaio_0.32.0 locfit_1.5-9.4 ## [25] AnnotationFilter_1.14.0 bitops_1.0-6 ## [27] rhdf5filters_1.2.0 reshape_0.8.8 ## [29] DelayedArray_0.16.0 assertthat_0.2.1 ## [31] scales_1.1.1 nnet_7.3-14 ## [33] gtable_0.3.0 affy_1.68.0 ## [35] methylumi_2.36.0 ensembldb_2.14.0 ## [37] rlang_0.4.8 genefilter_1.72.0 ## [39] splines_4.0.3 lazyeval_0.2.2 ## [41] GEOquery_2.58.0 dichromat_2.0-0 ## [43] hexbin_1.28.1 checkmate_2.0.0 ## [45] BiocManager_1.30.10 yaml_2.2.1 ## [47] reshape2_1.4.4 backports_1.1.10 ## [49] Hmisc_4.4-1 RBGL_1.66.0 ## [51] tools_4.0.3 bookdown_0.21 ## [53] nor1mix_1.3-0 ggplot2_3.3.2 ## [55] affyio_1.60.0 ellipsis_0.3.1 ## [57] ff_4.0.4 RColorBrewer_1.1-2 ## [59] siggenes_1.64.0 Rcpp_1.0.5 ## [61] plyr_1.8.6 base64enc_0.1-3 ## [63] sparseMatrixStats_1.2.0 progress_1.2.2 ## [65] zlibbioc_1.36.0 purrr_0.3.4 ## [67] RCurl_1.98-1.2 prettyunits_1.1.1 ## [69] rpart_4.1-15 openssl_1.4.3 ## [71] bumphunter_1.32.0 SummarizedExperiment_1.20.0 ## [73] cluster_2.1.0 magrittr_1.5 ## [75] magick_2.5.0 ProtGenerics_1.22.0 ## [77] matrixStats_0.57.0 hms_0.5.3 ## [79] evaluate_0.14 xtable_1.8-4 ## [81] XML_3.99-0.5 jpeg_0.1-8.1 ## [83] mclust_5.4.6 gridExtra_2.3 ## [85] compiler_4.0.3 biomaRt_2.46.0 ## [87] minfi_1.36.0 tibble_3.0.4 ## [89] KernSmooth_2.23-18 crayon_1.3.4 ## [91] htmltools_0.5.0 mgcv_1.8-33 ## [93] Formula_1.2-4 tidyr_1.1.2 ## [95] lubridate_1.7.9 dbplyr_1.4.4 ## [97] MASS_7.3-53 rappdirs_0.3.1 ## [99] readr_1.4.0 quadprog_1.5-8 ## [101] Gviz_1.34.0 pkgconfig_2.0.3 ## [103] GenomicAlignments_1.26.0 RefManageR_1.2.12 ## [105] foreign_0.8-80 xml2_1.3.2 ## [107] annotate_1.68.0 rngtools_1.5 ## [109] multtest_2.46.0 beanplot_1.2 ## [111] doRNG_1.8.2 scrime_1.3.5 ## [113] stringr_1.4.0 VariantAnnotation_1.36.0 ## [115] digest_0.6.27 graph_1.68.0 ## [117] rmarkdown_2.5 base64_2.0 ## [119] htmlTable_2.1.0 DelayedMatrixStats_1.12.0 ## [121] curl_4.3 Rsamtools_2.6.0 ## [123] nlme_3.1-150 lifecycle_0.2.0 ## [125] jsonlite_1.7.1 Rhdf5lib_1.12.0 ## [127] askpass_1.1 limma_3.46.0 ## [129] pillar_1.4.6 lattice_0.20-41 ## [131] httr_1.4.2 glue_1.4.2 ## [133] png_0.1-7 bit_4.0.4 ## [135] stringi_1.5.3 HDF5Array_1.18.0 ## [137] blob_1.2.1 latticeExtra_0.6-29 ## [139] memoise_1.1.0 dplyr_1.0.2