ASTRAL v5.7.1--生信工具110

简介

ASTRAL 输入若干无根基因树,估计一棵无根物种树。 在多物种溯祖模型下具备统计一致性,专门用于处理 ** 不完全谱系排序(ILS)** 问题。

算法核心:寻找物种树,使其与输入基因树集合拥有最多的共享诱导四分树(quartet trees);物种树二分分支的候选集合由 ASTRAL 自动生成(也可手动扩展候选集合,参考官方教程)。 本文档对应 ASTRAL‑III

bash 复制代码
https://github.com/smirarab/ASTRAL        #官网

安装

ASTRAL无需编译安装,Java 程序,跨平台(Linux / Mac / Windows);要求 Java ≥1.6。开发主要在 Linux、Mac 测试,Windows 也可正常使用。

两种获取方式:

  1. 下载 zip 压缩包,解压到本地任意文件夹

  2. git clone github 仓库

    git clone https://github.com/smirarab/ASTRAL.git

  • 直接解压仓库内自带 zip 包;
  • 或者执行 make.sh 构建项目。

运行注意:如果你把 astral.5.7.8.jar 移动到别的路径,必须同步移动 lib 目录,否则运行报错。

安装测试

进入解压后的 ASTRAL 目录,执行测试命令:

复制代码
java -jar astral.5.7.8.jar -i test_data/song_primates.424.gene.tre

运行很快结束;test_data/ 目录下附带更多测试输入文件。

支持任意目录调用,写完整 jar 路径即可:

复制代码
java -jar /path/to/astral/astral.5.7.8.jar

执行运行

无 GUI,全部命令行运行。

查看全部参数

复制代码
java -jar astral.5.7.8.jar

基础运行(输入基因树文件 in.tree)

结果直接打印到标准输出

复制代码
java -jar astral.5.7.8.jar -i in.tree

输出保存到文件(强烈推荐 -o

复制代码
java -jar astral.5.7.8.jar -i in.tree -o out.tre

同时保存运行日志(推荐)

复制代码
java -jar astral.5.7.8.jar -i in.tree -o out.tre 2>out.log

Input 输入

  1. 输入:多棵基因树,Newick 格式
  2. 允许:分类群缺失、多歧分支(未解析分支)、一个物种多个个体
  3. ⚠️分类群名字限制:
    • 名字不能带引号
    • 禁止特殊字符如 ?;下划线 _ 可用。

同一物种多个个体:‑a 映射文件

当一个物种有多个个体测序,使用 -a 指定映射文件,强制同一个物种的个体在物种树上聚在一起。

映射文件每行代表一个物种,二选一格式:

复制代码
species_name [number of individuals] individual_1 individual_2 ...
species_name:individual_1,individual_2,...

注意:物种名称不能和个体名字重名。

Output 输出

输出为 Newick 格式物种树,包含:

  1. 物种树拓扑结构
  2. 分支长度:溯祖单位;仅内部分支;该物种存在多个个体时末端分支也会有长度
  3. 节点支持度:local posterior probabilities(局部后验概率)

还可输出四分树支持度等分支注释,详见官方教程。

可视化常见问题

ASTRAL 输出树末端分支长度为空

  • FigTree:重复打开几次通常可以正常加载;
  • R ape:读取时选择忽略分支长度;
  • 其他工具报错:可使用脚本给末端补虚拟分支长度。

内存调优(大数据集)

当分类群数目很多(>1000),需要给 Java 分配更大内存,内存不能超过机器物理空闲内存。

示例,分配 8G 内存给 ASTRAL:

复制代码
java -Xmx8000M -jar astral.5.7.8.jar -i in.tree

引用

  • Since version 5.1.1, the code corresponds to ASTRAL-III, described in:

    • Zhang, Chao, Maryam Rabiee, Erfan Sayyari, and Siavash Mirarab. 2018. "ASTRAL-III: Polynomial Time Species Tree Reconstruction from Partially Resolved Gene Trees." BMC Bioinformatics 19 (S6): 153. doi:10.1186/s12859-018-2129-y.
  • For multi-individual datasets, the relevant paper to cite is:

    • Rabiee, Maryam, Erfan Sayyari, and Siavash Mirarab. 2019. "Multi-Allele Species Reconstruction Using ASTRAL." Molecular Phylogenetics and Evolution 130 (January). 286--96. doi:10.1016/j.ympev.2018.10.033.
  • Since version 4.10.0, ASTRAL can also compute branch length (in coalescent units) and a measure of support called local posterior probability, described here:

    • Sayyari, Erfan, and Siavash Mirarab. 2016. "Fast Coalescent-Based Computation of Local Branch Support from Quartet Frequencies." Molecular Biology and Evolution 33 (7): 1654--68. doi:10.1093/molbev/msw079
  • ASTRAL can also perform a polytomy test (-t 10 option):

    • Sayyari, Erfan, and Siavash Mirarab. 2018. "Testing for Polytomies in Phylogenetic Species Trees Using Quartet Frequencies." Genes 9 (3): 132. doi:10.3390/genes9030132.
相关推荐
蓝桉柒78 小时前
java判断语句
java·开发语言
Zane19948 小时前
String::compareTo凭什么能当参数传?方法引用的四种形式讲透
java·后端
青山木8 小时前
Hot 100 --- 打家劫舍
java·数据结构·算法·leetcode·动态规划
敲代码的嘎仔8 小时前
28届后端开发-百人小厂面试题
java·后端·面试·程序员·秋招·实习·转正
Bs_MoneyMagnet8 小时前
基于springboot+vue的爱心众筹系统的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring·管理系统
名字还没想好☜9 小时前
Java Collectors.groupingBy 进阶:多级分组、下游收集器与统计聚合一次搞定
java·windows·后端·python·spring
Wang's Blog9 小时前
Java框架快速入门: Spring Security+OAuth2之前端按钮级安全与路由守卫
java·安全·spring
ocean21039 小时前
2025-2026年Java语言及生态面试高频知识点洞察
java·开发语言·面试
2302_1119 小时前
java时间类型
java·开发语言
用户8181870627469 小时前
第25章 Redis集群脑裂实录:一次真实故障复盘
java·后端