MBQN装饰图案

这个包包含一个修改后的分位数正常化(QN)预处理和分析组学或其他矩阵像组织全球强度值有偏见的数据,columnwise扭曲的强度和规模。修改平衡特性(行)的平均强度等级不变的(RI)或近排名不变的新名词在样本分位数正常化之前(列)[1]。这有助于防止一个夹持力强度的RI和新名词特性的古典QN因此下游支持减少系统误差分析。额外的包功能有助于探测、识别、和可视化潜在国际扶轮或新名词特性和演示使用修改的数据。

安装

安装这个包,你需要R版本> = 3.6。

安装在R Bioconductor运行:

如果(# !requireNamespace (“BiocManager”,悄悄地= TRUE))# install.packages (“BiocManager”)BiocManager::安装(“MBQN”)

依赖关系

的核心MBQN包使用normalizeQuantiles()从包中limma[2],可用//www.andersvercelli.com/packages/release/bioc/html/limma.html分位数的计算标准化。可选地,normalize.quantiles ()从包preprocessCore[3],可用//www.andersvercelli.com/packages/release/bioc/html/preprocessCore.html,可以使用。

安装这些包在R运行:

如果(# !requireNamespace (“BiocManager”,悄悄地= TRUE))# install.packages (“BiocManager”)# BiocManager::安装(pkg = c (“preprocessCore”、“limma”,“SummarizedExperiment”))

使用

包提供两个基本功能:mbqn ()适用于QN或意味着/ median-balanced分位数正常化(MBQN)矩阵。mbqnNRI ()应用分位数正常化和平均/ median-balanced分位数规范化只选择新名词和RI特性,指定一个阈值或手动。输入矩阵可能包含NAs。运行这些功能之一,你需要提供一个输入矩阵(见示例)。这个论点有趣的用于选择经典的分位数之间的标准化(默认),和平均或中值平衡的分位数正常化。这个函数mbqnGetNRIfeatures ()mbqnPlotRI ()可以用来检查一个数据矩阵国际扶轮或特性。他们提供了一个潜在的RI / NRI特性的列表以及他们的排名不变性频率和图形输出。

例子

示例1:生成一个扭曲omics-like矩阵log2-transformed强度与失踪的价值观和一个排名不变的特性:

# #基本示例图书馆(“MBQN”)set.seed(1234年)#数据生成mtx < -mbqnSimuData(“omics.dep”)#数据失真mtx < -mbqnSimuDistortion(简称mtx)美元x.mod
plot.new()mbqnBoxplot(mtx,irow =1,主要=“非规范”)
# #警告(函数(z,切口= FALSE,宽度= NULL, varwidth = FALSE,: # #重复论点主要=“非规范”是无视
图1箱线图的非规范、扭曲的强度数据矩阵。第一个特性是一个国际扶轮的特性(红线)。它有最大强度为每个样本!”>
    <p class=图1箱线图的非规范、扭曲的强度数据矩阵。第一个特性是一个国际扶轮的特性(红线)。它有最大强度为每个样本!


检查申请排名不变的(RI)或近排名不变的新名词特性数据矩阵和可视化的结果:

res < -mbqnGetNRIfeatures(mtx,low_thr =0.5)
# #警告:可能有多个RI / NRI功能!
# #最大频率的RI /新名词特性(s): 100%


应用分位数规范化使用和不平衡国际扶轮特性和比较强度特点:

plot.new()mbqn。mtx < -mbqnNRI(x =mtx,中有趣的=值,verbose =)# MBQNqn。mtx < -mbqnNRI(x =mtx,中有趣的=,verbose =)# QNmbqnBoxplot(mbqn.mtxirow =res美元知识产权,瓦尔斯=data.frame(QN =qn.mtx (res美元ip、)主要=“归一化”)
# #警告(函数(z,切口= FALSE,宽度= NULL, varwidth = FALSE,: # #重复论点主要=“规范化”是无视
图2分位数归一化强度与平衡和不平衡的规范化RI特性。经典的分位数正常化抑制国际扶轮的任何强度变化特性,而MBQN保存它的变异,同时减少系统的批处理效果!”>
    <p class=图2分位数归一化强度与平衡和不平衡的规范化RI特性。经典的分位数正常化抑制国际扶轮的任何强度变化特性,而MBQN保存它的变异,同时减少系统的批处理效果!



示例2:可视化的效果规范化等级混合和等级不变的强度特性通过比较非规范的强度分布,分位数和平均/ median-balanced分位数规范化数据矩阵,行代表的特性,如蛋白质丰度/强度,列代表样本。

# #基本示例图书馆(“MBQN”)set.seed(1234年)mtx < -mbqnSimuData(“omics.dep”)#或者:mtx < -矩阵(# c (5、2、3, NA, 2、4、1、4、2、3、1, 4, 6, NA, 1, 3, NA, 1, 4, 3, NA, 1, 2, 3), ncol = 4)


执行QN、中值平衡QN和QN值平衡NRI特性。

qn。mtx < -mbqn(mtx,有趣的=,verbose =)mbqn。mtx < -mbqn(mtx,有趣的=“中值”,verbose =)qn.nri。mtx < -mbqnNRI(mtx,有趣的=“中值”,low_thr =0.5,verbose =)


检查饱和即不变性。

res < -mbqnGetNRIfeatures(mtx,low_thr =0.5)
# #警告:可能有多个RI / NRI功能!
# #最大频率的RI /新名词特性(s): 100%
#最大频率的RI /新名词特性(s): 100%



示例3:应用前后两面t检验应用程序不同的标准化的一个模拟,差异表达和扭曲的RI特性。从一个模拟数据集获得的特性是每个样本都是扭曲的意思和规模。

# plot.new ()mtx < -mbqnSimuData(“omics.dep”,秀。无花果=)mod.mtx < -mbqnSimuDistortion(mtx,年代。意思是=0.05,年代。规模=0.01)mtx2 < -mod.mtxmod.mtx < -mod.mtx美元x.modres < -mbqnGetNRIfeatures(mod.mtxlow_thr =0.5)
# #警告:可能有多个RI / NRI功能!
# #最大频率的RI /新名词特性(s): 100%
#无畸变的特性feature1 < -mtx(中1,)#扭曲特性feature1mod =mod.mtx [1,)#特征归一化后qn。feature1 =mbqn(mod.mtxverbose =)[1,)qn。mtx =mbqn(mod.mtxverbose =)mbqn。mtx =mbqn(mod.mtx有趣的=“的意思是”,verbose =)mbqn.feature1=mbqn(mod.mtx有趣的=“的意思是”,verbose =)[1,)


应用t检验:

#无畸变的特性tt。res0<- - - - - -t.test(feature1 [seq_len(9)],feature1 [c(10:18)),var.equal =真正的)#扭曲特性tt。res1<- - - - - -t.test(feature1mod [seq_len(9)],feature1mod [c(10:18)),var.equal =真正的)# mbqn规范化扭曲的特性tt。res < -t.test(mbqn.feature1 [seq_len(9)],mbqn.feature1 [c(10:18)),var.equal =真正的)


比较QN, MBQN和原始功能。

plot.new()matplot(t(rbind(feature1 =feature1,mod.feature1 =(feature1mod- - - - - -的意思是(feature1mod))/25+的意思是(feature1),qn。feature1 =(qn.feature1- - - - - -的意思是(qn.feature1))+的意思是(feature1),mbqn.feature1=(mbqn.feature1- - - - - -的意思是(mbqn.feature1))+的意思是(feature1))),类型=“b”,lty =c(1,1,1),pch =“o”,ylab =“强度”,xlab =“样本”,主要=“差异表达RI特性”,ylim =c(34.48,34.85))传说(x =11,y =34.86,传说=c(“特性”,“扭曲的特性/ 25”,“QN特性”,“MBQN特性”),pch =1,坳=c(1,2,3,4),lty =c(1,1,1,1),电池=“n”,y.intersp =1.5,x.intersp =0.2)传说(x =1。,y =34.6,传说=粘贴(“假定值(t) = ",(ttest.res1美元p.value,2),\ n假定值(t, mbqn) = ",(ttest.res美元p.value,4)),电池=“n”,x.intersp =0)
图3”>
    <p class=图3

如果(ttest.res美元p.value<0.05)消息(“H0(= =的意思)被拒绝!”)
# # H0(= =的意思)被拒绝!
#打印(mtx2 x.mod美元)#打印(mtx2 mx.offset美元)#打印(mtx2 mx.scale美元)打印(粘贴(“tt。不失真= ",ttest.res0))
# #“tt [1]。不失真= c (t = 10.0729609396921) "## [2] "ttest.undistorted = c(df = 16)" ## [3] "ttest.undistorted = 2.48237068197741e-08" ## [4] "ttest.undistorted = c(0.0715256392245863, 0.109656286984875)" ## [5] "ttest.undistorted = c(`mean of x` = 34.6978790054118, `mean of y` = 34.607288042307)" ## [6] "ttest.undistorted = c(`difference in means` = 0)" ## [7] "ttest.undistorted = 0.00899347904227051" ## [8] "ttest.undistorted = two.sided" ## [9] "ttest.undistorted = Two Sample t-test" ## [10] "ttest.undistorted = feature1[seq_len(9)] and feature1[c(10:18)]"
打印(粘贴(“tt。扭曲= ",ttest.res1))
# #“tt [1]。扭曲= c (t = -0.00510882259762921) "## [2] "ttest.distorted = c(df = 16)" ## [3] "ttest.distorted = 0.995986923648603" ## [4] "ttest.distorted = c(-0.877522816321726, 0.873303448226306)" ## [5] "ttest.distorted = c(`mean of x` = 36.1994057861729, `mean of y` = 36.2015154702206)" ## [6] "ttest.distorted = c(`difference in means` = 0)" ## [7] "ttest.distorted = 0.412949169283929" ## [8] "ttest.distorted = two.sided" ## [9] "ttest.distorted = Two Sample t-test" ## [10] "ttest.distorted = feature1mod[seq_len(9)] and feature1mod[c(10:18)]"
打印(粘贴(“tt。mbqn扭曲= ",ttest.res))
# #“tt [1]。mbqndistorted = c(t = 5.61617252905213)" ## [2] "ttest.mbqndistorted = c(df = 16)" ## [3] "ttest.mbqndistorted = 3.86388948816137e-05" ## [4] "ttest.mbqndistorted = c(0.0534488302470274, 0.118264504238475)" ## [5] "ttest.mbqndistorted = c(`mean of x` = 36.2430019696062, `mean of y` = 36.1571453023635)" ## [6] "ttest.mbqndistorted = c(`difference in means` = 0)" ## [7] "ttest.mbqndistorted = 0.0152873984548409" ## [8] "ttest.mbqndistorted = two.sided" ## [9] "ttest.mbqndistorted = Two Sample t-test" ## [10] "ttest.mbqndistorted = mbqn.feature1[seq_len(9)] and mbqn.feature1[c(10:18)]"

引用

[1]Brombacher E。Schad,。,Kreutz, C. (2020). Tail-Robust Quantile Normalization. Proteomics.
[2]里奇,主机,Phipson B。吴,D。,胡锦涛,Y。,Law, C.W., Shi, W., and Smyth, G.K. (2015). limma powers differential expression analyses for RNA-sequencing and microarray studies. Nucleic Acids Research 43(7), e47.
[3]本Bolstad (2018)。preprocessCore:预处理功能的集合。1.44.0 R包版本。https://github.com/bmbolstad/preprocessCore