前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >快速寻找同源基因---自动化运行OrthoMCL

快速寻找同源基因---自动化运行OrthoMCL

作者头像
阿凡亮
发布2020-04-14 14:20:16
1K0
发布2020-04-14 14:20:16
举报
文章被收录于专栏:生物信息学生物信息学

OrthoMCL (http://orthomcl.org/orthomcl/) 是现在用的最多的一款来找直系同源基因(Orthologs)以及旁系同源基因 (Paralog) 的软件。同源基因 (homolog) 的区别见下图,这里就不细说了。

OrthoMCL 的最新版本是2013年7月公布的v2.0版本,已经很久没更新过了。根据官网的教程至少得十多步才能完成整个运行流程,包括Mysql数据库配置、修改OrthoMCL配置文件、转换序列格式、过滤、比对、解析结果和聚类等步骤,特别麻烦。 OrthoMCL Pipeline (https://github.com/apetkau/orthomcl-pipeline) 可以很好的帮我们解决这个痛点。Pipeline安装有点复杂,但是安装完成后,使用就炒鸡方便了!!!

安装OrthoMCL Pipeline

直接去github下载zip安装包,或者直接使用git命令下载

git clone https://github.com/apetkau/orthomcl-pipeline.git

安装perl依赖包

使用cpan或者cpanm安装依赖包

$ cpanm BioPerl DBD::mysql DBI Parallel::ForkManager YAML::Tiny Set::Scalar Text::Table Exception::Class Test::Most Test::Warn Test::Exception Test::Deep Moose SVG Algorithm::Combinatorics

安装blast,MCL及OrthoMCL

安装好2.2.26版本的BLAST (blastall, formatdb, 不是blast+, 更旧的版本可能不会正确运行) 下载编译安装MCL (http://www.micans.org/mcl/src/mcl-latest.tar.gz) 下载编译安装OrthoMCL (http://orthomcl.org/common/downloads/software/v2.0/orthomclSoftware-v2.0.9.tar.gz) 确保blastall, formatdb, MCl和OrthoMCL都加入了环境变量

检查依赖的软件是否安装齐全

出现下面的提示则安装齐全了

$ perl scripts/orthomcl-pipeline-setup.pl
Checking for Software dependencies...
Checking for OthoMCL ... OK
Checking for formatdb ... OK
Checking for blastall ... OK
Checking for mcl ... OK
Wrote new configuration to orthomcl-pipeline/scripts/../etc/orthomcl-pipeline.conf
Wrote executable file to orthomcl-pipeline/scripts/../bin/orthomcl-pipeline
Please add directory orthomcl-pipeline/scripts/../bin to PATH

Orthomcl-pipeline配置文件

配置文件在orthomcl-pipeline-installed-path/etc/orthomcl-pipeline.conf

blast:
 F: 'm S'
 b: 100000
 e: 1e-5
 v: 100000
filter:
 max_percent_stop: 20
 min_length: 10
mcl:
 inflation: 1.5
path:
 blastall: '/usr/bin/blastall'
 formatdb: '/usr/bin/formatdb'
 mcl: '/usr/local/bin/mcl'
 orthomcl: '/home/aaron/software/orthomcl/bin'
scheduler: fork
split: 4

根据计算资源可以把split改为合适的数字,split类似于运行的线程数

配置数据库

需要安装好MySQL数据库 1. 如果之前已经创建过orthomcl数据库,可以用下面的perl脚本进行配置

$ perl scripts/orthomcl-setup-database.pl --user orthomcl --password orthomcl --host localhost --database orthomcl --outfile orthomcl.conf --no-create-database
Connecting to database orthmcl on host orthodb with user orthomcl ...OK
Config file **orthomcl.conf** created.

2. 如果之前没有配置过orthomcl数据库,需要先以root运行mysql,创建orthomcl用户

$ mysql -u root -p
Enter password:
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, CREATE VIEW, INDEX, DROP on *.* to orthomcl;  #创建用户并授权
mysql> set password for orthomcl@localhost = password('orthomcl');  #设置用户密码
mysql> quit;

当用户创建后,再用perl脚本配置

$ perl scripts/orthomcl-setup-database.pl --user orthomcl --password orthomcl --host localhost --database orthomcl --outfile orthomcl.conf
Connecting to mysql and creating database **orthmcldb** on host orthodb with user orthomcl ...OK
database orthmcl created ...OK
Config file **orthomcl.conf** created.

脚本会生成orthomcl.conf文件,这个文件之后就不用坐任何修改了。

测试

$ perl t/test_pipeline.pl -m orthomcl.conf -s fork -t /tmp
Test using scheduler forkTESTING NON-COMPLIANT INPUT
TESTING FULL PIPELINE RUN 3
README:
Tests case of one gene (in 1.fasta and 2.fasta) not present in other files.
ok 1 - Expected matched returned groups file
...

出现上面的信息说明安装成功了!!!

运行

$ ./bin/orthomcl-pipeline
Error: no input-dir definedUsage: orthomcl-pipeline -i [input dir] -o [output dir] -m [orthmcl config] [Options]
...

可以加上—nocompliant就可以不显示没必要的提示信息了

$ ./bin/orthomcl-pipeline -i ~/test_data/zbl -o ~/test_data/zbl-out -m orthomcl.conf --nocompliant

zbl文件夹里面放入fasta格式的蛋白序列文件,一个基因组一个文件,例如genome1.fasta, genome2.fasta, 文件后缀名必需是.fasta。zbl-out文件夹里面是所有的结果,包括聚类完成的groups文件,orthologs文件,inparalogs文件以及coorthologs文件。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-10-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生物信息学 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档