内容

1介绍

对于许多生物学问题,相关的突变,或更具体地说,单核苷酸变异(SNVs),到不同的地层或类别。这些地层可能由基因定义坐标或其他措施由此派生和注释的变种,例如,复制时间,染色质状态,编码和非编码基因的一部分等。分层也可能的其他选择,如下图所示的例子突变密度分层轴。

是值得注意的,既不充分也不适合执行完全独立和独立NNLS突变特征的分析不同的地层。这种人为地降低了统计所提供的功率更高的SNVs不成层的设置。相反,应该使用无层理的分析的结果作为输入,并提供地层约束分析。

在YAPSA,这些地层或类别排他性,即一个SNV必须有且只有一个类别。地层的数量将会用\ (\)。例如一个可以评估SNV落入一个地区是否高,中间或低密度变异运用intermutation距离意义被切断。这个选择之后,有三层:高、中级和低密度突变。如果我们已经执行的分析突变信号对整个(无层理的)突变群体的目录,我们已经识别出一组感兴趣的签名和相应的风险。我们现在可以问如果一些签名丰富或耗尽在一个或另一个阶层,收益率strata-specific签名浓缩和消耗模式。在YAPSA函数SMC(突变的分层目录)解决了分层优化问题:

  1. \[\开始{对齐}\ min_ {H_ {(\ cdot j)} ^ k \ \ mathbb {R} ^ l} | | W \ cdot H_ {(\ cdot j)} ^ {k} - V_ {(\ cdot j)} ^ {k} | | \四\原则,j, k \ \ \ textrm {non-negativity的约束下:}\四H_ {(ij)} ^ {k} > = 0 \四\陪我,j, k \ \ \ textrm{和附加contraint:} \四\ sum_ {k = 1} ^{年代}H ^ {k} = H \ \ \ textrm {H在哪里定义的优化:}\四\ min_ {H_ {(\ cdot j)} \中\ mathbb {R} ^ l} | | W \ cdot H_ {(\ cdot j)} - V_ {(\ cdot j)} | |给所有j \ \ \ \四\ textrm {non-negativity的约束下:}\四H_ {(ij)} > = 0 \四\陪我,j \四\ textrm{和}\四V = \ sum_ {k = 1} ^{年代}V ^ {k} \{对齐}结束\]

中定义的1。使用YAPSA,\ (j \)该指数在样本,\ \(米)样品的数量,我\ \ ()是在签名和索引\ (l \)是签名的数量。此外,\ (k \)它是在地层和指数\ (\)是地层的数量。注意最后两行无层理的方程(1)对应的优化问题。方程(1)的最后部分反映了分层突变目录的可加性\ (V ^ {k} \)由定义因为SNVs他们建造的集(即地层)是排斥的。

SMC-procedure还可以应用当NMF分析已经完成和曝光\ (\ widetilde {H} \)应该使用的NMF分析SMC作为输入和约束。然后,它解决了任务:

  1. \[开始\{对齐}\ min_ {H_ {(\ cdot j)} ^ k \ \ mathbb {R} ^ l} | | W \ cdot H_ {(\ cdot j)} ^ {k} - V_ {(\ cdot j)} ^ {k} | | \四\原则,j, k \ \ \ textrm {non-negativity的约束下:}\四H_ {(ij)} ^ {k} > = 0 \四\陪我,j, k \ \ \ textrm{和附加contraint:} \四\ sum_ {k = 1} ^{年代}H ^ {k} = \ widetilde {H} \ \ \{对齐}结束\]

应用SMC这样,最初的LCD分解无层理的突变目录省略的结果被曝光NMF的提取分析。

2回顾:计算签名暴露(没有分层)

在下一节中,我们简要概括分析SNV突变签名数据集执行的一个例子1。使用YAPSA。我们因此首先加载示例数据存储在包:

数据(团体)的数据(达标)数据(“lymphomaNature2013_mutCat_df”) current_cutoff_vector < - cutoffCosmicValid_abs_df [6]

然后执行监督分析SNV突变签名使用signature-specific达标:

lymphoma_COSMIC_listsList < - LCD_complex_cutoff_combined (in_mutation_catalogue_df = lymphomaNature2013_mutCat_df in_cutoff_vector = current_cutoff_vector in_signatures_df = AlexCosmicValid_sig_df in_sig_ind_df = AlexCosmicValid_sigInd_df)

我们组分配给不同的样本:

数据(lymphoma_PID) colnames (lymphoma_PID_df) < -“群”lymphoma_PID_df $ PID < - rownames (lymphoma_PID_df) COSMIC_subgroups_df < - make_subgroups_df (lymphoma_PID_df lymphoma_COSMIC_listsList队列美元风险敞口)

最后情节获得的结果:

exposures_barplot (in_exposures_df = lymphoma_COSMIC_listsList队列美元敞口,in_signatures_ind_df = lymphoma_COSMIC_listsList队列out_sig_ind_df美元,in_subgroups_df = COSMIC_subgroups_df)
暴露SNV突变签名

图1:暴露SNV突变签名

3分层分析突变的签名

3.1准备

分层分析的函数访问原始数据提供的最高程度的灵活性地层本身的定义。因此我们必须重复格式化步骤已经完成第一个故事

数据(“lymphoma_Nature2013_raw”)名称(lymphoma_PID_df) < - gsub(“群”、“群”,名称(lymphoma_PID_df))的名字(lymphoma_Nature2013_raw_df) < - c (“PID”、“类型”、“铬”,“开始”、“停止”、“REF”、“ALT”、“国旗”)lymphoma_Nature2013_df < -子集(lymphoma_Nature2013_raw_df类型= =“潜艇”,选择= c(铬、启动、裁判、ALT、PID))的名字(lymphoma_Nature2013_df) [2] < -“POS”lymphoma_Nature2013_df小组< -“未知”DLBCL_ind < - grep (“^ DLBCL。*”, lymphoma_Nature2013_df PID)美元美元lymphoma_Nature2013_df子群(DLBCL_ind) < -“DLBCL_other”MMML_ind < - grep (41 [0 - 9] + $ ^, lymphoma_Nature2013_df $ PID) lymphoma_Nature2013_df < - lymphoma_Nature2013_df [MMML_ind,] (my_PID rownames (lymphoma_PID_df)) {PID_ind <——(as.character (lymphoma_Nature2013_df $ PID) = = my_PID) lymphoma_Nature2013_df小组(PID_ind) < - lymphoma_PID_df群美元((rownames (lymphoma_PID_df) = = my_PID)]} lymphoma_Nature2013_df小组< -美元因素(lymphoma_Nature2013_df群美元)lymphoma_Nature2013_df < - translate_to_hg19 (lymphoma_Nature2013_df,“铬”)lymphoma_Nature2013_df美元变化< - attribute_nucleotide_exchanges (lymphoma_Nature2013_df) lymphoma_Nature2013_df < - lymphoma_Nature2013_df[秩序(lymphoma_Nature2013_df $ PID lymphoma_Nature2013_df铬美元,lymphoma_Nature2013_df POS美元),]lymphoma_Nature2013_df < - annotate_intermut_dist_cohort (lymphoma_Nature2013_df in_PID.field =“PID”)的数据(“exchange_colour_vector”) lymphoma_Nature2013_df坳< - exchange_colour_vector美元(美元lymphoma_Nature2013_df变化)

3.2执行基于突变密度分层

现在我们将使用上述intermutational距离计算。我们设置intermutational达标距离在1000和100000个基点,导致三个阶层。我们标注每层它的变体。

lymphoma_Nature2013_df density_cat < -削减美元(美元lymphoma_Nature2013_df dist c(0, 1001, 100001,正无穷)= FALSE,标签= c(“高”、“中间”、“背景”))

下面的表显示了变体在地层的分布:

temp_df < - data.frame(表(lymphoma_Nature2013_df density_cat美元))的名字(temp_df) < - c(“层”、“Cohort-wide计数”)kable (temp_df标题= paste0(“地层密度SMC的突变”))

表1: 地层密度SMC的突变
地层 Cohort-wide计数
6818年
中间 62131年
背景 50675年

我们现在手头都进行分层特征分析:

strata_order_ind < - c (1、3、2) mut_density_list < run_SMC (lymphoma_Nature2013_df, lymphoma_COSMIC_listsList群签名,美元lymphoma_COSMIC_listsList队列out_sig_ind_df美元,COSMIC_subgroups_df, column_name =“density_cat refGenome = BSgenome.Hsapiens.UCSC。hg19 cohort_method_flag =“norm_PIDs in_strata_order_ind = strata_order_ind)
SMC(分层突变目录)的基于密度的突变。

图2:SMC(突变的分层目录)
基于密度的突变。

这产生一个多层面板图4排的阴谋。第一行可视化特征分布在整个队列没有分层,紧随其后的是一行每层的阴谋。因此在我们的例子中我们有四排图三(独家)地层作为输入。每一行包含三个情节。左边的情节显示绝对的暴露在各自的地层堆叠barplots在每个样本的基础上。中间的情节显示各自的地层相对暴露在每个样本的基础上叠加barplots。正确的情节显示cohort-wide平均值的相对风险各自的地层。误差线表示平均数标准误差(SEM)。

这些结果也可以显示为一个躲避barplot包含信息的第三列的情节在上面的图中,需要一个额外的执行代码块的生成:

dodged_df < -。调用(rbind mut_density_list队列美元)名称(dodged_df) < - gsub(“变量”、“层”,名称(dodged_df))的名字(dodged_df) < - gsub(“团体”,“签名”,名称(dodged_df)) dodged_df层< - gsub美元(“_rel”、“as.character (dodged_df地层)美元)dodged_df < - dodged_df[这(dodged_df $地层! =“所有”),]dodged_df层< -美元因素(as.character (dodged_df地层美元),水平=排序(独特(dodged_df地层美元))((strata_order_ind)牧师))dodged_plot < - ggplot () + geom_bar(数据= dodged_df aes_string (x =“签名”,y =“曝光”,组=“层”,填补=“层”),统计=“身份”=“道奇”位置,大小= 1.5)+ geom_errorbar(数据= dodged_df aes_string (x =“签名”,ymin =“exposure_min ymax =“exposure_max”=“层”),位置= position_dodge(宽度= 0.9),宽度= 0.3)+实验室(y =“相对曝光”)如果(存在(“current_strata_colVector”)) {dodged_plot < - dodged_plot + scale_fill_manual(值= current_strata_colVector[1],标签= current_labelVector [1] [current_strata_order_ind])}打印(dodged_plot)
SMC结果显示为躲避阴谋。

图3:SMC结果显示为躲避阴谋

3.3测试的统计显著性富集和消耗模式

测试潜在差异统计学意义的签名暴露(如签名浓缩和损耗模式)之间的不同层次,我们可以利用克鲁斯卡尔-沃利斯检验,如数据分成类别和(可能超过两个)可能不会遵循正态分布。我们正在测试不同的签名相同的分层,我们必须对多个测试。为了控制错误发现率(罗斯福)Benjamini-Hochberg修正是适当的。

stat_mut_density_list < - stat_test_SMC (mut_density_list in_flag =“规范”)kable (stat_mut_density_list kruskal_df美元,标题= paste0 (“cohort-wide暴露在Kruskal测试的结果”,“每个签名没有和修正地层”,“多个测试。”))

表2: Kruskal测试的结果为cohort-wide敞口超过地层/签名没有多个测试和修正。
Kruskal_statistic df Kruskal_p_val Kruskal_p_val_BH
AC1 45.762664 2 0.0000000 0.0000000
AC2 5.612044 2 0.0604450 0.1006065
AC5 1.964605 2 0.3744480 0.4493376
AC9 6.068377 2 0.0481137 0.1006065
AC13 1.427930 2 0.4896988 0.4896988
AC17 5.404008 2 0.0670710 0.1006065

在接下来的段落我们执行事后测试克鲁斯卡尔-沃利斯检验人签名,如上评估,给了一个重要的结果。

significance_level < - 0.05(我在seq_len(暗(stat_mut_density_list kruskal_df美元)[1])){如果(stat_mut_density_list kruskal_df Kruskal_p_val_BH美元[我]< significance_level){打印(paste0(“签名:”rownames (stat_mut_density_list kruskal_df美元)[我]))打印(stat_mut_density_list kruskal_posthoc_list美元[[我]])}}
# #[1]“签名:AC1”
# # # #两两比较使用Tukey-Kramer-Nemenyi全对测试Tukey-Dist近似
# #数据:sig_exposures_vector sig_strata_vector
# # # # 3.0平台以及高背景- # #中间0.058 - 8.6 e-05
# # # # P值调整方法:单步执行
# #备择假设:two.sided

从这个分析,我们可以看到,一个独特的签名浓缩和损耗规律:

  1. 地层密度高的突变:浓缩签名AC5和损耗的AC1(重要)和AC17签名
  2. 背景:签名分布非常相似的一个完整的突变目录(第一行)
  3. 地层中间突变密度:中间签名浓缩和地层之间的消耗模式高突变密度和背景。