849. 液体活检技术前沿¶
一句话概述:液体活检 = 从血液等体液中检测肿瘤DNA(ctDNA)/RNA/蛋白/外泌体,实现无创癌症筛查、疗效监测和耐药检测——生信是数据分析的核心。
核心知识点速查表¶
| 分析物 | 来源 | 检测方法 | 应用 |
|---|---|---|---|
| ctDNA | 肿瘤释放的游离DNA | NGS/ddPCR | 突变检测、MRD |
| ctRNA | 循环肿瘤RNA | RT-qPCR/NGS | 基因表达 |
| CTC | 循环肿瘤细胞 | CellSearch/scRNA | 转移监测 |
| 外泌体 | 细胞分泌的囊泡 | 蛋白组/RNA-seq | 早期诊断 |
| cfDNA甲基化 | 游离DNA甲基化 | WGBS/TAPS | 癌种溯源 |
| cfDNA片段组学 | DNA片段特征 | WGS+ML | 早期筛查 |
一、ctDNA分析流程¶
# ctDNA检测的生信流程
# 1. 超深度测序比对
bwa mem -t 16 ref.fa \ # BWA比对
ctdna_R1.fq.gz ctdna_R2.fq.gz | \
samtools sort -o aligned.bam
# 2. 分子标签(UMI)去重 —— 液体活检关键步骤!
# UMI = Unique Molecular Identifier
# 每个原始DNA分子有唯一标签
# 通过UMI可以区分真实变异和测序错误
fgbio GroupReadsByUmi \ # 按UMI分组
-i aligned.bam \
-o grouped.bam \
-s adjacency # 分组策略
fgbio CallMolecularConsensusReads \ # 生成共识序列
-i grouped.bam \
-o consensus.bam \
-M 3 # 最少3条支持reads
# 3. 超低频变异检测(VAF低至0.01%)
# 传统GATK无法检测如此低频的变异
# 使用专用工具:
# - Mutect2 (with --f1r2-artifact-prior)
# - VarDict
# - Strelka2
gatk Mutect2 \
-R ref.fa \
-I consensus.bam \ # UMI共识BAM
--panel-of-normals pon.vcf \ # 正常面板(去除背景噪音)
--af-of-alleles-not-in-resource 0.0000025 \ # 超低频设置
-O ctdna_variants.vcf
# 4. 克隆造血(CH)过滤 —— 避免假阳性
# 老年人血液中的体细胞突变不一定来自肿瘤
# 需要配对白细胞(buffy coat)数据过滤CH变异
二、MRD(微小残留病灶)检测¶
# 肿瘤知情(Tumor-informed) MRD检测
# 原理:
# 1. 先对肿瘤组织做WES/WGS,找到肿瘤特异性突变
# 2. 设计针对这些突变的定制化Panel
# 3. 术后定期抽血,检测这些突变是否存在
# 4. 如果检测到 → 肿瘤可能复发(MRD阳性)
# 生信关键:在极低频率(0.001%VAF)下可靠检测变异
# 需要:
# - UMI分子标签纠错
# - 背景噪音模型(Panel of Normals)
# - 统计模型判断信号vs噪音
def mrd_detection(tumor_mutations, plasma_reads):
"""MRD检测统计模型(简化版)"""
detected = 0 # 检测到的突变数
total = len(tumor_mutations) # 总监测突变数
for mut in tumor_mutations:
# 在血浆reads中搜索该突变
support = count_supporting_reads( # 支持reads数
plasma_reads, mut)
background = estimate_background( # 背景噪音
plasma_reads, mut)
if support > background * 3: # 信号>3倍噪音
detected += 1
# MRD状态判断
if detected >= 2: # 至少2个突变检测到
return "MRD阳性 - 建议密切随访"
else:
return "MRD阴性"
三、cfDNA片段组学¶
# cfDNA片段特征分析(DELFI方法)
# 不需要看具体突变,通过DNA片段大小分布模式检测癌症
import numpy as np # 数值计算
def fragment_analysis(bam_file):
"""分析cfDNA片段大小分布"""
import pysam # BAM文件处理
sizes = [] # 片段大小列表
bam = pysam.AlignmentFile(bam_file, "rb")
for read in bam:
if read.is_proper_pair and not read.is_duplicate:
frag_size = abs(read.template_length) # 片段大小
if 100 <= frag_size <= 500: # 过滤异常值
sizes.append(frag_size)
sizes = np.array(sizes)
# 计算片段特征
features = {
'median_size': np.median(sizes), # 中位片段大小
'short_ratio': np.mean(sizes < 150), # 短片段比例
'mono_ratio': np.mean((sizes > 140) & # 单核小体比例
(sizes < 200)),
'di_ratio': np.mean((sizes > 290) & # 双核小体比例
(sizes < 400)),
}
# 癌症患者特征:短片段比例增加,整体片段更短
return features
四、FDA批准的液体活检产品¶
Guardant360 CDx (Guardant Health)
→ 73基因panel,用于泛实体瘤基因分型
→ FDA批准的伴随诊断
FoundationOne Liquid CDx (Foundation Medicine)
→ 324基因panel,用于多种癌症类型
→ FDA批准用于指导治疗决策
Galleri (GRAIL)
→ 多癌早检测(50+癌症类型)
→ 基于cfDNA甲基化特征
→ 2024年获得FDA突破性疗法认定
五、面试高频问题¶
Q: 液体活检和组织活检有什么区别? A: 液体活检无创(抽血),可重复采样监测动态变化,但灵敏度较低(ctDNA占比可能<0.1%)。组织活检有创但信号更强。
Q: ctDNA检测的最大挑战是什么? A: 超低频变异检测——ctDNA可能只占总cfDNA的0.01%,需要UMI分子标签纠错和背景噪音过滤才能可靠检测。
Q: MRD检测有什么临床意义? A: 术后早期发现肿瘤残留/复发,比影像学检查早数月。MRD阳性可以指导辅助治疗决策。
速查表¶
# 液体活检分析工具链
UMI处理: fgbio, UMI-tools
低频变异: Mutect2, VarDict, Strelka2
CH过滤: 配对白细胞数据+CH数据库
MRD分析: 定制化Panel + 统计模型
片段组学: DELFI, cfDNApipe
甲基化: TAPS, MethylSeq
# 关键概念
VAF: 变异等位基因频率(Variant Allele Frequency)
UMI: 唯一分子标识符(Unique Molecular Identifier)
MRD: 微小残留病灶(Minimal Residual Disease)
CH: 克隆造血(Clonal Hematopoiesis)
ctDNA: 循环肿瘤DNA(circulating tumor DNA)
cfDNA: 游离DNA(cell-free DNA)