跳到主要内容

04 maftools 肿瘤突变分析

maftools 是肿瘤外显子组(WES)分析里最常用的 R 包。它读入 MAF 格式的体细胞突变文件,一套函数出完整的突变景观图、驱动基因分析、突变签名等。

本章用 maftools 自带的 TCGA LAML(急性髓系白血病,193 个样本)数据演示。

MAF 格式

MAF(Mutation Annotation Format)是 TCGA 定义的标准格式,每行一个突变,关键列:

含义
Hugo_Symbol基因名
Chromosome / Start_Position / End_Position基因组坐标
Variant_ClassificationMissense / Nonsense / Frame_Shift 等
Variant_TypeSNP / INS / DEL
Tumor_Sample_Barcode样本 ID
Protein_Change蛋白变化(如 p.R882H)

从 VCF 转 MAF 用 vcf2maf.pl(需要 VEP 注释)。

真实示例

配套脚本 genome04_maftools_sci.R 输出 6 张图:

Rscript scripts/genomics/genome04_maftools_sci.R

每张图看什么

MAF summary 图 1:MAF 总览 dashboard。左上:每个样本的突变数;右上:变异分类分布;左下:变异类型;右下:SNV 碱基替换类型。一张图看完整个队列的突变概况。

Oncoplot 图 2:Oncoplot(突变景观图)。每列一个样本,每行一个基因(按突变频率排序)。颜色代表突变类型。这是肿瘤基因组文章里最核心的一张图 —— 一眼看出哪些基因在队列里反复突变。

LAML 里 FLT3、DNMT3A、NPM1 是 top 3 驱动基因,和文献完全一致。

Lollipop DNMT3A 图 3:DNMT3A 的 lollipop 图。横轴是蛋白结构域,每个棒棒糖代表一个突变位点,高度代表该位点在队列里出现的次数。R882 是 DNMT3A 的热点突变,在 AML 里反复出现。

Somatic interactions 图 4:基因间的共突变 / 互斥关系。绿色 = 共现(co-occurrence),粉色 = 互斥(mutual exclusivity)。互斥的基因对可能在同一条通路上(突变一个就够了)。

TMB distribution 图 5:肿瘤突变负荷(TMB)分布。AML 是低 TMB 肿瘤(中位 ~10 个突变/样本),和黑色素瘤、肺癌(几百个)形成对比。TMB 是免疫治疗响应的预测指标之一。

Ti/Tv 图 6:转换/颠换比(按样本)。Ti/Tv 偏离正常范围可能提示特定的突变过程(如 APOBEC 活性会增加 C>T 转换)。

核心代码

library(maftools)

laml <- read.maf(
maf = system.file("extdata", "tcga_laml.maf.gz", package = "maftools"),
clinicalData = system.file("extdata", "tcga_laml_annot.tsv", package = "maftools")
)

plotmafSummary(laml, dashboard = TRUE)
oncoplot(laml, top = 10)
lollipopPlot(laml, gene = "DNMT3A", AACol = "Protein_Change")
somaticInteractions(laml, top = 15)

套到自己数据上

read.maf() 的路径换成自己的 MAF 文件即可。如果只有 VCF:

# VCF -> MAF(需要 VEP + vcf2maf)
vcf2maf.pl --input-vcf somatic.vcf.gz --output-maf somatic.maf \
--tumor-id TUMOR --normal-id NORMAL --ref-fasta hg38.fa \
--vep-path /path/to/vep --vep-data /path/to/vep_cache

下载资源

参考资源

静态文件

离线资料下载

手册 HTML / PDF 已在后台预生成,点击后直接下载网站静态资源。