基于 CAFE 的基因家族回溯与功能注释标准流程
代码可参考 :
https://github.com/ZyYang0124/Myscripts/blob/main/CAFE/extract_cafe_matrix_results.py
一、流程目标
本流程旨在从 CAFE 输出结果 中识别显著扩张或收缩的基因家族,并通过回溯至基因家族构建与功能注释阶段,确定这些家族的成员组成与潜在功能,从而为基因家族进化分析提供生物学解释。
二、总体思路
CAFE 仅输出家族编号(如 OG0000001)及其在各物种中的拷贝变化(ΔCopy),但该编号并不携带生物学意义。
因此,需要通过以下路径逐级回溯:
| |
最终形成一份包含家族变化、成员组成与注释信息的整合表。
三、输入文件
| 文件类型 | 来源 | 主要内容 |
|---|---|---|
Base_change.tab | CAFE 输出 | 每个基因家族在各物种的拷贝数变化(扩张/收缩) |
Orthogroups.tsv | OrthoFinder(或其他聚类软件) | 每个 orthogroup 的成员基因列表(按物种划分) |
注释文件(.tsv / .gff3 / .faa) | 各物种功能注释结果 | 每个基因的功能描述、GO、KEGG 等信息 |
四、标准分析步骤
步骤 1:筛选显著变化的家族
- 从
Base_change.tab中选定目标物种; - 根据数值阈值(如 ΔCopy ≥ 3 为扩张,ΔCopy ≤ -3 为收缩)筛选对应的家族;
- 输出扩张和收缩家族的编号列表。
建议同时记录阈值与物种,以确保结果可复现。
步骤 2:回溯基因家族构成
- 在
Orthogroups.tsv文件中查找上述家族编号; - 提取对应家族的所有成员基因;
- 按物种分列整理,获得“家族–基因ID”对应表;
- 记录每个家族在各物种的成员数量分布。
若多个物种均有显著变化,可分别整理或联合分析。
步骤 3:提取目标物种的基因列表
- 从“家族–基因ID表”中提取目标物种的基因ID;
- 生成每个物种的基因列表文件;
- 确保基因命名与注释文件中一致(如含物种前缀或转录本编号)。
步骤 4:匹配功能注释信息
- 依据基因列表,在物种的注释结果中查找对应条目;
- 提取功能描述、蛋白结构域、GO、KEGG 等注释信息;
- 整理为“基因–功能”对应表;
- 若注释文件来源多样(如 eggNOG、InterProScan 等),建议合并后统一字段。
步骤 5:家族功能整合与生物学解释
将注释结果与家族编号对应;
汇总为以下字段:
Orthogroup 变化方向 ΔCopy 物种 成员数 基因列表 主要功能注释 对家族进行分类(如代谢相关、感知相关、转录调控相关等);
若家族成员功能一致性较高,可直接推断其主要功能;
若差异较大,可进一步检查序列同源性或蛋白结构域。
步骤 6:可选的后续分析
| 分析方向 | 内容 | 工具建议 |
|---|---|---|
| 功能富集 | 基于家族成员的 GO/KEGG 富集分析 | GOATOOLS、KOBAS、clusterProfiler |
| 蛋白结构域统计 | 检查扩张家族中结构域分布模式 | InterProScan、Pfam |
| 系统发育可视化 | 在进化树上标注家族变化情况 | iTOL、ETE3 |
| 关联基因表达 | 检查扩张家族基因的表达特征 | RNA-seq 数据分析 |
五、输出成果
- 显著扩张与收缩家族列表;
- 各家族的成员基因清单;
- 基因功能注释表;
- 家族功能整合汇总表;
- (可选)富集分析与可视化结果。
六、质量控制与注意事项
- 编号一致性 确保 CAFE 与 Orthogroups.tsv 的家族编号完全对应;
- 注释文件准确性 使用统一来源或经过人工校正的注释信息;
- 阈值设定 ΔCopy 的阈值应结合家族大小与树的分支长度调整;
- 功能判定 若功能注释模糊,应辅以 BLAST 比对或结构域信息验证;
- 数据记录 每步操作应记录参数、文件版本和日期,保证溯源性。
七、流程摘要图
| |
