基因融合检测(STAR-Fusion/Arriba/FusionCatcher)¶
一句话概述¶
基因融合检测是利用STAR-Fusion、Arriba、FusionCatcher等专用工具,从RNA-seq数据中识别由染色体重排(易位、倒位、缺失等)产生的融合基因(如BCR-ABL1、EML4-ALK),这些融合基因是多种癌症的驱动事件和重要治疗靶点。
核心知识点表格¶
| 知识点 | 说明 |
|---|---|
| 基因融合 | 两个不同基因由于染色体重排连接在一起形成新的嵌合基因 |
| 融合转录本 | 融合基因转录产生的嵌合mRNA |
| Spanning reads | 横跨融合断点的reads |
| Split reads | 部分比对到一个基因、部分比对到另一个基因的reads |
| Junction reads | 直接覆盖融合连接点的reads |
| STAR-Fusion | 基于STAR比对器的融合检测工具 |
| Arriba | 高灵敏度融合检测工具,集成可视化 |
| FusionCatcher | 综合融合检测工具,多策略组合 |
| CTAT | Cancer Transcriptome Analysis Toolkit |
| 断点(Breakpoint) | 融合基因中两个原始基因的连接位点 |
| 阅读框(Reading Frame) | 融合后是否保持蛋白编码框 |
| 伴侣基因 | Fusion partner,参与融合的两个基因 |
| 已知融合 | 数据库记录的已知致癌融合(如COSMIC/ChimerDB) |
各步骤详解¶
第一步:基因融合基本概念¶
白话解释: 想象两本不同的书,由于装订错误,把第一本书的前半部分和第二本书的后半部分装订在了一起。这本"错书"就是融合基因——它由两个原本独立的基因的片段拼接而成。在癌症中,这种"错误拼接"可能产生一个新的蛋白质,具有异常的功能(如持续激活的激酶),驱动癌细胞无限增殖。
技术细节:
融合基因产生机制: | 机制 | 说明 | 例子 | |------|------|------| | 染色体易位 | 两条染色体交换片段 | BCR-ABL1 (CML) | | 染色体内倒位 | 同一染色体内片段倒转 | EML4-ALK (NSCLC) | | 间质缺失 | 两基因间的序列丢失 | TMPRSS2-ERG (前列腺癌) | | 染色体碎裂 | 大规模染色体重排 | 复杂融合 | | 转座子插入 | 转座元件介导的重排 | 罕见 |
RNA-seq检测融合基因的reads类型: 1. Split reads(分裂reads):一条read的一部分比对到基因A,另一部分比对到基因B,read本身横跨融合断点 2. Spanning reads(跨越reads):一对paired-end reads,一条比对到基因A,另一条比对到基因B 3. Discordant pairs:mate对比对到不同基因组位置
临床重要的融合基因:
| 融合基因 | 疾病 | 靶向药 |
|---|---|---|
| BCR-ABL1 | CML | 伊马替尼(Gleevec) |
| EML4-ALK | NSCLC | 克唑替尼 |
| ROS1融合 | NSCLC | 克唑替尼 |
| RET融合 | 甲状腺癌/NSCLC | 塞尔帕替尼 |
| NTRK融合 | 多种实体瘤 | 拉罗替尼 |
| FGFR融合 | 胆管癌 | 培米加替尼 |
| TMPRSS2-ERG | 前列腺癌 | 诊断标记 |
| PML-RARA | APL | ATRA |
第二步:数据准备与质控¶
白话解释: 融合检测需要高质量的RNA-seq数据。理想情况下使用paired-end测序、足够的测序深度(>50M reads),并确保数据质量良好。测序深度不足会导致漏检低表达的融合转录本。
# ===== 数据质控 =====
# FastQC质量检查
fastqc -t 8 -o fastqc_output/ sample_R1.fastq.gz sample_R2.fastq.gz
# MultiQC汇总
multiqc fastqc_output/ -o multiqc_report/
# Fastp质量过滤(推荐用于融合检测前)
fastp \
--in1 sample_R1.fastq.gz \
--in2 sample_R2.fastq.gz \
--out1 clean_R1.fastq.gz \
--out2 clean_R2.fastq.gz \
--thread 8 \
--qualified_quality_phred 20 \
--length_required 50 \
--detect_adapter_for_pe \
--html fastp_report.html
# ===== 参考基因组准备 =====
# 下载参考基因组和注释
wget https://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_44/GRCh38.primary_assembly.genome.fa.gz
wget https://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_44/gencode.v44.annotation.gtf.gz
gunzip *.gz
# STAR索引构建(STAR-Fusion和Arriba都需要STAR比对)
STAR --runMode genomeGenerate \
--runThreadN 16 \
--genomeDir star_index/ \
--genomeFastaFiles GRCh38.primary_assembly.genome.fa \
--sjdbGTFfile gencode.v44.annotation.gtf \
--sjdbOverhang 150 # read长度 - 1
第三步:STAR-Fusion融合检测¶
白话解释: STAR-Fusion是最广泛使用的融合检测工具之一。它利用STAR比对器的嵌合比对功能——STAR在比对reads时会记录那些不能完整比对到一个基因的reads(嵌合比对),STAR-Fusion再从这些嵌合比对中提取融合证据。
技术细节: STAR-Fusion工作流程: 1. 使用STAR比对,启用嵌合比对输出(chimeric reads) 2. 从Chimeric.out.junction文件提取候选融合 3. 过滤:去除假阳性(如readthrough、paralogs、低可信度融合) 4. 注释:与已知融合数据库比对
# ===== STAR-Fusion安装 =====
# Docker方式(推荐)
docker pull trinityctat/starfusion:latest
# Conda方式
conda install -c bioconda star-fusion
# ===== 下载CTAT资源库 =====
# STAR-Fusion需要专门的参考资源库
wget https://data.broadinstitute.org/Trinity/CTAT_RESOURCE_LIB/GRCh38_gencode_v44_CTAT_lib_Oct292023.plug-n-play.tar.gz
tar -xzf GRCh38_gencode_v44_CTAT_lib_Oct292023.plug-n-play.tar.gz
# ===== 运行STAR-Fusion =====
# 方法1:从FASTQ直接运行(推荐)
STAR-Fusion \
--left_fq clean_R1.fastq.gz \
--right_fq clean_R2.fastq.gz \
--genome_lib_dir ctat_genome_lib_build_dir/ \
--output_dir star_fusion_output/ \
--CPU 16 \
--FusionInspector validate \
--examine_coding_effect \
--denovo_reconstruct
# 方法2:从已有STAR比对结果运行
# 先用STAR比对(需要特殊参数)
STAR \
--runThreadN 16 \
--genomeDir star_index/ \
--readFilesIn clean_R1.fastq.gz clean_R2.fastq.gz \
--readFilesCommand zcat \
--outSAMtype BAM SortedByCoordinate \
--outReadsUnmapped None \
--twopassMode Basic \
--chimSegmentMin 12 \
--chimJunctionOverhangMin 8 \
--chimOutJunctionFormat 1 \
--alignSJDBoverhangMin 10 \
--alignMatesGapMax 100000 \
--alignIntronMax 100000 \
--alignSJstitchMismatchNmax 5 -1 5 5 \
--chimMultimapScoreRange 3 \
--chimScoreJunctionNonGTAG -4 \
--chimMultimapNmax 20 \
--chimNonchimScoreDropMin 10 \
--peOverlapNbasesMin 12 \
--peOverlapMMp 0.1 \
--alignInsertionFlush Right \
--alignSplicedMateMapLmin 30 \
--alignSplicedMateMapLminOverLmate 0 \
--chimOutType Junctions WithinBAM SoftClip
# 然后运行STAR-Fusion
STAR-Fusion \
--genome_lib_dir ctat_genome_lib_build_dir/ \
-J Chimeric.out.junction \
--output_dir star_fusion_output/
# ===== 查看结果 =====
# 主要输出文件:star-fusion.fusion_predictions.tsv
head star_fusion_output/star-fusion.fusion_predictions.tsv
# 列:FusionName, JunctionReadCount, SpanningFragCount,
# est_J, est_S, SpliceType, LeftGene, LeftBreakpoint,
# RightGene, RightBreakpoint, JunctionReads, SpanningFrags, ...
第四步:Arriba融合检测¶
白话解释: Arriba是另一个高灵敏度的融合检测工具,以检出率高和假阳性率低著称。它还内置了漂亮的融合可视化功能,可以直接生成融合基因的结构示意图。
# ===== Arriba安装 =====
conda install -c bioconda arriba
# 或下载预编译版本
wget https://github.com/suhrig/arriba/releases/download/v2.5.1/arriba_v2.5.1.tar.gz
tar -xzf arriba_v2.5.1.tar.gz
# ===== 运行Arriba(与STAR联合) =====
# Arriba提供了一个封装脚本,同时运行STAR和Arriba
arriba/run_arriba.sh \
star_index/ \
gencode.v44.annotation.gtf \
GRCh38.primary_assembly.genome.fa \
arriba/database/blacklist_hg38_GRCh38_v2.5.0.tsv.gz \
arriba/database/known_fusions_hg38_GRCh38_v2.5.0.tsv.gz \
arriba/database/protein_domains_hg38_GRCh38_v2.5.0.gff3 \
16 \
clean_R1.fastq.gz clean_R2.fastq.gz
# 或手动分步运行
# 步骤1:STAR比对
STAR \
--runThreadN 16 \
--genomeDir star_index/ \
--readFilesIn clean_R1.fastq.gz clean_R2.fastq.gz \
--readFilesCommand zcat \
--outSAMtype BAM Unsorted \
--outSAMunmapped Within \
--outBAMcompression 0 \
--chimSegmentMin 10 \
--chimOutType WithinBAM SoftClip \
--chimJunctionOverhangMin 10 \
--chimScoreDropMax 30 \
--chimScoreJunctionNonGTAG 0 \
--chimScoreSeparation 1 \
--alignSJstitchMismatchNmax 5 -1 5 5 \
--chimSegmentReadGapMax 3 \
--outStd BAM_Unsorted | \
# 步骤2:Arriba检测融合
arriba \
-x /dev/stdin \
-o fusions.tsv \
-O fusions.discarded.tsv \
-a GRCh38.primary_assembly.genome.fa \
-g gencode.v44.annotation.gtf \
-b arriba/database/blacklist_hg38_GRCh38_v2.5.0.tsv.gz \
-k arriba/database/known_fusions_hg38_GRCh38_v2.5.0.tsv.gz \
-t arriba/database/known_fusions_hg38_GRCh38_v2.5.0.tsv.gz \
-p arriba/database/protein_domains_hg38_GRCh38_v2.5.0.gff3
# ===== Arriba可视化 =====
# 先排序BAM
samtools sort -@ 8 -o Aligned.sortedByCoord.out.bam Aligned.out.bam
samtools index Aligned.sortedByCoord.out.bam
# 绘制融合基因图
draw_fusions.R \
--fusions=fusions.tsv \
--output=fusions.pdf \
--alignments=Aligned.sortedByCoord.out.bam \
--annotation=gencode.v44.annotation.gtf \
--cytobands=arriba/database/cytobands_hg38_GRCh38_v2.5.0.tsv \
--proteinDomains=arriba/database/protein_domains_hg38_GRCh38_v2.5.0.gff3
# ===== 查看结果 =====
# fusions.tsv包含高可信融合
# fusions.discarded.tsv包含被过滤的候选
head -n5 fusions.tsv
# 列:gene1, gene2, strand1, strand2, breakpoint1, breakpoint2,
# site1, site2, type, direction1, direction2, split_reads1,
# split_reads2, discordant_mates, coverage1, coverage2,
# confidence, reading_frame, tags, ...
第五步:FusionCatcher融合检测¶
白话解释: FusionCatcher使用多种比对策略(Bowtie2、STAR、BLAT等)来寻找融合证据,并与多个数据库交叉验证。它比较"保守",注重降低假阳性率,适合发现高可信度融合。
# ===== FusionCatcher安装 =====
conda install -c bioconda fusioncatcher
# 下载参考数据
fusioncatcher-build -g homo_sapiens -o fusioncatcher_data/
# ===== 运行FusionCatcher =====
fusioncatcher \
-d fusioncatcher_data/ \
-i clean_R1.fastq.gz,clean_R2.fastq.gz \
-o fusioncatcher_output/ \
-p 16 \
--skip-blat # 可选,跳过BLAT加速
# ===== 查看结果 =====
# 主要结果文件
cat fusioncatcher_output/final-list_candidate-fusion-genes.txt
# 按可信度从高到低排列
# GFF格式输出(可用于IGV可视化)
cat fusioncatcher_output/final-list_candidate-fusion-genes.GFF
第六步:多工具结果整合与过滤¶
白话解释: 单个工具都有可能产生假阳性或漏检真融合。使用多个工具然后取交集(被两个或以上工具检测到的融合),可以大大提高结果可靠性。同时需要结合读数支持和已知融合数据库进行过滤。
# ===== R中整合多工具融合检测结果 =====
# 读取各工具结果
# STAR-Fusion
sf <- read.table("star_fusion_output/star-fusion.fusion_predictions.tsv",
header = TRUE, sep = "\t", comment.char = "")
sf$fusion_id <- sf$X.FusionName
sf$tool <- "STAR-Fusion"
sf$junction_reads <- sf$JunctionReadCount
sf$spanning_reads <- sf$SpanningFragCount
# Arriba
arriba <- read.table("fusions.tsv", header = TRUE, sep = "\t", comment.char = "")
arriba$fusion_id <- paste0(arriba$X.gene1, "--", arriba$gene2)
arriba$tool <- "Arriba"
arriba$junction_reads <- arriba$split_reads1 + arriba$split_reads2
arriba$spanning_reads <- arriba$discordant_mates
# FusionCatcher
fc <- read.table("fusioncatcher_output/final-list_candidate-fusion-genes.txt",
header = TRUE, sep = "\t")
fc$fusion_id <- paste0(fc$Gene_1_symbol.5end_fusion_partner.,
"--", fc$Gene_2_symbol.3end_fusion_partner.)
fc$tool <- "FusionCatcher"
fc$junction_reads <- fc$Spanning_unique_reads
fc$spanning_reads <- fc$Spanning_pairs
# 统一格式
normalize_fusion_name <- function(name) {
genes <- sort(unlist(strsplit(name, "--")))
paste(genes, collapse = "--")
}
all_fusions <- list(
`STAR-Fusion` = sapply(sf$fusion_id, normalize_fusion_name),
Arriba = sapply(arriba$fusion_id, normalize_fusion_name),
FusionCatcher = sapply(fc$fusion_id, normalize_fusion_name)
)
# 取交集
library(VennDiagram)
venn.diagram(
x = all_fusions,
filename = "fusion_venn.png",
fill = c("red", "blue", "green"),
alpha = 0.5,
cat.fontsize = 12
)
# 至少被2个工具检测到的融合
all_names <- unlist(all_fusions)
fusion_counts <- table(all_names)
consensus_fusions <- names(fusion_counts[fusion_counts >= 2])
cat("Consensus fusions (≥2 tools):\n")
print(consensus_fusions)
# ===== 过滤策略 =====
# 1. 读数支持过滤:junction reads ≥ 2, spanning reads ≥ 2
# 2. 已知融合优先:检查COSMIC/ChimerDB/FusionGDB
# 3. 阅读框检查:in-frame融合更可能有生物学意义
# 4. 黑名单过滤:去除已知假阳性(如平行基因读穿readthrough)
# 5. 基因表达过滤:低表达基因的融合可能是噪声
# 已知融合数据库检查
known_fusions <- read.table("known_fusions_database.txt", header = TRUE)
is_known <- consensus_fusions %in% known_fusions$fusion_name
cat("Known fusions:", sum(is_known), "/", length(consensus_fusions), "\n")
第七步:融合基因可视化与验证¶
白话解释: 检测到融合基因后,需要可视化来展示融合结构(两个基因各保留了哪些部分、断点在哪里),并评估是否需要实验验证(RT-PCR、FISH等)。
# ===== R中融合可视化 =====
# 使用chimeraviz包
BiocManager::install("chimeraviz")
library(chimeraviz)
# 从STAR-Fusion结果创建融合对象
fusions <- import_starfusion(
"star_fusion_output/star-fusion.fusion_predictions.tsv",
genome_version = "hg38"
)
# 概览图(所有融合的circos图)
plot_circle(fusions)
# 单个融合的详细视图
# 基因结构图
plot_fusion(fusions[[1]],
bamfile = "Aligned.sortedByCoord.out.bam",
edb = EnsDb.Hsapiens.v86::EnsDb.Hsapiens.v86)
# 融合转录本图
plot_fusion_transcript(fusions[[1]], edb = EnsDb.Hsapiens.v86::EnsDb.Hsapiens.v86)
# ===== IGV手动验证 =====
# 在IGV中加载BAM文件,跳转到断点位置
# 查看是否有split reads和discordant pairs支持
# 检查reads的mapping quality和base quality
# ===== 实验验证方法 =====
# 1. RT-PCR验证
# 设计引物跨越融合断点
# 正向引物在5'基因,反向引物在3'基因
# PCR产物测序确认断点序列
# 2. FISH(荧光原位杂交)
# 用于验证基因组水平的重排
# 3. Western Blot
# 检测融合蛋白的表达(需要针对融合特异的抗体)
# ===== 设计RT-PCR引物验证融合 =====
# 从融合序列中提取断点两侧序列
# 使用Primer3设计跨断点引物
# 示例:EML4-ALK融合
# 5'端引物(在EML4区域): FORWARD_PRIMER
# 3'端引物(在ALK区域): REVERSE_PRIMER
# PCR产物应为融合特异性的(正常样本无产物)
# 使用bedtools提取融合区域序列
bedtools getfasta -fi GRCh38.fa -bed fusion_breakpoints.bed -fo fusion_sequences.fa
第八步:融合基因功能注释与临床意义¶
# ===== 功能注释 =====
# 检查融合蛋白的结构域保留情况
# 5'基因保留了什么功能域?3'基因保留了什么?
# 使用Pfam/InterPro注释蛋白域
library(biomaRt)
ensembl <- useMart("ensembl", dataset = "hsapiens_gene_ensembl")
# 查询融合伴侣基因的蛋白域
gene_domains <- getBM(
attributes = c("hgnc_symbol", "pfam", "pfam_start", "pfam_end", "interpro_description"),
filters = "hgnc_symbol",
values = c("EML4", "ALK"),
mart = ensembl
)
# ===== 临床意义注释 =====
# 检查已知药物靶点
# OncoKB, CIViC, COSMIC融合数据库
# oncokb.org - 提供Level of Evidence
# civicdb.org - 社区驱动的证据数据库
# 检查阅读框
# In-frame融合:可能产生功能性嵌合蛋白
# Out-of-frame融合:通常产生截短蛋白或无义介导的mRNA降解(NMD)
# ===== 融合基因表达定量 =====
# 利用spanning和junction reads估计融合转录本的丰度
# 与野生型转录本的丰度比较
实战命令(可复制)¶
完整融合检测pipeline¶
#!/bin/bash
# ============================================
# Gene Fusion Detection Pipeline
# ============================================
# 配置
THREADS=16
GENOME="GRCh38.primary_assembly.genome.fa"
GTF="gencode.v44.annotation.gtf"
STAR_INDEX="star_index/"
CTAT_LIB="ctat_genome_lib_build_dir/"
R1="clean_R1.fastq.gz"
R2="clean_R2.fastq.gz"
SAMPLE="sample01"
OUTDIR="fusion_results/${SAMPLE}"
mkdir -p $OUTDIR/{star_fusion,arriba,summary}
# === 1. STAR比对(共用) ===
STAR --runThreadN $THREADS \
--genomeDir $STAR_INDEX \
--readFilesIn $R1 $R2 \
--readFilesCommand zcat \
--outSAMtype BAM SortedByCoordinate \
--outSAMunmapped Within \
--chimSegmentMin 10 \
--chimOutType Junctions WithinBAM SoftClip \
--chimJunctionOverhangMin 10 \
--chimScoreDropMax 30 \
--chimScoreJunctionNonGTAG 0 \
--chimScoreSeparation 1 \
--alignSJstitchMismatchNmax 5 -1 5 5 \
--chimSegmentReadGapMax 3 \
--chimMultimapNmax 20 \
--twopassMode Basic \
--outFileNamePrefix $OUTDIR/star_
# === 2. STAR-Fusion ===
STAR-Fusion \
--genome_lib_dir $CTAT_LIB \
-J $OUTDIR/star_Chimeric.out.junction \
--output_dir $OUTDIR/star_fusion/ \
--examine_coding_effect
# === 3. Arriba ===
arriba \
-x $OUTDIR/star_Aligned.sortedByCoord.out.bam \
-o $OUTDIR/arriba/fusions.tsv \
-O $OUTDIR/arriba/fusions.discarded.tsv \
-a $GENOME \
-g $GTF \
-b arriba/database/blacklist_hg38_GRCh38_v2.5.0.tsv.gz \
-k arriba/database/known_fusions_hg38_GRCh38_v2.5.0.tsv.gz \
-p arriba/database/protein_domains_hg38_GRCh38_v2.5.0.gff3
# Arriba可视化
samtools index $OUTDIR/star_Aligned.sortedByCoord.out.bam
draw_fusions.R \
--fusions=$OUTDIR/arriba/fusions.tsv \
--output=$OUTDIR/arriba/fusions.pdf \
--alignments=$OUTDIR/star_Aligned.sortedByCoord.out.bam \
--annotation=$GTF
# === 4. 汇总 ===
echo "=== STAR-Fusion Results ===" > $OUTDIR/summary/fusion_summary.txt
wc -l $OUTDIR/star_fusion/star-fusion.fusion_predictions.tsv >> $OUTDIR/summary/fusion_summary.txt
echo "=== Arriba Results ===" >> $OUTDIR/summary/fusion_summary.txt
wc -l $OUTDIR/arriba/fusions.tsv >> $OUTDIR/summary/fusion_summary.txt
echo "Pipeline complete for $SAMPLE"
面试常问点¶
Q1: STAR-Fusion和Arriba的检测原理有什么不同?¶
A: 两者都依赖STAR比对器的嵌合reads输出,但后处理策略不同。STAR-Fusion主要基于Chimeric.out.junction文件中的split reads和spanning reads进行融合候选提取和过滤,依赖CTAT资源库的注释信息。Arriba直接分析BAM文件中的嵌合比对(chimeric alignments + supplementary alignments),使用更复杂的过滤策略,包括对reads比对质量、基因组结构(如tandem duplications)的精细检查。基准测试显示Arriba在灵敏度上通常略优于STAR-Fusion,且假阳性更少。
Q2: Split reads和Spanning reads有什么区别?哪个更可靠?¶
A: Split reads是单条read横跨融合断点,一部分比对到基因A,另一部分比对到基因B——直接提供了断点位置的碱基级别证据。Spanning reads是一对paired-end reads中一条比对到基因A、另一条比对到基因B——只提供两个基因有连接的证据,但不能精确定位断点。Split reads更可靠且信息更丰富。通常要求junction/split reads ≥ 2才认为融合可信。
Q3: 如何降低融合检测的假阳性率?¶
A: (1) 使用多个工具取交集(consensus approach);(2) 要求足够的reads支持(junction ≥ 2, spanning ≥ 2);(3) 使用黑名单过滤(已知假阳性如readthrough转录本、paralog mapping artifacts);(4) 过滤低mapping quality的reads;(5) 检查断点是否在已知剪接位点上(更可能是真实的);(6) 排除线粒体基因和核糖体基因相关的融合;(7) 检查是否在正常样本中也检测到(germline变异vs somatic)。
Q4: 为什么RNA-seq比WGS更适合检测融合基因?¶
A: (1) RNA-seq直接检测表达的融合转录本,证明融合确实被转录——WGS检测到的基因组断点可能不产生表达的融合转录本;(2) RNA-seq的reads自然富集在表达区域,对融合检测的有效覆盖度更高;(3) RNA-seq可以同时提供融合转录本的丰度和剪接模式信息。但WGS有优势:不受转录沉默融合的影响,可以检测non-coding区域的重排。
Q5: 什么是readthrough融合?如何区分真融合和readthrough?¶
A: Readthrough fusion是RNA聚合酶"读穿"了一个基因的终止信号,继续转录到下游邻近基因,产生的嵌合转录本。它不涉及基因组重排,在正常组织中也存在。区分方法:(1) 两个基因是否在基因组上相邻且同向——如果是,很可能是readthrough;(2) 检查正常样本是否也有——readthrough在正常样本中常见;(3) 检查是否在已知readthrough列表中。真正的融合通常涉及不同染色体或同一染色体上距离很远的基因。
Q6: 融合检测需要多少测序深度?¶
A: 一般建议 ≥ 50M paired-end reads(2×150bp),对于低表达融合推荐 ≥ 100M。临床级别融合检测(如Archer FusionPlex)使用靶向富集Panel,可以用更少的总reads但在靶区域获得深覆盖。对于已知的高表达融合(如BCR-ABL1),30M reads通常足够。但对新融合发现或低丰度融合(如亚克隆融合),深度越高越好。
易错点¶
1. STAR比对参数不正确导致融合漏检¶
问题: 使用默认STAR参数比对不会输出嵌合reads信息,融合检测工具无法工作。 解决: 必须加上 --chimSegmentMin 10(或12)等嵌合比对参数。不同工具推荐的参数略有不同,建议使用各工具提供的STAR参数模板。
2. 不过滤就报告所有候选融合¶
问题: 工具输出的原始候选可能有上百个,很多是假阳性(平行基因比对错误、readthrough、低质量比对等)。 解决: 严格过滤:junction reads ≥ 2, 去除readthrough, 去除黑名单融合,检查已知融合数据库。仅报告高可信度结果。
3. 参考基因组版本不匹配¶
问题: STAR索引用hg38, 但CTAT资源库用hg19, 导致坐标不兼容。 解决: 确保所有参考文件(基因组、注释、CTAT库、Arriba数据库)使用同一版本(推荐GRCh38/hg38 + GENCODE v44)。
4. 单端测序数据用于融合检测¶
问题: 融合检测严重依赖paired-end信息(spanning reads),单端测序检测能力大幅下降。 解决: 融合检测务必使用paired-end测序数据。如果只有单端,只有split reads可用,假阳性率高、灵敏度低。
5. 忽略融合的阅读框信息¶
问题: 报告了大量out-of-frame融合,但这些通常不产生功能性蛋白(会被NMD降解),临床意义有限。 解决: 在结果中标注阅读框状态(in-frame vs out-of-frame),优先关注in-frame融合。STAR-Fusion的--examine_coding_effect选项可以自动分析。
补充知识¶
融合基因数据库¶
| 数据库 | 特点 | 网址 |
|---|---|---|
| COSMIC Fusions | 肿瘤融合基因金标准 | cancer.sanger.ac.uk |
| ChimerDB 4.0 | 文献/RNA-seq来源的融合 | www.kobic.re.kr/chimerdb/ |
| FusionGDB | 综合融合基因数据库 | cis.hku.hk/FusionGDB |
| Mitelman | 染色体异常数据库 | mitelmandatabase.isb-cgc.org |
| FusionHub | 融合基因功能注释 | fusionhub.persistent.co.in |
DNA层面融合检测工具¶
| 工具 | 数据类型 | 特点 |
|---|---|---|
| Manta | WGS/WES | 结构变异检测含融合 |
| DELLY | WGS | 结构变异发现 |
| GRIDSS | WGS | 高灵敏度SV检测 |
| SvABA | WGS | 组装+比对策略 |
临床融合检测Panel¶
- Archer FusionPlex:靶向RNA panel
- FoundationOne:综合基因组分析(含融合)
- Oncomine Focus Assay:Ion Torrent融合panel
- NanoString nCounter:数字化RNA计数