这个包旨在支持改进的软件和功能的解释一组的成员协会统计特性的家庭\ \(\倍)基因组的假设。细化或功能的解释提供依据。
我们认为理所当然的使用gQTL *基础设施进行测试和测试结果的管理。我们使用元素的例子geuvPack和geuvStore包。
我们一起工作ciseStore
基于实例的一个小子集transcriptome-wide cis-eQTL测试GEUVADIS FPKM数据。整个测试过程进行SNP:探针对SNP的微小等位基因频率(加)至少1%,SNP之间的最小距离,要么边界探测基因的编码区是最多100万个基点。
库(geuvStore)库(gQTLBase)图书馆(gQTLstats)图书馆(并行)nco = detectCores()库(doParallel)
# #加载所需的包:foreach # #加载所需的包:迭代器
如果(.Platform $ OS registerDoSEQ ()。类型! =“窗口”){registerDoParallel(核心= max (c(1楼(nco / 2))))} prst = ciseStore (partialRegistry(),假的,假的)
# #注:id可用的92个工作岗位这个注册表可以获得partialIds ()
分位数估计节约内存,基于一个临时的ff表示向量的关联测试结果。
qassoc = storeToQuantiles (prst字段=“chisq”,聚合氯化铝= c (seq(0 .999措施),1 - (c (e-6 e-5 1的军医,1,1))))的尾巴(qassoc)
# # # # 99.7% 99.8% 99.9% 99.99% 99.999% 99.9999% 18.45125 25.92172 48.26925 203.57129 223.90211 243.88727
因为我们计算固定休息,贡献整个直方图可以并行装配,占用空间小。这是一个巨大的减少的数据。
hh = storeToHist (prst休息= c (0 qassoc 1 e9))
# #警告file.remove(文件名(x)):不能删除文件/ tmp / Rtmp8yhUOv / ff_14aca52930fe5 # #”。ff”,原因”没有这样的文件或目录的
# #警告file.remove(文件名(x)):不能删除文件/ tmp / Rtmp8yhUOv / ff_14aca3757823f # #”。ff”,原因”没有这样的文件或目录的
尾(hh美元数)
# # [1]4768 2086 215 0 0 0
罗斯福计算因果之前相对于过滤不需要指定测试。为了进行说明,我们调查的结果geuvStore获得每个SNP罗斯福:探针对两种形式。首先,我们得到罗斯福没有任何过滤。第二,我们计算一个罗斯福的SNP:探针对分离最多500 kb, SNP的乘加是至少5%。
rawFDR = storeToFDR (prst xprobs = c (seq (.95 0。, . 05), .975, .990, .995, .9975,。999年,.9995 .9999,.99999))
# #计数测试……# # #计算NA……# #获得assoc分位数……# #计算perm_assoc直方图....
# #警告file.remove(文件名(x)):不能删除文件/ tmp / Rtmp8yhUOv / ff_14aca4742aabc # #”。ff”,原因”没有这样的文件或目录的
# #警告file.remove(文件名(x)):不能删除文件/ tmp / Rtmp8yhUOv / ff_14aca4af4ae4b # #”。ff”,原因”没有这样的文件或目录的
dmfilt = x (x) #定义过滤函数函数[x (x加器> = 0.05美元和美元mindist < = 500000)
filtFDR = storeToFDR (prst xprobs = c (seq (.95 0。, . 05), .975, .990, .995, .9975,。999年,.9995 .9999 .99999),过滤器= dmfilt)
# #计数测试……# # #计算NA……# #获得assoc分位数……# #计算perm_assoc直方图....
# #警告file.remove(文件名(x)):不能删除文件/ tmp / Rtmp8yhUOv / ff_14aca146cc471 # #”。ff”,原因”没有这样的文件或目录的
# #警告file.remove(文件名(x)):不能删除文件/ tmp / Rtmp8yhUOv / ff_14aca1c730d8e # #”。ff”,原因”没有这样的文件或目录的
rawFDR
# # FDRsupp实例与27日行。# # assoc罗斯福ncalls avg.false 0.003618066 - 0.9509009 7181737 6829120 # # # # 5% 10% 0.014572904 0.9496298 6803751 6461045 # # 15% 0.033069795 0.9480637 6461045 6803751 # #……# # assoc罗斯福ncalls avg.false 126.5972 0 3779.86150 0 # # # # 99.95% 99.99% 203.5713 755.97230 0 0 # # 99.999% 223.9021 75.59723 0 0 # #没有可用插值函数;使用“setFDRfunc”。
filtFDR
# # FDRsupp实例与27日行。# # assoc罗斯福ncalls avg.false 0.004063308 - 0.9462589 2086766 1974621 # # # # 5% 10% 0.016409957 0.9419880 1976936 1862250 # # 15% 0.037334757 0.9369467 1862250 1976936 # #……# # assoc罗斯福ncalls avg.false 203.5713 0 1098.29800 0 # # # # 99.95% 99.99% 205.2224 219.65960 0 0 # # 99.999% 238.8027 21.96596 0 0 # #没有可用插值函数;使用“setFDRfunc”。
过滤导致较低的罗斯福对于一个给定的协会的力量。这是一个灵感进行敏感性分析。即使500万年观测的影响总结的排列分布直方图本选择协会。这可以看到非常明显的wiggliness跟踪在过滤协会得分:罗斯福阴谋。
rawtab = getTab (rawFDR) filttab = getTab (filtFDR)情节(rawtab(-(1:10),“协会”),log10 (rawtab(-(1:10),“罗斯福”)+ 1 e-6),日志= " x ",轴= FALSE, xlab =“观察协会”,ylab =“log10插件罗斯福”)轴(1 = c (seq(0, 10日1),100200))轴(2)点(filttab [- (1:10), 1], log10 (filttab (- (1:10), 2) + 1 e-6), pch = 2)传奇(1、5、pch = c(1、2),传说= c(“所有位点”、“加> = 0.05 & dist < = 500 k "))
我们将解决这个问题通过拟合光滑函数以下分数:罗斯福的关系。
的storeToFDRByProbe
罗斯福函数检查最大协会分数由基因,观察和排列的措施。
这个过程是通过使用性能好group_by
和总结
公用事业的。并发BatchJobs受聘当可用的计算能力。你需要合适的内容.BatchJobs.R
和任何scheduler-dependent利用这个模板文件。
fdbp = storeToFDRByProbe (prst xprobs = c (seq (.025, .975 .025), 0))
# #计数测试……# # #计算NA……# #获得assoc分位数……# #计算perm_assoc直方图....
尾(getTab (fdbp), 5)
# # assoc罗斯福ncalls avg.false # # 90% 41.51883 0.10144928 92.0 9.333333 # # 92.5% 51.23749 0.07729469 69.0 5.333333 # # 95% 63.40014 0.03623188 46.0 1.666667 # # 97.5% 102.90260 - 0.00000000 170.24911 - 0.00000000 9.2 - 0.000000 23.0 - 0.000000 # # 99%
fdAtM05bp = storeToFDRByProbe (prst过滤器= x (x)函数((x $加> . 05)),xprobs = c (seq (.025, .975 .025), 0))
# #计数测试……# # #计算NA……# #获得assoc分位数……# #计算perm_assoc直方图....
尾(getTab (fdAtM05bp), 5)
# # assoc罗斯福ncalls avg.false # # 90% 35.90629 0.003623188 92.0 0.3333333 # # 92.5% 44.00699 0.000000000 69.0 0.0000000 # # 95% 55.98042 0.000000000 46.0 0.0000000 # # 97.5% 96.75989 - 0.000000000 150.75099 - 0.000000000 9.2 - 0.0000000 23.0 - 0.0000000 # # 99%
我们将集中在全对的分析,有或没有过滤。
尤其是在这个小示例将会有一些抖动甚至non-monotonicity经验罗斯福对协会在跟踪。我们希望能够计算的近似罗斯福迅速以最小的假设和病理。为此,我们将一个插值模型绑定到罗斯福估计。将散点图来完成平滑插值gam框架。我们将使用不同的平滑跨越原始和未过滤的罗斯福的估计。
库(gam)
# #加载所需的包:样条函数# # gam 1.09.1加载
rawFDR = setFDRfunc (rawFDR跨度= .75)filtFDR = setFDRfunc (filtFDR,跨度=升至)标准(mfrow = c (2, 2)) txsPlot (rawFDR) txsPlot (filtFDR) directPlot (rawFDR) directPlot (filtFDR)
更多的工作需要在评估耐受性罗斯福插值的相对误差。
回想一下,dmfilt
是一个函数,获得的SNP-probe对SNP加器至少百分之五,最多500 kbp SNP-probe距离。
我们使用FDRsupp
与实例ciseStore
列出SNP-probe对给定上界与罗斯福躺下。
过滤对:
rawEnum = enumerateByFDR (prst rawFDR,阈值= . 05)rawEnum[秩序(rawEnum chisq美元,减少= TRUE) [1:3]]
与3 # #农庄对象范围和12元数据列:# # seqnames范围链| paramRangeID # # < Rle > < IRanges > < Rle > | <因素> # # 201 1 (54683925、54683925)* | ENSG00000231581.1 # # 201 1 (54685855、54685855) * | ENSG00000231581.1 # # 201 1 (54694948、54694948) * | ENSG00000231581.1 # # REF ALT chisq permScore_1 permScore_2 # # < DNAStringSet > < CharacterList > <数字> <数字> <数字> # # 201克252.8924 0.08203802 0.3729235 # # 201克252.8924 0.08203802 0.3729235 # # 201 C T 252.4241 0.05751442 0.7552756 # # permScore_3 snp加probeid mindist # # <数字> <人物> <数字> <人物> <数字> # # 201 0.3960782 snp_1_54683925 0.1266234 ENSG00000231581.1 6256 # # 201 0.3960782 snp_1_54685855 0.1266234 ENSG00000231581.1 4326 # # 201 0.4921478 0.1222944 snp_1_54694948 ENSG00000231581.1 3792 # # estFDR # # <数字> # 0 # # 201 # 201 0 0 # # 201 # # - - - - - - - # # seqinfo: 21从hg19基因组序列;没有seqlengths
长度(rawEnum)
# # 44524年[1]
少量的元数据绑定到生成的农庄
实例。
名称(元数据(rawEnum))
# # [1]“enumCall”“enumSess”“fdrCall”
对会议加器和距离获得的条件过滤器
设置枚举函数。
filtEnum = enumerateByFDR (prst filtFDR,阈值=。05年,过滤器= dmfilt) filtEnum[秩序(filtEnum chisq美元,减少= TRUE) [1:3]]
与3 # #农庄对象范围和12元数据列:# # seqnames范围链| paramRangeID # # < Rle > < IRanges > < Rle > | <因素> # # 201 1 (54683925、54683925)* | ENSG00000231581.1 # # 201 1 (54685855、54685855) * | ENSG00000231581.1 # # 201 1 (54694948、54694948) * | ENSG00000231581.1 # # REF ALT chisq permScore_1 permScore_2 # # < DNAStringSet > < CharacterList > <数字> <数字> <数字> # # 201克252.8924 0.08203802 0.3729235 # # 201克252.8924 0.08203802 0.3729235 # # 201 C T 252.4241 0.05751442 0.7552756 # # permScore_3 snp加probeid mindist # # <数字> <人物> <数字> <人物> <数字> # # 201 0.3960782 snp_1_54683925 0.1266234 ENSG00000231581.1 6256 # # 201 0.3960782 snp_1_54685855 0.1266234 ENSG00000231581.1 4326 # # 201 0.4921478 0.1222944 snp_1_54694948 ENSG00000231581.1 3792 # # estFDR # # <数字> # 0 # # 201 # 201 0 0 # # 201 # # - - - - - - - # # seqinfo: 21从hg19基因组序列;没有seqlengths
长度(filtEnum)
# # 89820年[1]
枚举过程的产量取决于过滤基于SNP-gene距离和SNP。这可以说明如下,以最少的计算工作由于保留公司的排列和插件的使用罗斯福算法。
数据(sensByProbe) #看到例子(senstab)施工方法选项卡= senstab (sensByProbe)情节(选项卡)
如果我们希望最大化收益率eQTL枚举的罗斯福最多0.05,我们可以应用一个过滤器来店里。
flens =已经(prst、功能(x){长度(x (x (x $加> =。08 & $ mindist < = 25000),])})
sum (unlist (flens))
# # 174044年[1]
这是一个计数gene-snp对满足结构和遗传标准。
在的情况下geuFPKM
有一些相关的元数据rowRanges
元素。我们将绑定到的重大发现。
图书馆(geuvPack)数据(geuFPKM)基本= mcols (rowRanges (geuFPKM)) [c (“gene_id”、“gene_status”,“gene_type”、“gene_name”)] rownames(基本)=美元基本gene_id extr =基本[filtEnum probeid美元]mcols (filtEnum) = cbind (mcols (filtEnum) extr) stopifnot(所有。平等(filtEnum probeid美元,filtEnum gene_id美元))filtEnum [1:3]
与3 # #农庄对象范围和16元数据列:# # seqnames范围链| paramRangeID # # < Rle > < IRanges > < Rle > | <因素> # # 1 1 (226019653、226019653)* | ENSG00000183814.10 # # 1 1 (226219554、226219554) * | ENSG00000183814.10 # # 1 1 (226229189、226229189) * | ENSG00000183814.10 # # REF ALT chisq permScore_1 permScore_2 # # < DNAStringSet > < CharacterList > <数字> <数字> <数字> # # 1 G 7.052343 0.2427214 0.0001436935 # # 1 C G 6.116819 1.0205941 0.0242830567 # # 1 T C 6.062519 2.9692153 0.0195030475 # # permScore_3 snp加probeid mindist # # <数字> <人物> <数字> <人物> <数字> # 3.972022 # 1 e-01 snp_1_226019653 0.1601732 ENSG00000183814.10 399197 # # 1 3.010252 e-01 snp_1_226219554 0.4058442 ENSG00000183814.10 199296 # # 1 5.067021 e-07 snp_1_226229189 0.4188312 ENSG00000183814.10 189661 # # estFDR gene_id gene_status gene_type gene_name # # <数字> <人物> <人物> <人物> <人物> # 0.01201117 # 1 ENSG00000183814.10已知protein_coding LIN9 # 0.03212841 # 1 ENSG00000183814.10已知protein_coding LIN9 # 0.03394815 # 1 ENSG00000183814.10已知protein_coding LIN9 # # - - - - - - - # # seqinfo: 21从hg19基因组序列;没有seqlengths
我们有一个实用程序来创建一个带注释的曼哈顿情节搜索cis的基因。基本的成分
ciseStore
实例的基本位置和联系信息FDRsupp
实例包括地图的功能从协会分数到罗斯福,在罗斯福估计和过滤器hmm878
农庄gQTLstats /数据实例。重要的是要认识到,给定一个FDRsupp
实例我们可以计算任何协会的罗斯福得分,但罗斯福归因的有效性要求我们不计算任何轨迹排除过滤。的manhWngr
执行FDRsupp
居民默认过滤器。
数据(hmm878)图书馆(geuvStore) prst = ciseStore (partialRegistry(),真的,假的)
# #注:id可用的92个工作岗位这个注册表可以获得partialIds() # #建筑调查:工作地图……# #。
myg = " ENSG00000183814.10 " # LIN9数据(filtFDR)库(ggplot2) manhWngr(存储= prst probeid = myg sym =“LIN9 fdrsupp = filtFDR namedGR = hmm878)
动态可视化过程,看到vjcitn / gQTLbrowse github档案。
我们可以使用VariantAnnotation建立所有过滤变异的基本结构特点。
suppressPackageStartupMessages({库(VariantAnnotation)库(TxDb.Hsapiens.UCSC.hg19.knownGene)}) txdb = TxDb.Hsapiens.UCSC.hg19。knownGene seqlevelsStyle (filtEnum) =“UCSC”allv = locateVariants (filtEnum、txdb AllVariants()) #每eQTL多个推荐表(allv位置)美元打= findOverlaps (filtEnum, allv) filtEex = filtEnum [queryHits(点击)]mcols (filtEex) = cbind (mcols (filtEex) mcols (allv [subjectHits(点击)])[1:7])filtEex [1:3]
SNP结果表:记录具体。
需要解决以下任务在phenorelevance的建模
我们将暂时geuvStore重建与增强的信息内容。