首页 > 其他分享 >体细胞突变检测分析流程-系列1( WES&Panel)

体细胞突变检测分析流程-系列1( WES&Panel)

时间:2023-07-05 10:01:29浏览次数:47  
标签:体细胞 tumor sentieon normal -- WES bam filter Panel

Sentieon●体细胞变异检测-系列1

  Sentieon 致力于解决生物信息数据分析中的速度与准确度瓶颈,通过算法的深度优化和企业级的软件工程,大幅度提升NGS数据处理的效率、准确度和可靠性。   针对体细胞变异检测,Sentieon软件提供两个模块:TNscope和TNhaplotyer2。   TNscope:此模块使用Sentieon特有的算法,拥有更快的计算速度和更高的计算精度,对临床基因诊断样本尤其适用;   TNhaplotyper2:此模块匹配Mutect2(现在匹配到4.1.9)结果的同时,计算速度提升10倍以上。  

WES or Panel 变异检测分析

 

以下给出的步骤脚本主要针对WES or Panel (200~500x depth, AF > 1%)。(查看脚本时,可以左右滑动)

 

第一步:Alignment

# ****************************************** 
# 1a. Mapping reads with BWA-MEM, sorting for tumor sample 
# ****************************************** 
( sentieon bwa mem -M -R "@RG\tID:$tumor\tSM:$tumor\tPL:$platform" \
-t $nt -K 10000000 $fasta $tumor_fastq_1 $tumor_fastq_2 || \
echo -n 'error' ) | \
sentieon util sort -o tumor_sorted.bam -t $nt --sam2bam -i -

# ****************************************** 
# 1b. Mapping reads with BWA-MEM, sorting for normal sample 
# ****************************************** 
( sentieon bwa mem -M -R "@RG\tID:$normal\tSM:$normal\tPL:$platform" \
-t $nt -K 10000000 $fasta $normal_fastq_1 $normal_fastq_2 || 
echo -n 'error' ) | \
sentieon util sort -o normal_sorted.bam -t $nt --sam2bam -i -

 

第二步:PCR Duplicate Removal (Skip For Amplicon)

# ****************************************** 
# 2a. Remove duplicate reads for tumor sample. 
# ****************************************** 
# ******************************************  
sentieon driver -t $nt -i tumor_sorted.bam \
      --algo LocusCollector \
      --fun score_info \ tumor_score.txt sentieon driver -t $nt -i tumor_sorted.bam \
      --algo Dedup \
      --score_info tumor_score.txt \
      --metrics tumor_dedup_metrics.txt \ tumor_deduped.bam
# ****************************************** 
# 2b. Remove duplicate reads for normal sample. 
# ****************************************** 
sentieon driver -t $nt -i normal_sorted.bam \
     --algo LocusCollector \
     --fun score_info \ normal_score.txt sentieon driver -t $nt -i normal_sorted.bam \
     --algo Dedup \
     --score_info normal_score.txt \
     --metrics normal_dedup_metrics.txt \ normal_deduped.bam

 

第三步: Base Quality Score Recalibration (Skip For Small Panel)

# ****************************************** 
# 3a. Base recalibration for tumor sample
# ******************************************
sentieon driver -r $fasta -t $nt -i tumor_deduped.bam --interval $BED \
    --algo QualCal \
    -k $dbsnp \
    -k $known_Mills_indels \
    -k $known_1000G_indels \ tumor_recal_data.table
# ****************************************** 
# 3b. Base recalibration for normal sample 
# ****************************************** 
sentieon driver -r $fasta -t $nt -i normal_deduped.bam --interval $BED \
     --algo QualCal \
     -k $dbsnp \
     -k $known_Mills_indels \
     -k $known_1000G_indels \ 
     normal_recal_data.table

 

第四步:Variant Calling

sentieon driver -r $fasta -t $nt -i tumor_deduped.bam -i normal_deduped.bam --interval $BED -interval_padding 10\ 
    --algo TNscope \
    --tumor_sample $TUMOR_SM \
    --normal_sample $NORMAL_SM \
    --dbsnp $dbsnp \
    --sv_mask_ext 10 \
    --max_fisher_pv_active 0.05 \
    --min_tumor_allele_frac 0.01 \
    --filter_t_alt_frac 0.01 \
    --max_normal_alt_frac 0.005 \
    --max_normal_alt_qsum 200 \
    --max_normal_alt_cnt 5 \
    --assemble_mode 4 \
    [--pon panel_of_normal.vcf \] 
    output_tnscope.pre_filter.vcf.gz

 

第五步:Variant Filtration

bcftools annotate -x "FILTER/triallelic_site" output_tnscope.pre_filter.vcf.gz | \ 
    bcftools filter -m + -s "insignificant" -e "(PV>0.25 && PV2>0.25)" | \ 
    bcftools filter -m + -s "insignificant" -e "(INFO/STR == 1 && PV>0.05)" | \ 
    bcftools filter -m + -s "orientation_bias" -e "FMT/FOXOG[0] == 1" | \ 
    bcftools filter -m + -s "strand_bias" -e "SOR > 3" | \ 
    bcftools filter -m + -s "low_qual" -e "QUAL < 20" | \ 
    bcftools filter -m + -s "short_tandem_repeat" -e "RPA[0]>=10" | \
    bcftools filter -m + -s "noisy_region" -e "ECNT>5" | \ 
    bcftools filter -m + -s "read_pos_bias" -e "FMT/ReadPosRankSumPS[0] < -8" | \ 
    bcftools norm -f $fasta -m +any | \ 
sentieon util vcfconvert - output_tnscope.filtered.vcf.gz

标签:体细胞,tumor,sentieon,normal,--,WES,bam,filter,Panel
From: https://www.cnblogs.com/chsnp/p/17523107.html

相关文章

  • buuctf-[WesternCTF2018]shrine
    最近学习了一下SSTI,用这个题目来试试手SSTI原理:WEB应用中模板的引用存在可变变量由于有一个渲染函数flask.render_template_string()所以可以判断这是一个SSTI的考点然后观察代码,这个代码需传入一个shrine的值,然后这个对传入的值进行了“()”的过滤,并且可以知道flag储存与当前......
  • 数字母排SuperPanel | 有了TA,母排工程师再也不用加班啦~
    行业痛点我们知道,传统的电气行业设计绘排效率低、材料利用率低、人工编程效率低。手动量排:对设计经验要求高、设计数据无流动、生产加工靠经验;平面绘图:设计结果难精准、设计数据难套改、生产加工需手动;三维绘图:设计过程耗时间、设计数据难管理、加工代码难对接。产品介绍Su......
  • panel绑定主体错误导致事件无法触发问题记录(尺寸异常)
    代码实例#coding:utf-8#!/usr/bin/envpython#@author:9527importwxclassDelayStatisticalPanel(wx.Panel):'''@function:背景板(BOOK)@By:9527'''def__init__(self,parent):super().__init__(paren......
  • Lowes EDI 项目数据库方案开源介绍
    近期为了帮助广大用户更好地使用EDI系统,我们根据以往的项目实施经验,将成熟的EDI项目进行开源。用户安装好知行之桥EDI系统之后,只需要下载我们整理好的示例代码,并放置在知行之桥指定的工作区中,即可开始使用。今天的文章主要为大家介绍LOWE'SEDI项目,了解如何获取开源的项目......
  • BUUCTF:[WesternCTF2018]shrine
    https://buuoj.cn/challenges#[WesternCTF2018]shrineimportflaskimportosapp=flask.Flask(__name__)app.config['FLAG']=os.environ.pop('FLAG')@app.route('/')defindex(): returnopen(__file__).read() @app.route(&......
  • odoo16弹出对话框中显示SearchPanel
    在odoo中,有些数据模型的Search视图可能会定义关于SearchPanel的部分,但这部分定义不会在弹出对话框中显示。如员工的list视图显示如下: 但如果我们在一个挑选员工的弹出对话框中,显示是这样子的。 这样如果员工较多,我们还要进一步输入搜索条件来进行过虑,不太方便操作。那如果......
  • Qt第六十二章:图标库QtAwesome的使用
    目录一、安装依赖二、主页三、文档四、案例1、图标2、样式3、alpha通道4、多图标堆叠5、动画6、字体五、系列1、msc系列2、fa5系列(选择free栏)3、fa5s系列(选择free栏)4、fa5b系列(选择free栏)5、fa系列6、ei系列7、mdi系列8、mdi6系列9、ph系列10、ri系列一、安装依赖pipinstallQtA......
  • Layout()方法用于布局管理器的更新,解决panel刷新后其中控件挤作一坨的问题
    在wxPython中,Layout()方法用于布局管理器的更新。它会告诉布局管理器重新计算和调整子控件的大小和位置。一般来说,当您:-添加或删除子控件-隐藏或显示子控件-改变子控件的大小-改变容器的大小这些情况下,您需要调用Layout()方法,告诉布局管理器进行重新布局。例如,在BoxSiz......
  • 渐变色Panel构造方法的重写
    #此类用于设置渐变色panelclassMyPanel(wx.Panel):def__init__(self,parent):wx.Panel.__init__(self,parent,wx.ID_ANY)self.SetBackgroundStyle(wx.BG_STYLE_PAINT)self.Bind(wx.EVT_PAINT,self.OnPaint)self.Bind(wx.EVT_SIZ......
  • Font-AweSome在Vue中的使用
    Font-AweSome在Vue中的使用yarnaddfont-awesome或者npmifont-awesome-S在main.js中引入import'font-awesome/css/font-awesome.min.css'Vue中使用<iclass="fafa-camera-retro"></i> ......