跳转到主要内容

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

项目描述

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

样本1的“真实基因组”看起来像这样

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

为什么使用 biotdg 而不是 dwgsim

dwgsim 在生成接近真实数据的读数方面具有出色的能力。因此,dwgsim 在此功能上被 biotdg 使用。

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

  • 文档记录非常差。

  • 仅允许 1 或 2 的倍性。有一个选项‘3’,但它做的是不同的事情。

  • 不知道突变是如何生成的。它是否知道分相?如果是这样,它如何处理?

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

已知限制

  • 重叠突变处理不当。(对于生成测试数据可能不是问题。)

  • 突变始终以分相方式生成。这比无分相方式更容易实现。这也更透明。需要额外的工作来处理无分相生成突变。

  • biotdg 仅与 SNPs 测试。Indels 和其他变体类型尚未测试。

项目详情


下载文件

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

源分布

biotdg-0.1.0.tar.gz (8.9 kB 查看散列)

上传时间

构建分布

biotdg-0.1.0-py3-none-any.whl (8.7 kB 查看散列)

上传时间 Python 3

由以下支持

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面