遗传系谱工具与消费者dna检测结果分析
lineage的Python项目详细描述
沿袭
沿袭 提供了一个分析从直接到消费者的基因型(原始数据)文件的框架 (dtc)dna检测公司,主要用于基因谱系研究。
功能
- 使用hapmap第二阶段遗传图计算个体间共享dna的厘米数(cms)
- 绘制个体之间共享的DNA
- 确定个体间共享的基因(即从共享DNA片段转录的基因)
- 查找子级和父级之间不一致的snp
- 通过snps包为个人读、写、合并和重新映射snps
依赖关系
沿袭 需要 python 3.5+和以下python包:
在Linux系统上,可能还需要以下系统级安装:
$ sudo apt-get install python3-tk $ sudo apt-get install gfortran $ sudo apt-get install python-dev $ sudo apt-get install python-devel $ sudo apt-get install python3.X-dev # (where X == Python minor version)
示例
初始化沿袭框架
导入沿袭并实例化沿袭对象:
>>> from lineage import Lineage >>> l = Lineage()
下载示例数据
让我们从opensnp下载一些示例数据
>>> paths = l.download_example_datasets() Downloading resources/662.23andme.304.txt.gz Downloading resources/662.23andme.340.txt.gz Downloading resources/662.ftdna-illumina.341.csv.gz Downloading resources/663.23andme.305.txt.gz Downloading resources/4583.ftdna-illumina.3482.csv.gz Downloading resources/4584.ftdna-illumina.3483.csv.gz
我们将这些数据集称为 user662 , user663 , user4583 ,以及 user4584
加载原始数据
在 沿袭框架的上下文中创建一个 个体 用户662 数据集:
>>> user662 = l.create_individual('User662', 'resources/662.ftdna-illumina.341.csv.gz') Loading resources/662.ftdna-illumina.341.csv.gz
在这里,我们创建了名为user662的用户662并加载了一个原始数据文件。
重新映射snp
哎哟!我们刚刚加载的数据是构建36,但是我们希望构建37,因为 数据集已构建37…让我们重新映射snp:>>> user662.build 36 >>> chromosomes_remapped, chromosomes_not_remapped = user662.remap_snps(37) Downloading resources/NCBI36_GRCh37.tar.gz >>> user662.build 37 >>> user662.assembly 'GRCh37'
snp可以在构建36( ncbi36 )、构建37( grch37 )和构建38之间重新映射。 ( GRCH38 )。
合并原始数据文件
user662的数据集由来自两个不同dna测试的三个原始数据文件组成 公司。让我们加载剩下的两个文件。
随着数据的增加,它与现有的数据进行了比较,并且snp的位置和基因型 发现差异。(可通过参数调整差异阈值。)
>>> user662.snp_count 708092 >>> user662.load_snps(['resources/662.23andme.304.txt.gz', 'resources/662.23andme.340.txt.gz'], ... discrepant_genotypes_threshold=300) Loading resources/662.23andme.304.txt.gz 3 SNP positions were discrepant; keeping original positions 8 SNP genotypes were discrepant; marking those as null Loading resources/662.23andme.340.txt.gz 27 SNP positions were discrepant; keeping original positions 156 SNP genotypes were discrepant; marking those as null >>> len(user662.discrepant_positions) 30 >>> user662.snp_count 1006960
保存snp
好的,到目前为止,我们已经将snp重新映射到同一个构建并合并了来自三个文件的snp, 确定一路上的差异。让我们保存由超过1百万个+ snps到csv文件:
>>> saved_snps = user662.save_snps() Saving output/User662_GRCh37.csv
所有输出文件都保存到输出中 目录。
比较个体
让我们为 user663 数据集创建另一个 个体
>>> user663 = l.create_individual('User663', 'resources/663.23andme.305.txt.gz') Loading resources/663.23andme.305.txt.gz
现在我们可以在 user662 和 user663 数据集之间执行一些分析。
查找不一致的snp
首先,让我们找出不一致的snp(即snp数据与孟德尔的不一致)。 继承):
$ sudo apt-get install python3-tk $ sudo apt-get install gfortran $ sudo apt-get install python-dev $ sudo apt-get install python-devel $ sudo apt-get install python3.X-dev # (where X == Python minor version)0
此方法还返回一个 pandas.dataframe ,可以在 提示,尽管csv文件中有相同的输出。
$ sudo apt-get install python3-tk $ sudo apt-get install gfortran $ sudo apt-get install python-dev $ sudo apt-get install python-devel $ sudo apt-get install python3.X-dev # (where X == Python minor version)1
不算mtdna单核苷酸,这两个数据集之间有37个不一致的单核苷酸。
找到共享的DNA
在这种背景下,让我们找到 user662 和 user663 数据集之间的共享dna, 计算g共享DNA的中心点和绘制结果:
$ sudo apt-get install python3-tk $ sudo apt-get install gfortran $ sudo apt-get install python-dev $ sudo apt-get install python-devel $ sudo apt-get install python3.X-dev # (where X == Python minor version)2
注意,每个dna片段的centimorgan和snp阈值都可以调整。另外, 注意,下载了两个文件以便于分析和绘图-以后的分析 将使用下载的文件,而不是再次下载文件。最后,请注意 个人被传递到find_shared_dna 。这个列表可以包含任意数量的 个体, 血统 将在列表中的所有个体中找到共享的DNA(即, 所有个体共享一条或两条染色体上的DNA片段。
输出作为字典返回,并带有以下键( pandas.dataframe 和 熊猫.index 项目:
$ sudo apt-get install python3-tk $ sudo apt-get install gfortran $ sudo apt-get install python-dev $ sudo apt-get install python-devel $ sudo apt-get install python3.X-dev # (where X == Python minor version)3
在本例中,共有27段DNA:
$ sudo apt-get install python3-tk $ sudo apt-get install gfortran $ sudo apt-get install python-dev $ sudo apt-get install python-devel $ sudo apt-get install python3.X-dev # (where X == Python minor version)4
此外,输出文件是 已创建;这些文件在文档中有详细说明,可以使用 save_output=false 参数。在本例中,输出文件由csv文件组成 详细说明一条染色体上的共享DNA片段,以及说明共享DNA的绘图:
找到共享基因
分子生物学的中心教条 说明遗传信息从dna到mrna再到蛋白质:dna被转录到 mrna,mrna被翻译成蛋白质。比这更复杂(这是生物学 但通常情况下,一个mrna产生一个蛋白质,mrna/蛋白质被认为是 基因<<P>
< COL/> < COL/> <正文>[*] |
理论上,dna的共享片段应该产生相同的蛋白质,但是有很多
复杂性,如拷贝数变异(CNV)、基因表达等
< >
<表>
在本例中,我们再为 user4583 和 user4584 创建两个 个体 数据集: $ sudo apt-get install python3-tk $ sudo apt-get install gfortran $ sudo apt-get install python-dev $ sudo apt-get install python-devel $ sudo apt-get install python3.X-dev # (where X == Python minor version)5 $ sudo apt-get install python3-tk $ sudo apt-get install gfortran $ sudo apt-get install python-dev $ sudo apt-get install python-devel $ sudo apt-get install python3.X-dev # (where X == Python minor version)6 现在让我们找到共享的基因: $ sudo apt-get install python3-tk $ sudo apt-get install gfortran $ sudo apt-get install python-dev $ sudo apt-get install python-devel $ sudo apt-get install python3.X-dev # (where X == Python minor version)7 下面显示了说明共享DNA的图。注意,除了输出 一条或两条染色体上的共享DNA片段,一条或两条染色体上的共享基因 染色体也被输出。 在这个例子中,有15976个共享基因在两个染色体上转录自36个片段 共有的DNA: $ sudo apt-get install python3-tk $ sudo apt-get install gfortran $ sudo apt-get install python-dev $ sudo apt-get install python-devel $ sudo apt-get install python3.X-dev # (where X == Python minor version)8 文档文档可用 这里 许可证版权所有(c)2016 Andrew Riha 此程序是免费软件:您可以重新分发和/或修改 根据由 自由软件基金会,或者许可证的第3版,或者 (由您选择)任何更高版本。 这个程序的发布是希望它能有用, 但没有任何保证;甚至没有 适销性为特定目的的适销性或适合性见 GNU通用公共许可证了解更多详细信息。 你应该收到GNU通用公共许可证的副本 还有这个节目。如果没有,请参见http://www.gnu.org/licenses/" rel="nofollow">http://www.gnu.org/licenses/>; |