Biopython简介
Biopython简介详细操作教程
Biopython是主要用于生物信息学领域的开源python工具。 本教程介绍了Biopython软件包的基础知识,生物信息学概述,序列操作和绘图,种群遗传学,聚类分析,基因组分析,与BioSQL数据库的连接,最后总结了一些应用示例。
面向读者
本教程是为有志于使用python作为编程工具的生物信息学编程领域的专业人士而准备的。本教程旨在使您熟悉Biopython概念及其各种功能。
前提条件
在继续本教程中给出的各种类型的概念之前,假定读者已经了解生物信息学。 除此之外,如果读者对Python编程有一定的了解,这将非常有助于学习本教程。
教程目录
编号 |
主题 |
描述 |
1 |
Biopython简介 |
Biopython是Python的最大,最受欢迎的生物信息学软件包。它包含许多用于常规生物信息学任务的不同子模块。 |
2 |
Biopython安装 |
介绍如何在计算机上安装Biopython。 它非常容易安装,不超过五分钟就可以安装完成。 |
3 |
Biopython简单应用程序 |
演示如何创建一个简单的Biopython应用程序来解析生物信息学文件并打印内容。 |
4 |
Biopython序列 |
Biopython序列是指一系列字母,用于表示生物体的蛋白质,DNA或RNA。 |
5 |
Biopython高级序列操作 |
在本章中将讨论Biopython提供的一些高级序列功能。 |
6 |
Biopython序列I/O操作 |
Biopython提供了一个模块Bio.SeqIO来分别从文件读取序列和向文件写入序列(任何流)。 |
7 |
Biopython序列比对 |
序列比对是按特定顺序排列两个或多个序列(DNA,RNA或蛋白质序列)以识别它们之间相似区域的过程。 |
8 |
Biopython BLAST简介 |
BLAST代表基本本地路线搜索工具(Basic Local Alignment Search Tool),它用于找出生物学序列之间的相似区域。 |
9 |
Biopython Entrez数据库 |
Entrez是NCBI提供的在线搜索系统。 通过集成的全局查询,它支持布尔运算符和字段搜索,从而可以访问几乎所有已知的分子生物学数据库。 |
10 |
Biopython PDB模块 |
介绍如何使用Bio.PDB模块来操纵多肽结构。 PDB(蛋白质数据库)包括蛋白质-蛋白质,蛋白质-DNA,蛋白质-RNA复合物。 |
11 |
Biopython Motif对象 |
序列基序是由可能不相邻的氨基酸的三维排列形成的,Biopython提供了一个单独的模块Bio.motifs来访问序列基序的功能。 |
12 |
Biopython BioSQL模块 |
BioSQL是一种通用数据库模式,主要用于存储所有RDBMS引擎的序列及其相关数据。 |
13 |
Biopython人口遗传学 |
种群遗传学在进化论中起着重要作用,它分析物种之间以及同一物种内两个或多个个体之间的遗传差异。 |
14 |
Biopython基因组分析 |
基因组是完整的DNA集合,包括其所有基因。 基因组分析是指研究单个基因及其在遗传中的作用。 |
15 |
Biopython表型微阵列 |
表型定义为生物体针对特定化学物质或环境表现出的可观察的特征或性状。Biopython提供了一个模块Bio.Phenotype来分析表型数据。 |
16 |
Biopython绘图 |
演示如何绘制序列,Matplotlib是一个Python绘图库,可产生多种格式的高质量图形。pyLab属于matplotlib的模块,它将数字模块numpy与图形绘制模块pyplot结合在一起。 |
17 |
Biopython聚类分析 |
聚类分析会将一组对象归为同一组。这个概念主要用于数据挖掘,统计数据分析,机器学习,模式识别,图像分析,生物信息学等。 |
18 |
Biopython机器学习 |
Biopython提供了一组有用的算法来进行有监督的机器学习。如果使用适当的机器学习算法,可以从这些数据中提取很多有用的信息。 |
19 |
Biopython测试技术 |
Biopython具有广泛的测试脚本,可以在不同条件下对软件进行测试,以确保软件没有错误。 |
Biopython是Python的最大,最受欢迎的生物信息学软件包。它包含许多用于常规生物信息学任务的不同子模块。它由Chapman和Chang开发,主要使用Python编写。它还包含C代码,以优化软件的复杂计算部分。它可以在Windows,Linux,Mac OS X等操作系统上运行。
基本上,Biopython是python模块的集合,这些模块提供处理DNA,RNA和蛋白质序列操作的功能,例如DNA字符串的反向互补,寻找蛋白质序列中的基序等。它提供了很多解析器,可以读取所有主要的遗传数据库 如GenBank,SwissPort,FASTA等,以及在python环境中运行其他流行的生物信息学软件/工具(如NCBI BLASTN,Entrez等)的包装程序/接口。它具有兄弟项目,例如:BioPerl,BioJava和BioRuby。
1. 特征
Biopython是可移植的,清晰的并且具有易于学习的语法。下面列出了一些突出的功能 -
解释性的,交互式和面向对象的。
支持FASTA,PDB,GenBank,Blast,SCOP,PubMed/Medline,ExPASy相关格式。
处理序列格式的选项。
管理蛋白质结构的工具。
BioSQL-SQL表的标准集合,用于存储序列以及功能和注释。
访问在线服务和数据库,包括NCBI服务(Blast,Entrez,PubMed)和ExPASY服务(SwissProt,Prosite)。
访问本地服务,包括Blast,Clustalw,EMBOSS。
2. 目标
Biopython的目标是通过python语言提供对生物信息学的简单,标准和广泛的访问。下面列出了Biopython的特定目标 -
提供对生物信息学资源的标准化访问。
高质量,可重用的模块和脚本。
可在集群代码,PDB,NaiveBayes和Markov模型中使用的快速数组操作。
基因组数据分析。
3. 好处
Biopython只需很少的代码,并具有以下优点 -
提供用于聚类的微阵列数据类型。
读取和写入Tree-View类型的文件。
支持用于PDB解析,表示和分析的结构数据。
支持在Medline应用程序中使用的日记数据。
支持BioSQL数据库,该数据库是所有生物信息学项目中广泛使用的标准数据库。
通过提供将生物信息学文件解析为特定格式的记录对象或序列加特征的通用类的模块,来支持解析器开发。
清除基于食谱样式的文档。
4. 样本案例研究
让我们来看看一些用例(种群遗传学,RNA结构等),并尝试了解Biopython在该领域如何发挥重要作用:
人口遗传学
种群遗传学是对种群内遗传变异的研究,涉及对种群中基因和等位基因频率随时间和空间变化的检查和建模。Biopython提供了用于种群遗传学的Bio.PopGen模块。该模块包含收集经典种群遗传学信息的所有必要功能。
RNA结构DNA,RNA和蛋白质是我们生活中必不可少的三个主要生物大分子。蛋白质是细胞的主力军,并作为酶发挥重要作用。DNA(脱氧核糖核酸)被认为是细胞的“蓝图”。它携带了细胞生长,吸收营养和繁殖所需的所有遗传信息。RNA(核糖核酸)在细胞中充当“ DNA影印件”。
Biopython提供了Bio.Sequence对象,这些对象代表核苷酸,DNA和RNA的构建基块。