生信相关生物信息学同源性分析

「基因组学」使用OrthoFinder进行直系同源基因分析

2019-02-14  本文已影响270人  xuzhougeng
分析流程

谈论到直系同源基因分析的时候,大部分教程都是介绍OrthoMCL,这是2003年发表的一个工具,目前的引用次数已经达到了3000多,但这个软件似乎在2013年之后就不在更新,而且安装时还需要用到MySQL(GitHub上有人尝试从MySQL转到sqlite)。

而OrthoFinder则是2015年出现的软件,目前已有400多引用。该软件持续更新,安装更加友好,因此我决定使用它来做直系同源基因的相关分析。

OrthoFinder能做什么?

OrthoFinder: solving fundamental biases in whole genome comparisons dramatically improves orthogroup inference accuracy提到,它的优点就是比其他的直系同源基因组的推断软件准确,并且速度还快。

此外他还能分析所提供物种的系统发育树,将基因树中的基因重复事件映射到物种树的分支上,还提供了一些比较基因组学中的统计结果。

如何安装?

最快的方法

OrthoFinder可以通过codna安装,建议为它新建一个虚拟环境

conda create -n orthofinder orthofinder=2.2.7

如果你愿意折腾

你先得安装它的三个依赖工具: MCL, FastME, DIAMOND/MMseqs2/BLAST+

MCL有两种安装方式,最简单的就是用sudo pat-get install mcl, 但是对于大部分人可能没有root权限,因此这里用源代码编译。http://micans.org/mcl/

wget https://www.micans.org/mcl/src/mcl-latest.tar.gz
tar xf mcl-latest.tar.gz
cd mcl-14.137
 ./configure --prefix=~/opt/biosoft/mcl-14.137
make -j 20 && make install 

之后是MMseqs2, 一个蛋白搜索和聚类工具集,相关文章发表在NBT, NC上。GitHub地址为https://github.com/soedinglab/MMseqs2

wget https://github.com/soedinglab/MMseqs2/releases/download/3-be8f6/MMseqs2-Linux-AVX2.tar.gz
tar xzf MMseqs2-Linux-AVX2.tar.gz
mv mmseqs2 ~/opt/biosoft/

最后安装FastME, 这是一个基于距离的系统发育树推断软件。在http://www.atgc-montpellier.fr/fastme/binaries.php下载,上传到服务器

下载
tar xf fastme-2.1.5.tar.gz
cd fastme-2.1.5
./configure --prefix=/opt/biosoft/fastme-2.1.5
make && make install

BLAST+可装可不装,推荐阅读这或许是我写的最全的BLAST教程

以上软件安装之后,都需要将其添加到环境变量中,才能被OrthoFinder调用。

之后在https://github.com/davidemms/OrthoFinder/releases 寻找最近的稳定版本下载到本地,例如OrthoFinder v2.2.7

tar xzf OrthoFinder-2.2.7.tar.gz
OrthoFinder-2.2.7/orthofinder -h

测试使用

在解压缩的OrthoFinder文件目录下有一个 ExampleData, 里面就是用于测试的数据集。

orthofinder -f ExampleData -S mmseqs
# -f 指定文件夹
# -S 指定序列搜索程序,有blast, mmseqs, blast_gz, diamond可用

运行结束后,会在ExampleData里多出一个文件夹,Results_Feb14, 其中Feb14是我运行的日期

直系同源组相关结果文件,将不同的直系同源基因进行分组

直系同源相关文件,分析每个直系同源基因组里的直系同源基因之间关系,结果会在Orthologues_Feb14文件夹下,其中Feb14是日期

比较基因组学的相关结果文件:

高级选项

OrthoFinder默认用mafft进行多序列联配,用fasttree进行进化树推断。多序列联配软件还支持muscle, 进化树推断软件还支持iqtree, raxml-ng, raxml。例如参数可以设置为-M msa -A mafft -T raxml.

并行化参数: -t参数指定序列搜索时的线程数,-a指的是序列搜索后分析的CPU数。

一些重要概念:

Orthogroups, Orthologs 和 Paralogs 这三个概念推荐看图理解。

概念辨析
上一篇 下一篇

猜你喜欢

热点阅读