随着测序技术的蓬勃发展,转录组测序中Tophat的应用愈来愈频繁。但是很多论坛,博客等,都在针对Tophat中-r/--mate-inner-dist参数的解释不禁让我觉得有些不妥。
版本一:
-r 比对时两成对引物间的距离中值。比如说,如果你的插入片段有300bp,而每个引物有50bp,那么r值就应该是200=(300+50*2)/2。没有默认值,如果是末端配对比对时这个值是必须的。
版本二:
Tophat有个参数是-r,是用于指定两个末端间未测序部分的宽度的,这个宽度貌似应该这样算:library的长度-2个read的总长度-adapter的总长度
版本三:
The sample was run on a 3% Agarose gel (Nusieve 3:1 Agarose) and a 160 - 380 base pair fragment was cut out and extracted.
在tophat的manual里,有两个参数,-r/--mate-inner-dist <int>和--mate-std-dev <int>,第一个是期望值,第二个是标准差(默认20)。那是不是说第一个参数设为(160+380-2*read_length)/2
于是,开始有很多人询问如何计算引物序列长度,提取接头序列,-r是否应该设置负数。
关于这个参数的上述理解,个人觉得是不精确的,理由如下:
1) 参考Tophat官网中Manual部分对-r/--mate-inner-dist的注释。链接:http://tophat.cbcb.umd.edu/manual.html
-r/--mate-inner-dist <int> This is the expected (mean) inner distance between mate pairs. For, example, for paired end runs with fragments selected at 300bp, where each end is 50bp, you should set -r to be 200. The default is 50bp.
其中没有任何一个单词是有关引物Primer,或者接头adapter。而是写的在一个fragment中,两个“mate pair”之间的距离,这个不就是插入距离的意思。
后面的那个举例也是想说明:插入距离 = 建库时选择的fragment长度[300bp] - 每一端reads的长度[50bp*2] = 200bp
2)对“the expected (mean)”的解释不应该简单是期待值,确实与另一个参数--mate-std-dev(The standard deviation for the distribution on inner distances between mate pairs. The default is 20bp.)有关联。
因为在测序建库过程中,我们选择的是fragment长度是300bp,但是由于实验过程中一定会存在一个误差范围。虽然期望的是300bp,但是产生的实际fragment长度为290bp,310bp不等,而测序的reads长度是固定长度50bp,所以插入序列长度会出现相应的误差波动。
故,最终fragment长度应该是= 5'reads_length + inner_distance ± standard_deviation + 3'reads_length = 50bp + 200bp ± 20bp + 50bp = 300± 20[bp]
以上为自己的理解,希望大家也一起讨论交流。