基因组组装----k-mer

1.什么是k-mer?

k-mer:在生物信息学中,k-mers是包含在生物序列中的长度为k的子序列。

比如序列:GTAGAGCTGT,根据k值不同,可得到以下k-mer。

注:长度为L的序列对于一个给定的K可以得到L-k+1个k-mers。

file

2.可视化k-mers----k-mer spectrum

k-mer spectrum:显示了序列中的每个k-mer的多重性(例:8-mers' frequency)与具有该多重性的k-mers的数目。

下图为大肠杆菌的8-mer spectrum,比较8-mers的频率(即多重性)与它们的出现次数。

注:

以出现频数为横坐标,以出现该频数的k-mer片段总数(该数占总k-mer片段数的百分比)为纵坐标作图,即可得到某特定k-mer长度设定值下的所有k-mer的频数分布图。

一个物种基因组的k-mer谱模式数量是不同的,大多数物种有一个单峰分布。

所有哺乳动物均有一个多模式的分布。

一个k-mer谱的模式数也可在基因组的不同区域内变化:人类的5’ UTRs与外显子有单峰的k-mer谱,3’ UTRs与内含子中有多峰的k-mer谱。

file

3.影响DNA k-mer的因素

k-mer的使用频率受许多因素的影响,这些因素在多个水平上起作用,经常发生冲突。k值越高的k-mers也会受到k值较低的k-mers的影响。比如1-mer的碱基A未出现在一个序列中,则含有碱基A的2-mer也不会出现。

4.k-mer在基因组组装中的应用

基因组组装中,k-mer是在De Bruijn图构建时使用的。在创建De Bruijn图时,储存在长度为L的每个边(edge)中的k-mers必须与另外一个边的字符串重叠L-1,才能创建一个顶点。

4.1二代测序存在的问题

二代测序产生的reads通常会产生不同的read长度。
例如:Illumina公司的测序技术的reads可捕获100-mers的reads。而测序存在的问题是,在基因组中可能存在的100-mers中,只有其中的一小部分是真正产生的。这是由于read错误造成的,但更重要的是,测序过程中会发生简单覆盖漏洞(simple coverage holes)。这些可能的k-mers的一小部分违反了De Bruijn图的关键假设:即所有的k-mer reads必须与基因组中相邻的k-mer重叠k-1。

4.2解决方法

将这些k-mer的reads分解为更小的k-mer,这样产生的更小的k-mers将代表基因组中所有可能更小的k-mers。

除此之外,将k-mers拆分为更小也有助于缓解不同起始read长度的问题。

file

注:

该图显示了将reads分解为更小的k-mers(4-mers)的过程,以便可以用于De Bruijn的构建(关键假设)。

(A)被测序DNA的起始序列。

(B)从测序结果输出reads,并将它们进行对齐。但这种对齐的问题在于它们是k-2重叠,而不是k-1重叠(不符合关键假设)

(C)reads被拆分为更小的4-mers。

(D)丢弃重复的4-mers,并进行比对。这些k-mers是k-1重叠的。

除了直接用于基因组组装外,k-mers还可通过识别k-mers的重复出现来检查基因组的错误组装。重复出现(overrepresented)表明重复DNA序列的存在。

4.3k-mer选择对基因组组装的影响

k-mer大小的选择对基因组组装有多种影响。这种影响在较大和较小的k-mers之间差异大。因此,必须了解不同的k-mers,以便选择一个合适的平衡影响。

4.3.1较小的k-mer
较小的k-mer将减少图中存储的edges数,因此有助于减少存储DNA序列所需的内存。
较小的k-mer将增加所有k-mer重叠的机会,并获得构建De Bruijn图所需的子序列。
较小的k-mer会面临多顶点通向单个k-mer的风险。这会导致基因组组装更为困难,因为遍历的顶点数变多,从而存在更高水平的路径歧义。
随着k-mer变小,信息也会丢失。
较小的k-mer无法解决DNA中出现小微卫星或重复序列问题。

4.3.2较大的k-mer

较大的k-mer会增加图中存储的edges数,因此会增加存储DNA序列所需的内存。
增加k-mer后顶点的数目会减少。这有助于基因组的构建,因为图中的路径变少了。
较大的k-mer也会有较高的风险,即没有从每个k-mer出发的向外顶点。这是因为较大的k-mer会增加它与另一个k-mer不重叠k-1的风险。----reads的脱节,并导致大量较小的contigs。
较大的k-mer也有助于缓解小的重复区域的问题。

5.k-mer计算工具

由于k-mers的数量对应k值呈指数增长,所以较大的k(k>10)对k-mers计数十分困难。k-mer计算主要有以下工具:

Jellyfish
KMC
Gerbil
k-mer Analysis Toolkit(KAT)

本文由博客一文多发平台 OpenWrite 发布!

你可能感兴趣的:(基因组组装----k-mer)