Skip to content

Fusions检测和SV检测

融合基因是指两个或者多个基因联合起来,一起转录形成一个转录本。显而易见,要进行fusion检测,最好的就是测RNA,其实就是属于RNA-seq了,当然,现在直接测DNA的也不少。但是fusion在项目中往往是和前面的DNA call SNP连在一起的,所有也写在这里。融合基因检测的软件有FusionMapSoapfusestar-fusiontophat-fusion等。当然,也可以通过bwa比对后提取bam文件中的SA等tag,自编脚本进行分析。biostar上也有一篇相关软件整理,可以参考一下。

SV和Fusion其实基本上是一回事,可以理解为SV包括了fusion。

lumpy

lumpy大概是当前最流行的sv检测软件?用法算简单,一般建议检测的时候可以不用去重和使用BQSR校正过的bam,可能会导致读数不准,但是其实可以都试试,毕竟不同实验方法得到的数据肯定是不同的。lumpy的使用毕竟简单,最后还可以用svtyper进行一个简单的分型。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
samtools view -bh -F 1294 sample.bam \
    | samtools sort -@ 8 - -o sample.discordants.bam

samtools view -h sample.bam \
    | lumpy-sv/scripts/extractSplitReads_BwaMem \
    -i stdin | samtools view -bSh - \
    | samtools sort -@ 8 - -o sample.splitters.bam

lumpyexpress -B sample.bam \
    -D sample.discordants.bam \
    -S sample.splitters.bam \
    -o sample.lumpy.vcf

svtyper-sso \
    -i sample.lumpy.vcf \
    -B sample.bam \
    --cores 8 \
    -o sample.gt.vcf

manta

illumina出品的manta也挺好用的,输出结果除了一般会有的PR(两端reads比到不同的位置)和SR(一条reads比到不同的位置)之外,还有DP(深度)也提供了。一般来说是要通过断点去获得这个区域的测序深度,最后来算突变丰度,但是直接从bam中统计的话又不太准确。manta同时适用于单样本和配对样本两种方式。--exome这个参数,在检测全外显子或panel测序的时候,都建议加入。

1
2
3
4
5
6
7
configManta.py \
    --tumorBam tumor.bam \
    --referenceFasta ref.fa \
    --exome \
    --generateEvidenceBam \
    --runDir output
output/runWorkflow.py

SeekSv

seeksv参考此篇。另外从目前使用情况来说,SeekSv效果较佳。

STAR-Fusion

star-fusion基于perl,clone下来后还需要装一堆perl的包,还有准备比对的基因组,可以参照wiki里的步骤自行建立,也可以直接在这里下载现成的。

对于双端数据

1
2
3
4
 STAR-Fusion --genome_lib_dir /path/to/your/CTAT_resource_lib \
    --left_fq reads_1.fq \
    --right_fq reads_2.fq \
    --output_dir star_fusion_outdir

对于单端数据

1
2
3
 STAR-Fusion --genome_lib_dir /path/to/your/CTAT_resource_lib \
    --left_fq reads_1.fq \ 
    --output_dir star_fusion_outdir

subread-junction

还有这个我使用过的subread-junction,不得不说subread这个软件真的速度奇快。

首先是建立索引

1
subread-buildindex -o my_index hg19.fa

然后就是检测了

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# 只输出比对到唯一位置的
subjunc -T 5 -i my_index -r reads1.txt -o subjunc_results.bam

# 最多比对到三个位置
subjunc --multiMapping -B 3 -T 5 -i my_index -r reads1.txt -o subjunc_results.bam

# indel设定最大长度16bp
subjunc -I 16 -i my_index -r reads1.txt -o subjunc_results.bam

# 找外显子与外显子融合
subjunc -d 50 -D 600 -i my_index -r reads1.txt -R reads2.txt -o subjunc_results.bam