2. 基因组学基础与突变图谱

各位好,欢迎来到第二章。上回我们聊了多组学的大框架,今天得把地基夯实——基因组学。

说白了,你要是连DNA上那些突变都看不懂,后面甲基化、转录组、蛋白组就没法串联。我个人的经验是,突变图谱是一切多组学整合的锚点。没有这个锚,你后面所有关联分析都是在空中楼阁。

2.1 DNA测序技术演进——从Sanger到长读长

你想想看,我们怎么知道一个人的基因组序列?靠测序。

技术演进大致分三个阶段:

技术世代 代表平台 读长 通量 主要用途
第一代 Sanger测序 ~800 bp 低 验证、小片段
第二代(NGS) Illumina(HiSeq/NovaSeq) 150 bp × 2 极高 WGS、WES、RNA-seq
第三代(长读长) PacBio HiFi / Oxford Nanopore 10-100 kb 中高 结构变异、重复区域、组装

我记得刚入行那会儿,大家还在用Sanger做候选基因验证,一个样本只能看几个位点。现在的NGS,一个flowcell跑下来就是几百个样本的WES数据。嗯,这里要注意:读长越短,比对和变异检测的难度越大,尤其是在重复区域。

实践建议:在Biomarker发现项目中,我建议初期先用WES做探索,锁定候选区域后再用靶向NGS(Panel)做大样本验证。成本控制很重要,别一上来就全基因组。

2.2 突变类型概述——SNP、Indel、CNV

测序拿到了序列,接下来就是找差异。基因组突变,按照尺度从小到大,主要分三类:

2.2.1 SNP(单核苷酸多态性)

单个碱基的替换。这是最常见的突变类型。比如一个位点本来是A,在肿瘤样本里变成了T。

  • 同义突变:不改变氨基酸——往往是“旁观者”
  • 错义突变:改变氨基酸——可能影响蛋白功能
  • 无义突变:提前引入终止密码子——通常致病性高

2.2.2 Indel(插入/缺失)

长度在1-50 bp左右的插入或缺失。Indel容易引起移码,破坏性比SNP更大。

我曾经在一个结直肠癌项目里发现一个2 bp的缺失,直接导致MSH2基因移码。如果不做Indel检测,单纯看SNP就会漏掉这个关键位点。

2.2.3 CNV(拷贝数变异)

大于1 kb的片段拷贝数增加(扩增)或减少(缺失)。

  • 比如EGFR扩增在肺癌里很常见
  • PTEN缺失在前列腺癌里是关键事件
核心观点:SNP、Indel、CNV不是互相独立的。一个CNV的区域内部可以存在大量SNP,CNV断点附近也常有Indel。构建突变图谱时,这三种信号要联合解读,别孤立分析。

2.3 突变图谱构建的“标准”流程

我个人习惯把流程分成四步:质控→比对→变异检测→注释。每一步都有坑,我踩过的坑现在跟你说说。

2.3.1 原始数据质控

拿到FASTQ文件后,第一步一定是跑FastQC。我见过太多人直接跳过这步去比对,结果下游变异检测全是假阳性。

# 常用质控命令
fastqc sample_R1.fastq.gz sample_R2.fastq.gz -o qc_reports/

# 低质量碱基和接头修剪(推荐fastp)
fastp -i sample_R1.fastq.gz -I sample_R2.fastq.gz \
      -o cleaned_R1.fastq.gz -O cleaned_R2.fastq.gz \
      --cut_front --cut_tail --detect_adapter_for_pe

嗯,这里要注意:多组学整合项目里,DNA测序的质控标准要比RNA-seq更严。因为变异检测对碱基质量极其敏感,Q30比例建议高于85%。

2.3.2 比对到参考基因组

最常用的工具是BWA-MEM。比对后的BAM文件还要做标记重复(MarkDuplicates)和碱基质量重校准(BQSR)。

# BWA-MEM比对
bwa mem -t 8 -M hg38.fa sample_R1.fastq.gz sample_R2.fastq.gz > sample.sam

# SAM转BAM、排序、标记重复
samtools view -bS sample.sam | samtools sort -o sample_sorted.bam
picard MarkDuplicates I=sample_sorted.bam O=sample_dedup.bam M=metrics.txt

# GATK碱基质量重校准(BQSR)
gatk BaseRecalibrator -R hg38.fa -I sample_dedup.bam --known-sites dbsnp.vcf -O recal.table
gatk ApplyBQSR -R hg38.fa -I sample_dedup.bam --bqsr-recal-file recal.table -O sample_recal.bam
我曾经踩过的坑:BQSR这一步需要提供已知的sites(比如dbsnp)。如果你用了一个不完整的dbsnp版本,重校准后的数据反而更差。建议用GATK官方的bundle包,别随便从网上下载个老旧版本。

2.3.3 变异检测

对于SNP和Indel,当前的金标准是GATK HaplotypeCaller。CNV检测通常需要单独工具。

  • GATK HaplotypeCaller:联合检测SNP和Indel,通过局部重新组装获取更准确的的变异
  • Mutect2:肿瘤-正常配对样本的体细胞突变检测,会在GATK4里
  • CNVkit / GATK gCNV:专门用于CNV检测
  • Manta / Delly:用于检测结构变异(SV)
# GATK4 HaplotypeCaller 单样本模式
gatk HaplotypeCaller -R hg38.fa -I sample_recal.bam \
  -O sample.g.vcf.gz -ERC GVCF

# 联合基因分型(多样本时)
gatk CombineGVCFs -R hg38.fa -V sample1.g.vcf.gz -V sample2.g.vcf.gz -O cohort.g.vcf.gz
gatk GenotypeGVCFs -R hg38.fa -V cohort.g.vcf.gz -O raw_variants.vcf.gz

2.3.4 变异注释

VCF文件里只有位置和基因型,我们要问:“这个突变是错义吗?MAF多少?是否有已知致病性?”

我常用ANNOVAR或VEP来做功能注释,再用gnomAD / ClinVar 做群体频率和致病性标注。

# ANNOVAR 注释示例
table_annovar.pl raw_variants.vcf humandb/ \
  -buildver hg38 \
  -out annotated_variants \
  -remove -protocol refGene,exac03,clinvar_20240926 \
  -operation gx,f,f -nastring . -vcfinput

2.4 核心知识图谱——构建流程总览

我把上述流程画了一张图,方便你记忆整体脉络。这是一个端到端的构建流程:从FASTQ出发,到你可以直接用于多组学整合的注释后VCF。

基因组突变图谱构建流程 1. 样本DNA测序(FASTQ) 2. 原始数据质控(FastQC/fastp) 3. 比对(BWA-MEM)+ 预处理 4. 变异检测(SNP/Indel/CNV) 5. 硬过滤 / VQSR 6. 功能注释(ANNOVAR/VEP) 7. 突变图谱(注释后VCF/MAF) 💡 关键补充 • 软clip和嵌合read在比对时 必须由BAM预处理处理掉 • CNV推荐使用 GATK gCNV 或 CNVkit 做read-depth分析 • SV的检测还需要单独工具 (Manta / Delly / Wham)

2.5 构建突变图谱的注意事项

流程清楚了,我再唠叨几句实战中容易翻车的地方。

2.5.1 批次效应

我在一个大型队列项目(3000+样本)里处理过两台Illumina NovaSeq的测序数据。同样的样本被分到不同flowcell里跑,结果变异检测在某个基因区域出现明显的批次差异。

解决办法:变异检测阶段尽量用joint calling(联合基因分型),不要每个样本单独call完后合并。GATK的GenotypeGVCFs就是为此设计的。

2.5.2 过滤策略

VCF里原始变异很多是噪音。我习惯先用硬过滤(Hard Filtering)去除明显质量问题。

# GATK推荐SNP硬过滤脚本摘要
SNP_FILTER_EXPR="QD < 2.0 || MQ < 40.0 || FS > 60.0 || SOR > 3.0 || MQRankSum < -12.5 || ReadPosRankSum < -8.0"
一句话总结过滤原则:宁可漏掉1个真阳性,也不要留下3个假阳性。下游多组学整合时,假阳性的破坏力是几何级的。

2.5.3 多组学整合的结构化输出

我强烈建议把最终突变图谱组织成适合下游分析的格式。MAF(Mutation Annotation Format)是TCGA的标准,也是后续R包maftools、GenVisR直接能读入的格式。

比如一张MAF表格头几列大致是这样:

Hugo_Symbol Chromosome Start_Position Variant_Classification Variant_Type Reference_Allele Tumor_Seq_Allele2 t_depth t_alt_count
TP53 17 7673802 Missense_Mutation SNP C T 150 78
EGFR 7 55249071 In_Frame_Deletion DEL CTT -- 200 112

嗯,这一章差不多了。从DNA测序原理到突变类型,再到完整的构建流程和注意事项,我们已经搭建了突变图谱的骨架。下一块内容我们就要用这个骨架去和转录组、蛋白组做整合了。记住:干净的突变图谱,是一切多组学关联分析的起点。