Linux系统如何用mr贝叶斯
Linux系统如何用mr贝叶斯详细介绍
在 Linux 系统中使用 MrBayes(贝叶斯系统发育分析软件)的步骤如下,涵盖安装、输入文件准备、运行分析和结果处理:
一、安装 MrBayes
方法 1:通过包管理器安装(推荐)
- Ubuntu/Debian 系:bash
updatemrbayes
- CentOS/RHEL 系(需启用 EPEL 源):bash
dnf mrbayes - 通过 Conda(跨平台):bash
conda conda-forge mrbayes
方法 2:手动编译(适用于最新版或自定义需求)
- 从MrBayes 官网下载最新源码(
.tar.gz格式)。 - 解压并进入目录:bash
mrbayes-X.X.X.tar.gzmrbayes-X.X.X
- 编译安装(需 GCC 等工具):bash
./configure
二、准备输入文件
MrBayes 需要Nexus 格式的序列文件(后缀通常为.nex或.nxs),内容需包含:
- 数据块(
BEGIN DATA;):序列数据,如 DNA / 蛋白质序列。 - 树块(可选,
BEGIN TREES;):若有先验树可加入。
示例输入文件(data.nex):
nexus
#NEXUSBEGIN DATA;
DIMENSIONS NTAX=3 NCHAR=10; # 3个分类单元,10个字符
FORMAT DATATYPE=DNA MISSING=? GAP=-; # 数据类型为DNA,缺失值用?表示
MATRIX
Taxon1 ATGCGATATA
Taxon2 ATGCGATGTA
Taxon3 ATGCGCTATA
;
END;
三、运行 MrBayes 分析
1. 启动 MrBayes
bash
mrbayes
2. 加载数据文件
mrbayes
execute /路径/到/数据文件.nex; # 例如:execute data.nex;
3. 设置分析参数(根据需求调整)
- 基础参数:
mrbayeslset NST=2 RATE=GAMMA; # 设置核苷酸替代模型(如NST=2为HKY+G)prset aamodelpr=fixed(blosum); # 若为蛋白质数据,指定氨基酸模型
mcmc ngen=1000000; # 运行MCMC采样,指定代数(默认100万代)
NST:核苷酸替代模型(0=JC69,1=F81,2=HKY,6=GTR 等)。RATE:位点速率异质性(如GAMMA表示伽马分布,PROPORTION表示不变位点)。ngen:MCMC 运行代数,需足够大以确保收敛(通常 10 万到 1000 万代)。
- 高级参数(可选):
mrbayesset autoclose=yes; # 分析完成后自动退出sump burnin=25; # 设置燃烧期比例(默认25%)
4. 运行 MCMC 采样
mrbayes
mcmc; # 执行分析,过程中会输出每代的似然值和参数
- 运行时,MrBayes 会启动 4 条链(1 条冷链 + 3 条热链),定期输出进度。
- 建议检查
PSRF值(潜在尺度缩减因子),当接近 1 时表明链收敛(sump命令查看)。
5. 分析结果
- 查看收敛性:mrbayes
sump; # 显示各参数的统计量和PSRF值 - 生成共识树:mrbayes
sumt burninfrac=0.25; # 忽略前25%燃烧期的树,生成多数规则共识树 - 退出 MrBayes:mrbayes
quit;
四、结果文件位置
运行后会生成以下文件(位于当前工作目录):
数据文件.nex.log:日志文件(包含似然值、参数等)。数据文件.nex.t:保存的树文件(可通过TreeView或FigTree可视化)。数据文件.nex.con:共识树文件。
五、命令行非交互模式(批量运行)
若需批量运行,可编写一个 MrBayes 脚本(如analysis.mb),内容如下:
mrbayes
execute data.nex;lset NST=6 RATE=GAMMA;
mcmc ngen=2000000;
sump;
sumt;
quit;
然后通过命令行执行:
bash
mrbayes analysis.mb
六、注意事项
- 输入文件格式:严格遵循 Nexus 语法,避免中文路径或特殊字符。
- 模型选择:根据数据类型(DNA / 蛋白质)选择合适的替代模型(如 GTR+G 常用于 DNA 数据)。
- 计算资源:大数据集需较长运行时间,可使用集群或增加 CPU 核心(MrBayes 支持多线程,通过
set nthreads=4;设置)。 - 可视化工具:用FigTree查看树文件,用Tracer分析日志文件的收敛性。
通过以上步骤,即可在 Linux 系统中完成 MrBayes 的贝叶斯系统发育分析。如需更详细的模型参数说明,可参考官方手册(man mrbayes或官网文档)。