Skip to main content

生物信息学测试数据生成器

项目描述

biotdg:生物信息学测试数据生成器

biotdg可以根据染色体具有不同倍性的基因组的 vcf 文件生成突变。它旨在为正确处理性染色体倍性的管道创建测试基因组。它还可用于为处理三倍体物种(如香蕉)的管道或发现染色体失衡的管道(如 21 三体(唐氏综合症)和 XXY 男性(克兰费尔特综合症))创建测试数据。

biotdg使用参考基因​​组、倍性表和 vcf 文件为样本创建“真实基因组”。例如,如果倍性表指出 chr21的倍性为 3,那么“真正的基因组”将具有chr21的三个拷贝。每个chr21副本都会根据 vcf 文件有自己的突变。

创建“真正的基因组”fasta 文件后。biotdg使用 dwgsim程序生成 fastq 读取。

用法

usage: biotdg [-h] [--version] -r REFERENCE --vcf VCF -p PLOIDY_TABLE -s
              SAMPLE_NAME [-z RANDOM_SEED] [-l READ_LENGTH] [-C COVERAGE]
              [-e READ1_ERROR_RATE] [-E READ2_ERROR_RATE]
              [-n MAXIMUM_N_NUMBER] [-o OUTPUT_DIR]

Bioinformatics Test Data Generator

optional arguments:
  -h, --help            show this help message and exit
  --version             show program's version number and exit
  -r REFERENCE, --reference REFERENCE
                        Reference genome for the sample.
  --vcf VCF             VCF file with mutations.
  -p PLOIDY_TABLE, --ploidy-table PLOIDY_TABLE
                        Tab-delimited file with two columns specifying the
                        chromosome name and its ploidy. By default all
                        chromosomes have a ploidy of 2.
  -s SAMPLE_NAME, --sample-name SAMPLE_NAME
                        Name of the sample to generate. The sample must be in
                        the VCF file.
  -z RANDOM_SEED, --random-seed RANDOM_SEED
                        Random seed for dwgsim (default: 1).
  -l READ_LENGTH, --read-length READ_LENGTH
                        Read length to be used by dwgsim.
  -C COVERAGE, --coverage COVERAGE
                        Average coverage for the generated reads. NOTE: This
                        is multiplied by the ploidy of the chromosome.
  -e READ1_ERROR_RATE, --read1-error-rate READ1_ERROR_RATE
                        Same as -e flag in dwgsim. per base/color/flow error
                        rate of the first read.
  -E READ2_ERROR_RATE, --read2-error-rate READ2_ERROR_RATE
                        Same as -E flag in dwgsim. per base/color/flow error
                        rate of the second read.
  -n MAXIMUM_N_NUMBER, --maximum-n-number MAXIMUM_N_NUMBER
                        Maximum number of Ns allowed in a given read.
  -o OUTPUT_DIR, --output-dir OUTPUT_DIR

例子

给定以下reference.fasta文件

>chr1
GATTACA
GATTACA
GATTACA
>chrX
AGTCAGTCAGTC
>chrY
AGAATC

以下倍性表.tsv

chr1        3
chrX        2
chrY        1

和以下vcf:

##fileformat=VCFv4.1
##FORMAT=<ID=GT,Number=1,Type=String,Description="Genotype">
##contig=<ID=chr1,length=21>
##contig=<ID=chrX,length=12>
##contig=<ID=chrY,length=6>
#CHROM      POS     ID      REF     ALT     QUAL    FILTER  INFO    FORMAT  sample1
chr1        4       .       T       A,C,G   .       .       .       GT      1/2/3
chr1        7       .       A       T       .       .       .       GT      0/1/0
chrX        1       .       A       T       .       .       .       GT      0/1
chrX        2       .       G       T       .       .       .       GT      0/0
chrY        4       .       A       C       .       .       .       GT      1

sample1 的“真实基因组”如下所示:

>chr1_0
GATAACAGATTACAGATTACA
>chr1_1
GATCACTGATTACAGATTACA
>chr1_2
GATGACAGATTACAGATTACA
>chrX_0
AGTCAGTCAGTC
>chrX_1
TGTCAGTCAGTC
>chrY_0
AGACTC

为什么biotdg而不是dwgsim

dwgsim具有出色的生成接近真实数据的读取的能力。因此dwgsimbiotdg以这种身份使用。

dwgsim还可以随机生成突变并以 VCF 格式输出。它还具有使用 VCF 生成突变的能力。这种基于 VCF 的方法被认为是不够的,原因如下:

  • 记录得很差。

  • 只允许 1 或 2 的倍数。有一个选项“3”,但它的作用不同。

  • 突变究竟是如何产生的尚不清楚。它知道分阶段吗?如果是这样,它是如何处理的?

biotdg 透明地处理“真实基因组”的创建,然后使用 dwgsim 生成读取。biotdg可以很好地处理具有混合倍性的基因组(大多数具有性染色体的物种就是这种情况)。

已知限制

  • 重叠突变处理不当。(可能与生成测试数据无关。)

  • 突变总是分阶段产生的。这比不分阶段的方式更容易实现。它也更加透明。需要一些额外的工作来处理突变的非阶段性生成。

  • biotdg仅使用 SNP 进行测试。未测试 Indel 和其他变体类型。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

biotdg-0.1.0.tar.gz (8.9 kB 查看哈希

已上传 source

内置分布

biotdg-0.1.0-py3-none-any.whl (8.7 kB 查看哈希

已上传 py3