Software-数据模拟-DWGSIM

随着NGS在分子诊断中变异(体系和胚系)检测的应用普及。临床NGS检测产品的检测范围越来越大,带来的一个优势是可以识别更多基因中的变异;但是同时也使性能验证面临巨大的挑战。临床方法学验证过程中很难获得真实样本,能同时具有大量关注且能够被检测到频率也合适的变异。所以大多数实验室都是通过对具有已知变异的标准品或细胞系进行测序分析,并依靠测序指标(即具有足够覆盖率的目标部分)来推断其他区域的性能。

在这个大背景下,很多实验室会开始考虑使用模拟数据进行性能评估,使用数据模拟的方法在临床实验室中具有非常高的实用性,可作为临床检测验证的辅助工具。通过模拟数据可以便捷的构建出真实样本中难以获取的变异数据,从而使实验室能够更高效经济同时准确地测试生物信息学流程的性能(不同频率梯度、流程灵敏度,针对不同长度插入/缺失的性能边界)。从而进行更全面的方法学验证和生信流程验证,同时模拟数据也已经成为AMP的建议方法,同时针对不同的检测目的提供了不同的模拟方案,可以参考文章。同时文章中也提供了非常多的数据模拟软件和方案,可以参考模拟软件参考列表

今天来介绍 DWGSIM

软件介绍:

wgsim 是一块用于高通量数据模拟的软件,whole genome simulation。这款软件可以模拟出illumina测序数据,并且可以自由调整测序reads的读长,插入片段大小以及错误率等,使用起来比较方便。模拟数据主要用于软件的测试与评估。例如对序列组装
软件的评估。因为模拟数据是根据已有的参考序列来的,我们可以将模拟出来的数据进行组装,再将组装的结果与原序列进行比对。这样就能每次调整单因素变量,例如比较不同reads读长,不同插入片段大小或者不同错误率条件下,对序列组装的影响。
也可以为参考序列模拟变异位点,例如点突变、片段获得缺失等,然后模拟数据,评估软件是否可以检测出这些变异位点。这个过程中,模拟出可控条件的数据是非常重要的。
但是,这里面我们也要认识到,实际测序中影响的因素是非常多的,模拟数据是很难和实际数据相匹配的,比如组装软件对模拟数据表现出非常好的效果,但是对实际测序数据可能非常差。

安装

软件仓库: https://github.com/nh13/DWGSIM.git

conda安装

1
conda install bioconda::dwgsim

重要参数介绍

软件比较简单,输入文件为基因组序列,fasta格式,输出为illumina的fastq格式,这些格式我们在前面都介绍过。然后是一些选项。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Program: dwgsim (short read simulator)
Version: 0.1.14
Contact: Nils Homer <dnaa-help@lists.sourceforge.net>

Usage: dwgsim [options] <in.ref.fa> <out.prefix>

Options:
-e FLOAT per base/color/flow error rate of the first read [from 0.020 to 0.020 by 0.000]
-E FLOAT per base/color/flow error rate of the second read [from 0.020 to 0.020 by 0.000]
-i use the inner distance instead of the outer distance for pairs [False]
-d INT outer distance between the two ends for pairs [500]
-s INT standard deviation of the distance for pairs [50.000]
-N INT number of read pairs (-1 to disable) [-1]
-C FLOAT mean coverage across available positions (-1 to disable) [100.00]
-1 INT length of the first read [70]
-2 INT length of the second read [70]
-r FLOAT rate of mutations [0.0010]
-F FLOAT frequency of given mutation to simulate low fequency somatic mutations [0.5000]
NB: freqeuncy F refers to the first strand of mutation, therefore mutations
on the second strand occur with a frequency of 1-F
-R FLOAT fraction of mutations that are indels [0.10]
-X FLOAT probability an indel is extended [0.30]
-I INT the minimum length indel [1]
-y FLOAT probability of a random DNA read [0.05]
-n INT maximum number of Ns allowed in a given read [0]
-c INT generate reads for [0]:
0: Illumina
1: SOLiD
2: Ion Torrent
-S INT generate paired end reads with orientation [0]:
0: default (opposite strand for Illumina, same strand for SOLiD/Ion Torrent)
1: same strand (mate pair)
2: opposite strand (paired end)
-A INT generate paired end reads with read one [0]:
0: default (both, random)
1: forward genomic strand
2: reverse genomic strand
-f STRING the flow order for Ion Torrent data [(null)]
-B use a per-base error rate for Ion Torrent data [False]
-H haploid mode [False]
-z INT random seed (-1 uses the current time) [-1]
-M generate a mutations file only [False]
-m FILE the mutations txt file to re-create [not using]
-b FILE the bed-like file set of candidate mutations [(null)]
-v FILE the vcf file set of candidate mutations (use pl tag for strand) [(null)]
-x FILE the bed of regions to cover [not using]
-P STRING a read prefix to prepend to each read name [not using]
-q STRING a fixed base quality to apply (single character) [not using]
-Q FLOAT standard deviation of the base quality scores [2.00]
-s INT standard deviation of the distance for pairs [50.000]
-o INT output type for the FASTQ files [0]:
0: interleaved (bfast) and per-read-end (bwa)
1: per-read-end (bwa) only
2: interleaved (bfast) only
-h print this message

使用示例

1
dwgsim -N 10000 -1 100 -2 100 -y 0 input.fa output.prefix

wgsim 参考序列 reads1 reads2 这里插入片段我们选择500bp,偏差-s在50,reads长度-1 -2为100bp,二者可以不一样,其余默认。

-------------本文结束感谢您的阅读-------------