基因组分析从样本与实验设计、测序数据质控、比对参考基因组、变异检测与过滤,到功能注释与可视化几大步骤;掌握合适工具与质量阈值,能把噪声降到最低,确保结果在科研或临床场景中既可靠又可复现。

为什么要把基因组分析拆成步骤来看?
用费曼方法来说,我会先把复杂的事情拆成简单的小块。想象一下你在拼一个复杂的拼图:先把边框摆好(样本与设计),再把颜色相近的拼在一起(测序与预处理),然后确认每块都稳固(比对与过滤),最后看整幅图表达了什么(注释与解读)。每一步都很重要,错一个地方,后面都会受到影响。
总体流程概览(一句话版)
- 实验设计与样本准备(确定目标、对照、批次)
- 测序与原始数据获取(FASTQ)
- 数据预处理:质控(QC)、去接头、去低质reads
- 比对到参考基因组,生成排序后的BAM
- 后处理:去PCR重复、基线校正(例如重校准碱基质量)
- 变异检测(SNP/indel、结构变异、拷贝数等)
- 变异过滤与注释,功能优先级评估
- 可视化、解读与报告
第一部分:实验设计与质量控制(QC)
你要先想清楚研究问题:是做群体遗传学(需大样本、低覆盖可行)、还是临床诊断(需高覆盖、严格验证)、还是肿瘤体细胞突变检测(需肿瘤—对照配对、高深度)?
关键点
- 样本量与统计力量:群体研究通常需要成百到上千个样本;临床诊断可单样本深度优先。
- 覆盖度(Depth):常规WGS建议30×左右做种系变异;临床或低频变异检测建议50–100×或更高。
- DNA质量:降解或污染会导致比对率下降与假阳性。
- 批次效应:不同文库、测序批次会引入系统性误差,设计时需随机化或在分析中校正。
第二部分:测序技术与输出格式
现在常见的测序技术大致分两类:短读长(Illumina)和长读长(PacBio, Oxford Nanopore)。短读擅长低错误率与深度覆盖,长读便于解决复杂结构变异与拼接重复区。
常见数据格式
- FASTQ:原始读段,包含序列与质量值。
- BAM/CRAM:比对后的二进制文件,包含位置信息与比对质量;CRAM更节省空间。
- VCF:变异调用结果,记录SNP/indel和注释附加信息。
第三部分:数据预处理(QC 与清洗)
这里是把“原材料”变成“可用材料”。常用步骤是先做质量检查,再去接头和低质量碱基。
常见工具与步骤
- FastQC:快速查看序列质量、GC分布、接头污染。
- Trimmomatic / fastp:去接头、裁剪低质量尾端、过滤短reads。fastp速度快并带报告。
简单建议参数(不必死抠):去除接头,最低平均质量Phred20,保留长度≥50。不同项目可放宽或收紧。
第四部分:比对(Alignment)
把短读段放回参考基因组的“位置”。正确的比对是后续变异检测的基石。
常见比对工具
- BWA-MEM:短读比对首选(Illumina);速度与精度平衡良好。
- Bowtie2:速度快,适合某些应用。
- Minimap2:长读比对(Nanopore、PacBio)首选。
比对后通常执行:
- 排序(samtools sort)
- 标记或移除PCR重复(Picard MarkDuplicates)
- 索引(samtools index)
- 收集比对统计(samtools flagstat / samtools stats / Picard Collect*)
常用比对质量指标
- 比对率(>90%为良好,取决于样本)
- 重复率(低于10–15%较理想)
- 平均覆盖度与覆盖均匀性(均匀性差需怀疑文库问题)
第五部分:变异检测(Variant Calling)
变异检测有好几类:种系SNP/indel、体细胞变异、结构变异(SV)、拷贝数变异(CNV)。选择工具要根据目标与测序类型。
种系小变异(SNP/indel)
- GATK HaplotypeCaller:广泛用于种系SNP/indel,建议遵循GATK Best Practices。
- FreeBayes、bcftools mpileup/call:替代选择。
GATK流程要点包括:基于BAM的BQSR(Base Quality Score Recalibration)、联合基因型调用(GVCF合并)以减少批次偏差。
体细胞变异(肿瘤)
- Mutect2(GATK)、Varscan2、Strelka2:专门处理肿瘤-对照配对,能识别低等位基因频率(VAF)突变。
- 需要严格评估污染、拷贝数与肿瘤纯度(purity),这些都会影响VAF解释。
结构变异(SV)与拷贝数(CNV)
- Manta、Delly:用于检测插入、缺失、易位等结构变异。
- CNVkit、Control-FREEC、GATK CNV:做拷贝数分析,WES/WGS有不同的策略。
- 长读技术(PacBio/ONT)更容易发现复杂SV。
第六部分:变异过滤与注释
原始VCF通常包含大量假阳性,需要依据质控指标过滤并进行生物学注释。
常见过滤标准
- 深度过滤(DP)过低或过高都要警惕
- 等位基因深度比(AD/DP)用于判断变异真实性
- 质量(QUAL),以及基于机器学习的过滤(如GATK VQSR)
注释工具
- VEP(Ensembl Variant Effect Predictor):注释功能影响、基因位点、频率数据库等
- Annovar:常用的注释与过滤工具
- 还要结合公共数据库:gnomAD、1000 Genomes、ClinVar(用于临床相关性)等
第七部分:功能解读与优先级排序
注释后需要判断哪些变异是“值得关注”的:常见策略包括基于频率、预测工具、保守性、基因与疾病关联性。
- 频率:在人群数据库中频率太高的变异通常不是致病性突变(需结合疾病模型)
- 致病性预测:SIFT、PolyPhen、CADD等工具给出功能预测,但只是参考。
- 基因本身的证据:基因是否与表型相关,是否有动物模型或文献支持。
常用工具速览(表格)
| 步骤 | 工具 | 用途 |
| QC | FastQC, MultiQC | 初步质量评估与整合报告 |
| 清洗 | fastp, Trimmomatic | 去接头与质量裁剪 |
| 比对 | BWA-MEM, Minimap2 | 短读/长读比对 |
| 处理 | samtools, Picard | 排序、去重、索引 |
| 变异检测 | GATK, FreeBayes, Mutect2 | SNP/indel/体细胞变异 |
| SV/CNV | Manta, Delly, CNVkit | 结构变异与拷贝数 |
| 注释 | VEP, Annovar | 功能注释与数据库比对 |
第八部分:质量控制指标与经验阈值
这里给一些常见的参考值(不是铁律,依项目调整):
- WGS种系:平均覆盖30×,覆盖率(>=10×)>95%
- 临床诊断/肿瘤:若目标基因面板或临床WES,常见100×甚至更高
- 比对率:>90%
- 重复率:<15%较好,过高需排查文库问题
- 呼叫变异的最小等位基因频率(VAF):常规种系≥20%,肿瘤检测可降至1–5%(需深度和技术验证)
第九部分:可复现性、流程管理与部署
把流程写成脚本/工作流,再用容器和版本控制,比如:
- 工作流系统:Snakemake、Nextflow,便于并行与重跑
- 容器化:Docker或Singularity,保证环境一致
- 记录:保留参数、软件版本、参考基因组日期等
第十部分:常见陷阱与调试思路(实践经验)
做过几次你就会发现一些“坑”,分享几个真实感受和解决思路:
- 低比对率:检查文库是否被污染(细菌、线粒体),或参考基因组版本不对。
- 高重复率:可能是PCR过量或文库量不足,考虑改文库制备或去重策略。
- 假阳性SNP集中在低复杂度区域:用黑名单或mappability信息过滤。
- 差异结果来自不同软件:多工具互证,采用共识或优先级规则。
进阶话题:长读、甲基化、单细胞与多组学
如果你的研究需要解决更复杂的问题,可以考虑:
- 长读测序:更利于拼接或发现复杂SV,但误差率高,需要纠错(例如HiFi reads)。
- 甲基化测序:可以用Bisulfite-seq或Nanopore直接检测修饰。
- 单细胞基因组/转录组:需要特殊文库与下游方法(如CellRanger,Seurat)来处理稀疏矩阵。
- 多组学整合:把基因组变异与转录组、蛋白质组等结合,能更直接推断功能。
伦理、隐私与数据共享
基因组数据非常敏感。原则上要遵循所在国家/机构的伦理审批、获得知情同意,并对公开数据做去标识化处理。共享时可以考虑受控访问数据库而不是完全公开。
一个简单的实践范例(从FASTQ到VCF的简化步骤)
下面给出一个典型的命令行流程示意(仅示范思路):
- QC:fastp -i sample_R1.fastq.gz -I sample_R2.fastq.gz -o clean_R1.fastq.gz -O clean_R2.fastq.gz
- 比对:bwa mem ref.fa clean_R1.fastq.gz clean_R2.fastq.gz | samtools sort -o sample.sorted.bam
- 去重并索引:picard MarkDuplicates I=sample.sorted.bam O=sample.dedup.bam M=metrics.txt; samtools index sample.dedup.bam
- BQSR(示意):gatk BaseRecalibrator -I sample.dedup.bam -R ref.fa –known-sites dbsnp.vcf -O recal.table
- 变异检测:gatk HaplotypeCaller -R ref.fa -I sample.recal.bam -O sample.g.vcf -ERC GVCF
- 联合分型与过滤:按GATK Best Practices合并gVCF并进行VQSR或硬过滤
如何学会、如何练手
最好的方式是做一个小项目:拿公开数据(例如1000 Genomes或ENCODE的示例),从头跑一遍流程并记录每一步的参数与结果对比。实验与分析结合起来,学得更快。
建议的学习路径
- 先理解概念:格式(FASTQ/BAM/VCF)、比对与变异调用原理
- 跟着教程跑一遍:使用小数据集,快速看到结果
- 读文献与官方Best Practices(如GATK文档)
- 逐步尝试更复杂的情况:肿瘤样本、WES与WGS、SV检测
最后一点真实感的提醒
做基因组分析有时候像是解谜:你以为找到答案了,结果又会出现新的问题。保留怀疑精神,重复实验、交叉验证、写好记录,会让你的结论更可信。哦,对了,偶尔备份数据,别等出事才意识到失误。