call variations from wheat DNA_seq

文件格式是如下,就是SRA編號(hào)忆绰,一行一個(gè)SRA浩峡。fastq文件是在ncbi上下載的SRA格式。小麥基因組單條染色體往往大于500Mb错敢,所以要使用part版本的翰灾。mapping使用的bwa mem,call variantion使用的是sentieon
SRR5873706
SRR5873707

#!/usr/bin/env python
# -*- coding: utf-8 -*-
__author__ = 'wheatomics'



import subprocess

with open('dna_input.txt', 'r') as f:
    sra_input = ''
    ref_fasta = '/data2/Fshare/FastaAndIndex/IWGSC_v1.0_bwa/161010_Chinese_Spring_v1.0_pseudomolecules_parts.fasta'
    sample = 'mutant'

    for line in f:
        sra = line.strip().split()[0]
        print sra + '.sra'
        # sra to fastq.gz
        proc = subprocess.Popen(['fastq-dump', '--split-3', '--helicos', '--gzip',  sra + '.sra'], shell=False)
        proc.wait()
        # Mapping each set of input fastq with BWA-MEM, sorting
        proc = subprocess.Popen('bwa mem -M -R \'@RG\tID:' + sra + '\tSM:' + sample + '\tPL:ILLUMINA\'' +
                                 ' -t 12 -K 10000000 ' + ref_fasta + ' ' + sra.split('.')[0] + '_1.fastq.gz' + ' ' + sra.split('.')[0] + '_2.fastq.gz' +
                                 ' | ' + 'sentieon util sort -r ' + ref_fasta + ' -o ' + sra + 'sorted.bam' + ' -t 10 --sam2bam -i -', shell=True)
        proc.wait()
        # delete all the fastq.gz
        proc = subprocess.Popen(['shred', '-u', '-z', sra.split('.')[0] + '_1.fastq.gz'], shell=False)
        proc.wait()
        proc = subprocess.Popen(['shred', '-u', '-z', sra.split('.')[0] + '_2.fastq.gz'], shell=False)
        proc.wait()
        # get all bam file and put them into next step
        sra_input = sra_input + ' -i ' + sra + 'sorted.bam'
        proc.wait()
    print sra_input
    # Remove Duplicate Reads on the multiple sorted BAM files
    proc = subprocess.Popen(['sentieon', 'driver',  '-t', '10', sra_input, '--algo', 'LocusCollector', '--fun', 'score_info', 'score.txt'], shell= False)
    proc.wait()

    proc = subprocess.Popen(['sentieon', 'driver', '-t', '10', sra_input, '--algo', 'Dedup', '--rmdup', '--score_info',
                             'score.txt', '--metrics', 'dedup_metrics.txt', 'deduped.bam'], shell=False)
    proc.wait()
    # Indel realigner
    proc = subprocess.Popen(['sentieon', 'driver', '-r', ref_fasta, '-t', '10', '-i', 'deduped.bam', '--algo', 'Realigner',
                             'realigned.bam'], shell=False)
    proc.wait()
    # Base recalibration
    proc = subprocess.Popen(['shred', '-u', '-z', 'deduped.bam'], shell=False)
    proc.wait()


    proc = subprocess.Popen(['sentieon', 'driver', '-r', ref_fasta, '-t', '10', '-i', 'realigned.bam', '--algo',
                             'QualCal', 'recal_data.table'], shell=False)
    proc.wait()

    proc = subprocess.Popen(['sentieon', 'driver', '-r', ref_fasta, '-t', '10', '-i', 'realigned.bam', '-q',
                             'recal_data.table', '--algo', 'QualCal', 'recal_data.table.post'], shell=False)
    proc.wait()

    proc = subprocess.Popen(['sentieon', 'driver', '-t', '10', '--algo', 'QualCal', '--plot', '--before',
                             'recal_data.table', '--after', 'recal_data.table.post', 'recal.csv'], shell= False)
    proc.wait()

    proc = subprocess.Popen(['sentieon', 'plot', 'bqsr', '-o', 'recal_plots.pdf', 'recal.csv'], shell=False)
    proc.wait()
    # HC Variant caller
    proc = subprocess.Popen(['sentieon', 'driver', '-r', ref_fasta, '-t', '10', '-i', 'realigned.bam', '-q',
                             'recal_data.table', '--algo', 'Haplotyper', '--emit_mode', 'gvcf', '--emit_conf',
                             '10', '--call_conf', '30', sample + '-hc.g.vcf.gz'], shell=False)
    proc.wait()

    proc = subprocess.Popen(['shred', '-u', '-z', 'realigned.bam'], shell=False)
    proc.wait()

——————————————————————————————
歡迎關(guān)注“小麥生信聯(lián)盟”


小麥生信聯(lián)盟.jpg
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末伐债,一起剝皮案震驚了整個(gè)濱河市预侯,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌峰锁,老刑警劉巖萎馅,帶你破解...
    沈念sama閱讀 206,723評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異虹蒋,居然都是意外死亡糜芳,警方通過(guò)查閱死者的電腦和手機(jī)飒货,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)峭竣,“玉大人塘辅,你說(shuō)我怎么就攤上這事〗粤茫” “怎么了扣墩?”我有些...
    開(kāi)封第一講書人閱讀 152,998評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)扛吞。 經(jīng)常有香客問(wèn)我呻惕,道長(zhǎng),這世上最難降的妖魔是什么滥比? 我笑而不...
    開(kāi)封第一講書人閱讀 55,323評(píng)論 1 279
  • 正文 為了忘掉前任亚脆,我火速辦了婚禮,結(jié)果婚禮上盲泛,老公的妹妹穿的比我還像新娘濒持。我一直安慰自己,他們只是感情好寺滚,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,355評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布柑营。 她就那樣靜靜地躺著,像睡著了一般玛迄。 火紅的嫁衣襯著肌膚如雪由境。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 49,079評(píng)論 1 285
  • 那天蓖议,我揣著相機(jī)與錄音虏杰,去河邊找鬼。 笑死勒虾,一個(gè)胖子當(dāng)著我的面吹牛纺阔,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播修然,決...
    沈念sama閱讀 38,389評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼笛钝,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了愕宋?” 一聲冷哼從身側(cè)響起玻靡,我...
    開(kāi)封第一講書人閱讀 37,019評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎中贝,沒(méi)想到半個(gè)月后囤捻,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,519評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡邻寿,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,971評(píng)論 2 325
  • 正文 我和宋清朗相戀三年蝎土,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了视哑。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,100評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡誊涯,死狀恐怖挡毅,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情暴构,我是刑警寧澤跪呈,帶...
    沈念sama閱讀 33,738評(píng)論 4 324
  • 正文 年R本政府宣布,位于F島的核電站丹壕,受9級(jí)特大地震影響庆械,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜菌赖,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,293評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望沐序。 院中可真熱鬧琉用,春花似錦、人聲如沸策幼。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,289評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)特姐。三九已至晶丘,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間唐含,已是汗流浹背浅浮。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 31,517評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留捷枯,地道東北人滚秩。 一個(gè)月前我還...
    沈念sama閱讀 45,547評(píng)論 2 354
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像淮捆,于是被迫代替她去往敵國(guó)和親郁油。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,834評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容