1背景在qPCR一级的数据

实时定量PCR (qPCR)措施基因表达的一个子集基因重复的循环sequence-specific测量DNA扩增和表达。在指数放大阶段,每次循环的结果是一个近似两倍的quanitity每个目标记录。阈值周期(Ct)的周期目标基因的表达首先超过预定的阈值,用来量化每个目标基因的表达。这些Ct值通常代表qPCR实验的原始数据。

一个挑战qPCR数据的存在一级的这些反应未能达到阈值的表达式。虽然大多数当前的软件替换这些一级的最大可能的Ct值(通常是40),最近的研究表明,这带来了大量的偏见在估计绝对和微分表达式。在这里,我们把一级的缺失数据,模型缺失数据的机制,使用这个模型来转嫁为一级的Ct值。

2一个统计模型qPCR一级

我们提出以下qPCR数据生成模型中\ (Y_ {ij} \)是测量基因表达值\(\)在样本\ (j \),其中一些人失踪(一级)、\(间{ij} \)代表充分观察到表达式值,和\ (Z_ {ij} \)显示一个值是否检测到:\[间{ij} = f (\ theta_ {ij}, \“埃塔”)+ \ varepsilon_ {ij} \] \ [Y_ {ij} = \左\{\{数组}{rr}开始间{ij} & \ textrm{如果$ Z_ {ij} = 1美元}\ \ textrm{一级}& \ textrm{如果$ Z_ {ij} = 0美元}\结束数组{}\吧。\]

在这个模型中,我们假设完全表达式值,观察\(间{ij} \)是一个真正的基因表达的功能,\ (\ theta_ {ij} \),非生物因素,\埃塔(\ \)和随机测量误差,\ (\ varepsilon_ {ij} \)。一个表示值的概率被发现被认为是一个函数表达式的值本身,\ (g(间{ij}) \),值低于检出限,\ \)。下面的逻辑回归模型是一种自然选择这样一个关系:

\[公关(Z_ {ij} = 1)左= \ \{\{数组}{rr}开始g(间{ij}) & \ textrm{如果美元间{ij} < 40 $} \ \ 0 & \ textrm{否则}\结束数组{}\吧。\]

在这里,\ (g(间{ij}) \)可以通过以下逻辑回归:估计\[分对数(Pr (Z_ {ij} = 1)) = \ beta_0 + \ beta_1间{ij} \]

3例

数据从山et al。致癌基因2013

两种细胞类型——年轻的成年小鼠结肠(YAMC)细胞和变异p53 / activated-Ras转化YAMC细胞-结合三种治疗方法治疗,丁酸钠酯或丙戊酸。四个复制每个程控/治疗组合进行[@sampson2012gene]。

加载数据

库(HTqPCR)
# #加载所需的包:Biobase
# #加载所需的包:BiocGenerics
# # # #附加包:“BiocGenerics”
# #以下对象是蒙面的包:统计数据:# # # #差,疯了,sd, var, xtabs
# #以下对象从包:基地的蒙面:# # # #过滤器,发现,地图,位置,减少,anyDuplicated,追加,# # as.data.frame, basename, cbind colnames,目录名,做。电话,# #复制,eval, evalq, grep, grepl,相交,是。无序、# #拉普兰人、宾州、匹配mget,秩序,粘贴,pmax, pmax.int, pmin, # # pmin.int,排名,rbind, rownames,酸式焦磷酸钠,setdiff,排序,表,# # tapply,联盟,独特的,不可分割的,。马克斯,which.min
# #欢迎Bioconductor # # # #片段包含介绍性的材料;视图与# #“browseVignettes ()”。引用Bioconductor,看# #引文(“Biobase”),和包的引文(“pkgname”)。
# #加载所需的包:RColorBrewer
# #加载所需的包:limma
# # # #附加包:“limma”
# #以下对象是蒙面的包:BiocGenerics: # # # # plotMA
图书馆(mvtnorm)图书馆(nondetects)数据(oncogene2013)

检验残差当一级取而代之的是40

正常化Becn1:

normCt < - normalizeCtData (oncogene2013规范=“deltaCt deltaCt。基因= " Becn1”)
计算deltaCt值# # # #使用控制基因(s): Becn1 # #卡1:意味着= 26.17方差= NA # #卡2:意味着= 25.5方差= NA # #卡3:意味着= 25.85方差= NA # #卡4:意味着= 26.22方差= NA # #卡5:意味着= 26.59方差= NA # #卡6:意味着= 25.35方差= NA # #卡7:意味着= 25.73方差= NA # #卡8:意味着= 26.36方差= NA # #卡9:意味着= 26.13方差= NA # #卡10:意味着= 25.38方差= NA # #卡11:意味着= 25.61方差= NA # #卡12:意味着= 26.52方差= NA # #卡13:意味着= 26.12方差= NA # #卡14:意味着= 26.56方差= NA # #卡15:意味着= 26.02方差= NA # #卡16:意味着= 25.5方差= NA # #卡17:意味着= 25.76方差= NA # #卡18:意味着= 26.03方差= NA # #卡19:意味着= 26.67方差= NA # #卡20:意味着= 26.69方差= NA # #卡21:意味着= 26.11方差= NA 22 # #卡:意味着= 25.86方差= NA # #卡23:意味着= 26.27方差= NA # #卡24:意味着= 26.26方差= NA

为每个组复制计算残差:

气孔导度< -粘贴(pData (normCt) sampleType美元,pData美元(normCt)治疗,9 =”:“)渣油< -矩阵(nrow = nrow (normCt) ncol = ncol (normCt)),(我在1:nrow (normCt)){为(j在1:ncol (normCt)){印第安纳<——(气孔导度= =气孔导度[j])渣油(i, j) < - exprs (normCt) (i, j)意味着(exprs (normCt)[我,印第安纳州])}}

创建箱线图的残差分层的存在一级:

印第安纳州<——(featureCategory (normCt) = =“待定”,arr.ind = TRUE) iD <——(featureCategory (normCt) !=“待定”,arr.ind = TRUE)框< -列表(“观察”= -resids (iD),“一级”= -resids(印第安纳州))
箱线图(盒、主要= " ",ylim = c (5,5), ylab =表达式(粘贴(“-”,三角洲,“Ct残差”,9 = " ")))

unnamed-chunk-5阴谋的一部分

嫁祸于一级的

oncogene2013_1 < - qpcrImpute (oncogene2013 groupVars = c (“sampleType”、“治疗”),outform = c(多个),vary_fit = FALSE, vary_model = TRUE, add_noise = TRUE, numsam = 2, linkglm = c(分对数))
# # ~ 0 + nrep # # <环境:0 x561604e65740 > # # [1]“1/100”
# # -1585.93719357229
# #警告:安装发生概率数值0或1
# # [1]“2/100”
# # -1547.65473798079
# # [1]“3/100”
# # -1525.63747493401
# # [1]“4/100”
# # -1507.70854344257
# # [1]“5/100”
# # -1494.34791647616
# # [1]“6/100”
# # -1486.84145953593
# # [1]“7/100”
# # -1482.65081095015
# # [1]“8/100”
# # -1480.02741565204
# # [1]“9/100”
# # -1478.28522499918
# # [1]“10/100”
# # -1477.09557013291
# # [1]“11/100”
# # -1476.26802386548
# #[1]“多个”# #不同模式= TRUE vary_fit = FALSE add_noise = TRUE # #创建数据集1
# # rbind (deparse警告。水平,…):列数的结果,1,不是一个# #参数2的向量长度为5的倍数
# # # #创建数据集2
# # rbind (deparse警告。水平,…):列数的结果,1,不是一个# #参数2的向量长度为5的倍数

检验残差当一级取而代之的是估算值

正常化Becn1:

normCt < normalizeCtData (oncogene2013_1[[1]],规范=“deltaCt deltaCt。基因= " Becn1”)
计算deltaCt值# # # #使用控制基因(s): Becn1 # #卡1:意味着= 26.17方差= NA # #卡2:意味着= 25.5方差= NA # #卡3:意味着= 25.85方差= NA # #卡4:意味着= 26.22方差= NA # #卡5:意味着= 26.59方差= NA # #卡6:意味着= 25.35方差= NA # #卡7:意味着= 25.73方差= NA # #卡8:意味着= 26.36方差= NA # #卡9:意味着= 26.13方差= NA # #卡10:意味着= 25.38方差= NA # #卡11:意味着= 25.61方差= NA # #卡12:意味着= 26.52方差= NA # #卡13:意味着= 26.12方差= NA # #卡14:意味着= 26.56方差= NA # #卡15:意味着= 26.02方差= NA # #卡16:意味着= 25.5方差= NA # #卡17:意味着= 25.76方差= NA # #卡18:意味着= 26.03方差= NA # #卡19:意味着= 26.67方差= NA # #卡20:意味着= 26.69方差= NA # #卡21:意味着= 26.11方差= NA 22 # #卡:意味着= 25.86方差= NA # #卡23:意味着= 26.27方差= NA # #卡24:意味着= 26.26方差= NA

删除正常化基因:

normCt < - normCt [——(featureNames (normCt) = =“Becn1”),)

为每个组复制计算残差:

气孔导度< -粘贴(pData (normCt) sampleType美元,pData美元(normCt)治疗,9 =”:“)渣油< -矩阵(nrow = nrow (normCt) ncol = ncol (normCt)),(我在1:nrow (normCt)){为(j在1:ncol (normCt)){印第安纳<——(气孔导度= =气孔导度[j])渣油(i, j) < - exprs (normCt) (i, j)意味着(exprs (normCt)[我,印第安纳州])}}

创建箱线图的残差分层的存在一级:

2 <——(featureCategory (normCt) = =“估算”,arr.ind = TRUE) iD <——(featureCategory (normCt) !=“估算”,arr.ind = TRUE)框< -列表(“观察”= -resids (iD),“估算”= -resids [2])
箱线图(盒、主要= " ",ylim = c (5,5), ylab =表达式(粘贴(“-”,三角洲,“Ct残差”,9 = " ")))

unnamed-chunk-11阴谋的一部分

附加的例子

两个额外的示例数据集用于纸张和包含在包中。下面简要描述。

数据从Almudevaret al。SAGMB 2011

细胞转化为恶性肿瘤的突变型p53和Ras激活摄动与恢复的目的基因表达水平在非转换通过retrovirus-mediated亲代细胞的表达相应的互补或shRNA-dependent稳定压倒一切的。数据包含每个微扰4 - 6复制,每个扰动都有相应的控制样本中只添加了向量[@almudevar2011fitting]。

库(nondetects)数据(sagmb2011)

数据从McMurrayet al。大自然2008年

研究p53的影响和/或Ras突变基因表达。第三集是比较四个细胞类型——YAMC细胞突变p53 YAMC细胞,activated-Ras YAMC细胞,和p53 / Ras突变YAMC细胞的两倍。三个复制进行untransformed YAMC细胞,和四个复制进行的其他细胞[@mcmurray2008synergistic]。

库(nondetects)数据(nature2008)

资金

这项工作是由美国国立卫生研究院的资助数字CA009363 CA138249, HG006853);和一个Edelman-Gardner基金会奖。

会话信息

sessionInfo ()
# # R版本4.2.0 RC (2022-04-19 r82224) # #平台:x86_64-pc-linux-gnu(64位)# #下运行:Ubuntu 20.04.4 LTS # # # #矩阵产品:默认# #布拉斯特区:/home/biocbuild/bbs - 3.15 - bioc / R / lib / libRblas。所以# # LAPACK: /home/biocbuild/bbs - 3.15 - bioc / R / lib / libRlapack。# # # #语言环境:# # [1]LC_CTYPE = en_US。utf - 8 LC_NUMERIC = C # #[3]而= en_GB 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 = C LC_TELEPHONE = # # [11] LC_MEASUREMENT = en_US。utf - 8 LC_IDENTIFICATION = C附加基本包:# # # # # #[1]统计图形grDevices跑龙套数据集方法基础# # # #其他附加包:# # [1]nondetects_2.26.0 mvtnorm_1.1-3 HTqPCR_1.50.0 # # [4] limma_3.52.0 RColorBrewer_1.1-3 Biobase_2.56.0 # # [7] BiocGenerics_0.42.0 # # # #通过加载一个名称空间(而不是附加):# # [1]Rcpp_1.0.8.3 compiler_4.2.0 BiocManager_1.30.17 # # [4] nloptr_2.0.0 highr_0.9 bitops_1.0-7 # # [7] tools_4.2.0 zlibbioc_1.42.0 boot_1.3-28 # # [10] lme4_1.1-29 evaluate_0.15 preprocessCore_1.58.0 # # [13] nlme_3.1 - 157 lattice_0.20-45 Matrix_1.4-1 # # [16] xfun_0.30 coda_0.19-4 stringr_1.4.0 # # [19] knitr_1.38 gtools_3.9.2 caTools_1.18.2 # # [22] stats4_4.2.0 grid_4.2.0 arm_1.12-2 # # [25] minqa_1.2.4 magrittr_2.0.3 gplots_3.1.3 # # [28] MASS_7.3-57 splines_4.2.0 abind_1.4-5 # # [31] KernSmooth_2.23-20 stringi_1.7.6 affy_1.74.0 # # [34] affyio_1.66.0

引用