构建单拷贝同源蛋白系统发育树,一条命令提序列!

由于基因重组与基因突变的存在,利用16S rRNA构建的系统发育树通常不够可靠,而使用基于全基因组的单拷贝同源蛋白系统发育树则不会存在这方面的困扰,16S rRNA序列也就1500个碱基左右,而全基因组单拷贝同源蛋白可达十几二十万个氨基酸长度,建树用它,绝对准!一条命令出序列,建树再也不难~

  1. 前期准备

首先需要从NCBI下载fasta格式的基因组序列,之后到rast服务器完成注释,然后下载fasta格式的蛋白序列作为准备,需要注意的是,各基因组蛋白序列的文件名不可以有空格,推荐使用_代替空格。RAST服务器

  1. 调用软件

计算单拷贝同源蛋白需要调用proteinortho6,因此要确保服务器已安装proteinortho6并可正常调用。proteinortho6下载
序列比对使用muscle,因此muscle也是必须的。MUSCLE下载

  1. 一条命令出序列

将蛋白序列文件夹上传到服务器,同目录下运行脚本即可。

python3 protein_ortho.py <file_name> <bacteria_num>

<file_name>是蛋白序列文件夹的名称
<bacteria_num>是文件夹内序列来自多少个细菌
例如:

python3 protein_ortho.py Nature 30

proteinortho6使用了diamond比对,比proteinortho6速度快了很多,实测使用30个细菌的基因组,脚本执行完成共用时10分钟左右,具具体运行时间与服务器配置有关。

##构建单拷贝同源蛋白
##在linux下运行,需要安装proteinortho与muscle,proteinortho安装地址:http://www.bioinf.uni-leipzig.de/Software/proteinortho/,muscle地址:http://www.drive5.com/muscle/。
##作者:刘宁华  山东大学青岛校区  1039438318@qq.com

#1. 处理序列文本
def chuli_seq(in_file_0):
	import os
	path = os.getcwd()
	path = path + "/" + in_file_0 + "/"
	files = os.listdir(path)
	file_path = []
	for file in files:
		file_path_1 = path + file
		file_path.append(file_path_1)
	for file in file_path:
		cmd = "sed -i 's/ /_/g' " + file
		os.system(cmd)
	return print("1. 序列预处理")


#2. 运行同源比对命令
def protein_ortho(file):
	import os
	cmd = "proteinortho6.pl -project=" + file + "_work -e=1e-5 -cov=50 -identity=50 -clean " + file + "/*.faa"
	os.system(cmd)
	return print("2. 完成同源比对")


#3. 比对结果处理,提取单拷贝蛋白结果
### 构建基因组系统发育的方法 构建基因组的系统发育是研究物种进化关系和基因变异的重要工具。以下将详细介绍如何使用生物信息学工具或编程方法来实现这一目标。 #### 工具选择与流程概述 IQ-TREE 是一款高效、准确的系统发育构建软件,广泛应用于基因组学研究中[^1]。此外,基于扩增子数据的系统发育构建可以结合 IQ-TREE、MUSCLE 和 USEARCH10 等工具完成数据处理和分析[^2]。对于基因组数据,通常需要经过以下步骤:挑选序列、多序列比对、选择建模型、构建系统发育以及进行可靠性检验[^4]。 #### 数据准备 首先,从基因组数据中取可用于构建系统发育序列信息。这些序列可以是拷贝直系同源基因(Single-Copy Orthologous Genes, SCO)、核糖体RNA基因(如16S rRNA)或其他保守区域。如果使用的是SNP数据,可以通过VCF文件直接进行处理[^1]。 #### 多序列比对 多序列比对是系统发育分析的关键步骤之一。可以使用 MUSCLE 或 MAFFT 等工具对序列进行比对。例如,使用 MUSCLE 进行比对的命令如下: ```bash muscle -in input.fasta -out aligned.fasta ``` #### 模型选择与构建 在完成多序列比对后,选择合适的进化模型是确保系统发育准确性的重要环节。IQ-TREE 供了自动模型选择功能,并能快速生成系统发育。以下是使用 IQ-TREE 构建系统发育的示例命令: ```bash iqtree -s aligned.fasta -m TEST -bb 1000 ``` 其中 `-s` 参数指定输入的比对文件,`-m TEST` 表示让软件自动测试并选择最佳模型,`-bb 1000` 表示进行 1000 次自举检验以评估节点支持度。 #### 的可视化 构建好的系统发育可以通过 R 包 `ggtree` 进行美化和展示。以下是一个简的 R 脚本示例: ```R library("ape") library("ggtree") # 读取文件 x <- read.tree("output.treefile") # 绘制进化 p <- ggtree(x, layout="circular") + geom_tiplab(size=3) + theme_tree2() # 显示结果 print(p) ``` #### 注意事项 在构建系统发育时,需要注意数据的质量控制和模型的选择。系统发育有基因和物种两种类型,它们分别表示基因分离的时间和物种分歧的时间,具有不同的拓扑结构。此外,系统发育构建应结合具体的生物学问题,合理选择方法和工具[^5]。 ---
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值