主要两个原因, 一是构建测序文库时的可用的细胞量并不充足 二是打断的步骤(一般都是超声波)会引起部分DNA降解 以上两个都会是的整体或局部DNA浓度过低,假如直接取样测序,那会测序不全。所以要通过PCR把这些微弱的DNA扩增,以增加浓度,取样时能被取到。
align
fastq文件中相邻的两条reads之间没有任何位置关系,因为在建库和测序后,reads是完全打乱的。也就是说,这些fastq中的reads的都是原来基因组中的某个位置的短序列。
而接下来的分析则需要有顺序的数据,也就是要按这些reads在基因组的位置排好。所以就要把这些reads和该物种的参考基因组比较,把每一条reads在参考基因组上进行定位,然后按顺序排好。 最常用的是bwa软件,用bwa mem命令,输出的是bam格式
sort
上面的比对后,得到的bam文件是按fastq文件的顺序把每条reads定位到基因组就输出,并没有识别比对位置的先后和重排。而后面的去重复等步骤都需要排好序的文件才可以,所以需要排序。
前面写了为什么要PCR。简单就是能让含量低的DNA能被取到进行测定。也就是说PCR就是用来复制DNA片段的,最理想的NGS数据分析,就是尽可能把通过PCR获得的子链出数据全部去除,当PCR没发生过一样。 如何定义是否为duplicated reads,有三个标准,reads的起始位置,终止位置,起始位置和终止位置之间的碱基序列都一样。只有有一个不同,就是不同的分子。
PCR 的过程中不同长度的文库分子被扩增的效率不同(GC 太高或 AT 含量太高都会影响扩增效率),PCR 更倾向于扩增短片段的文库分子,这里先不考虑文库片段扩增效率的差异,把问题简化一下,假设所有文库分子扩增效率都相同。PCR duplicate 的主要来源是同一个文库分子的不同拷贝都在 flowcell 上生成了可以被测序的 cluster ,导致同一个分子的序列被测序仪读取多次。那么为何在每个分子都有上千个拷贝的情况下,实际却很少出现同一分子的多个拷贝被测序的情况呢?主要原因就是文库中 unique 分子的数量比被 flowcell 上引物捕获的分子数量多很多,直白点说就是 flowcell 上用于捕获文库分子的引物数量太少了,两者不在同一个数量级,导致很少出现同一个文库分子的多个拷贝被 flowcell 上引物捕获生成 cluster。 samtools是把重复直接删除 gatk是标记而不删除
Fixmate checks the two mates from a paired-end bam (name sorted) and then updates the flags and insert sizes. IMHO that only makes sense if you did any filtering on your bam. For example, I typically filter my bam (for ChIP-seq, ATAC-seq, these kind of assays) for properly-paired reads and MAPQ. In case filtering for MAPQ>30 removes the forward, but not the reverse mate, the actual read is no longer paired, even though the bitwise flag still indicates the remaining mate as such. Running fixmate will then flag this singleton as unpaired and remove the insert size field, which allows subsequent removal by e.g. samtools view -f 2. In your case, as you did align directly from fastq, I do not think that it is necessary. Just be sure in your subsequent SNV calling that you exclude reads with MAPQ=0, as these multimappers are unrealiable.