谈论到直系同源基因分析的时候,大部分教程都是介绍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是我运行的日期
直系同源组相关结果文件,将不同的直系同源基因进行分组
- Orthogroups.csv:用制表符分隔的文件,每一行是直系同源基因组对应的基因。
- Orthogroups.txt: 类似于Orthogroups.csv,只不过是OrhtoMCL的输出格式
- Orthogroups_UnassignedGenes.csv: 格式同Orthogroups.csv,只不过是物种特异性的基因
- Orthogroups.GeneCount.csv:格式同Orthogroups.csv, 只不过不再是基因名信息,而是以基因数。
直系同源相关文件,分析每个直系同源基因组里的直系同源基因之间关系,结果会在Orthologues_Feb14
文件夹下,其中Feb14
是日期
- Gene_Trees: 每个直系同源基因基因组里的基因树
- Recon_Gene_Trees:使用OrthoFinder duplication-loss coalescent 模型进行发育树推断
- Potential_Rooted_Species_Trees: 可能的有根物种树
- SpeciesTree_rooted.txt: 从所有包含STAG支持的直系同源组推断的STAG物种树
- SpeciesTree_rooted_node_labels.txt: 同上,只不过多了一个标签信息,用于解释基因重复数据。
比较基因组学的相关结果文件:
- Orthogroups_SpeciesOverlaps.csv: 不同物种间的同源基因的交集
- SingleCopyOrthogroups.txt: 单基因拷贝组的编号
- Statistics_Overall.csv:总体统计信息
- Statistics_PerSpecies.csv:分物种统计信息
高级选项
OrthoFinder默认用mafft进行多序列联配,用fasttree进行进化树推断。多序列联配软件还支持muscle, 进化树推断软件还支持iqtree, raxml-ng, raxml。例如参数可以设置为-M msa -A mafft -T raxml
.
并行化参数: -t
参数指定序列搜索时的线程数,-a
指的是序列搜索后分析的CPU数。
一些重要概念:
- Species-specific orthogroup: 一个仅来源于一个物种的直系同源组
- Single-copy orthogroup: 在直系同源组中,每个物种里面只有一个基因。我们会用单拷贝直系同源组里的基因推断物种树以及其他数据分析。
- Unassigned gene: 无法和其他基因进行聚类的基因。
- G50和O50,指的是当你直系同源组按照基因数从大到小进行排列,然后累加,当加入某个组后,累计基因数大于50%的总基因数,那么所需要的直系同源组的数目就是O50,该组的基因树就是G50.
Orthogroups, Orthologs 和 Paralogs 这三个概念推荐看图理解。
概念辨析
网友评论