MSCquartets是一个R包,可以对物种树进行假设检验,基于多物种溯祖模型(Multispecies Coalescent model )推断物种树和物种网络。quartet指的是先将物种分为4个分类{a,b,c,d},对mab|cd; mac|bd; mad|bc进行计数,然后计算qcCF,qcCF计算公式如下:qcCF=(mab|cd; mac|bd; mad|bc)。
多物种溯祖模型看这里:http://www.mselab.cn/detail/104/
MSCquartets的输入是基因树文件,类似下图:
作者在manual中推荐了如下的分析流程:
1.计算基因树集的四重奏计数一致性因子(quartet count concordance factor, qcCF)并制成表格;
2.就一个或多个qcCFs是否与溯祖模型一致对物种树进行假设检验;
3.对假设检验的结果进行作图;
4.通过QDC和WQDC的方式推断物种树;
5.通过NANUQ方法推断leve-1 物种网络。
以示例数据为例尝试分析:
首先安装包:
install.packages("MSCquartets")
library(MSCquartets)
1.读输入gene tree文件,计算qcCFs并生成后续分析所需格式:
gtrees=read.tree(file=system.file("extdata","dataHeliconiusMartin",package="MSCquartets"))
tnames=taxonNames(gtrees) ###得到数据集中所有物种名字
QT=quartetTable(gtrees)
RQT=quartetTableResolved(QT) ##转换所有quartet counts,丢弃unresolved的结果或者将其分到3个resolved计数( mab|cd; mac|bd; mad|bc )中。
#quartetTable(trees, taxonnames = NULL, epsilon = 0, random = 0) 构建qcCFs table:taxonnames可以指定想要分析的物种,例如tnames[1:6]取前6个物种;eposilon是最小可以认为是非0的分支长度;random是如果随机抽取4个分类群的子集,抽取的数目,如果random=0,则使用所有子集。
dataHeliconiusMartin是包自带的袖蝶属的gene tree文件,包含16个物种。RQT数据集内容如下:
共19列,前16列为16个物种,后三列为resolved后的mab|cd; mac|bd; mad|bc的计数.
2.进行假设检验
pTable=quartetTreeTestInd(RQT,"T3")
Qtest=quartetStarTestInd(pTable)
模型有“T1”和“T3”可选,T1是指定拓扑结构的物种树,需输入指定树,如stree="(((t5,t6),t4),((t1,t2),t3));",T3是任意拓扑结构的物种树,不用指定;其他参数见manual。
3.对假设检验结构进行作图
quartetTestPlot(Qtest, "T3", alpha=.000000001, beta=.0001) ##α和β值可调整。
结果图如下:
H0:The qcCF arose from a species quartet tree of specified/unspecified topology under the MSC.
蓝色和棕色表示qcCF与MSC一致,接受原假设;红色和绿色表示拒绝原假设。
4.通过QDC和WQDC的方式推断物种树;
stree=QDC(gtrees)
write.tree(stree)
plot(stree)
stree=WQDC(gtrees)
write.tree(stree)
plot(stree)
结果树如下:
QDC树 WQDC树5.通过NANUQ方法推断leve-1 物种网络。
NANUQ(Qtest,outfile = "NANUQdist", alpha=.0001, beta=.95)
dist=NANUQdist(Qtest, outfile = "NANUQdist")
nn=neighborNet(dist)
plot(nn,"2D")
结果图如下:
对于这个软件涉及到的一些理论模型和更多用法我还有很多不懂,欢迎一起讨论。
reference:
MSCquartets:https://cran.r-project.org/web/packages/MSCquartets/index.html
MSCquartets文章:Rhodes, John A, Hector Baños, Jonathan D Mitchell, and Elizabeth S Allman. ‘MSCquartets 1.0: Quartet Methods for Species Trees and Networks under the Multispecies Coalescent Model in R’. Edited by Russell Schwartz.Bioinformatics37, no. 12 (19 July 2021): 1766–68.https://doi.org/10.1093/bioinformatics/btaa868.
MSCquartets手册:https://cran.r-project.org/web/packages/MSCquartets/MSCquartets.pdf
溯祖理论:http://www.mselab.cn/detail/104/
网友评论