全外顯子組測序分析 - 流程1

使用一個數(shù)據(jù)樣本(EXON_FYY_1.fastq.gz,EXON_FYY_2.fastq.gz)作為示例,樣本多可以寫成循環(huán)。

Step 0:創(chuàng)建目錄

原始測序數(shù)據(jù)放在0.rawdata中,參考文件放在0.ref_38

cd ~/path/exon
mkdir tools 0.rawdata 0.ref_38 1.QC 2.clean_QC 3.bwa_index_38 4.align 5.stat 6.gatk 7.Germline_Mutations 8.Mutect2
mkdir 1.QC/fast_QC  1.QC/multi_QC
mkdir 2.clean_QC/fast_QC  2.clean_QC/multi_QC  2.clean_QC/trim_galore_QC
mkdir 6.gatk/table
mkdir 7.Germline_Mutations/gvcf/
mkdir 8.Mutect2/annotation 8.Mutect2/maf 

Step 1:質(zhì)量控制

利用工具 fastqc、multiqc進行前期質(zhì)量查看,確保測序數(shù)據(jù)基本合格。
html 文件是質(zhì)控報告,zip 文件是 html 文件圖表對應(yīng)的類。樣本多的話可以用 multiqc 對所有樣本的結(jié)果整合。

fastqc ./0.rawdata/*.fastq.gz --outdir ./1.QC/fast_QC --threads 60 --quiet
ls -lh 1.QC/fast_QC
multiqc ./1.QC/fast_QC/*.zip -o ./1.QC/multi_QC
ls -lh 1.QC/multi_QC

Step 2:trim-galore去接頭

如果從質(zhì)控報告看到一些 reads 的質(zhì)量值較差或測到了接頭,需要去除掉這些質(zhì)量較差的 reads 或接頭。

module load /opt/modules/5.0.1/modulefiles/trim-galore/0.6.10
trim_galore --paired -q 28 --phred33 --length 30 --stringency 3 --gzip --path_to_cutadapt /usr/bin/cutadapt --cores 24 \
-o ./2.clean_QC/trim_galore_QC ./0.rawdata/EXON_FYY_1.fastq.gz ./0.rawdata/EXON_FYY_2.fastq.gz \
>> ./2.clean_QC/trim_galore_QC/EXON_FYY_trim.log 2>&1
ls -lh 2.clean_QC/trim_galore_QC

# 再質(zhì)控:
fastqc ./2.clean_QC/trim_galore_QC/*.fq.gz --outdir ./2.clean_QC/fast_QC --threads 60 --quiet
multiqc ./2.clean_QC/fast_QC/*.zip -o ./2.clean_QC/multi_QC
ls -lh 2.clean_QC/multi_QC

*_val_1.fq.gz 表示經(jīng)過質(zhì)量修剪后的有效數(shù)據(jù),即去除了低質(zhì)量的部分。

Step 3: 構(gòu)建參考基因組的 BWA 索引

這步驟時間較長可以提前運行。生成的 BWA 索引文件說明:
hg38.fasta.64.amb: 存儲了參考基因組序列的一些元信息,如序列長度、名稱等。
hg38.fasta.64.ann: 存儲了一些額外的注釋信息,有助于在比對過程中進行一些元數(shù)據(jù)的操作。
hg38.fasta.64.bwt: 這是Burrows-Wheeler變換的數(shù)據(jù),是BWA索引的核心部分之一。BWT是一種數(shù)據(jù)轉(zhuǎn)換算法,用于將原始DNA序列進行變換,以便在比對時能夠更高效地進行匹配。
hg38.fasta.64.pac: 這是FM索引的數(shù)據(jù),也是BWA索引的核心部分之一。FM索引是一種數(shù)據(jù)結(jié)構(gòu),用于實現(xiàn)快速查找和比對DNA序列。
hg38.fasta.64.sa: 這是后綴數(shù)組的數(shù)據(jù),也是BWA索引的核心部分之一。后綴數(shù)組是一種用于存儲DNA序列的子串信息的數(shù)據(jù)結(jié)構(gòu),用于在比對時快速查找匹配。

bwa index -p ./3.bwa_index_38/hg38 ./0.ref_38/hg38.fasta
ls -lh 3.bwa_index_38

Step 4: 將reads比對到參考基因組上 bwa mem (1h/file)

sam 文件是純文本格式,占用存儲空間,可通過 samtools 轉(zhuǎn)換成二進制的 bam 文件,記錄了每一條 reads 比對到參考基因組的結(jié)果。

bwa mem -M -t 24 -R "@RG\tID:EXON_FYY\tSM:EXON_FYY\tLB:WXS\tPL:Illummina" ./3.bwa_index_38/hg38.fasta \
    ./2.clean_QC/trim_galore_QC/EXON_FYY_1_val_1.fq.gz \
    ./2.clean_QC/trim_galore_QC/EXON_FYY_2_val_2.fq.gz \
    > ./4.align/EXON_FYY.sam
# sam排序并轉(zhuǎn)為bam
samtools sort -@ 10 ./4.align/EXON_FYY.sam -o ./4.align/EXON_FYY.bam
ls -lh 4.align

Step 5: 比對結(jié)果進行質(zhì)控

可視化數(shù)據(jù):快速、全面地對測序數(shù)據(jù)的比對質(zhì)量進行評估和質(zhì)控,確保輸入質(zhì)量是可靠的。
使用samtools stats“收集數(shù)據(jù)”,它生成了一個包含所有原始統(tǒng)計數(shù)據(jù)的文件;使用plot-bamstats自動生成一系列直觀的圖表

samtools stats --reference ./0.ref_38/hg38.fasta ./4.align/EXON_FYY.bam > ./5.stat/EXON_FYY.stat
plot-bamstats -p ./5.stat/EXON_FYY ./5.stat/EXON_FYY.stat

Step 6: 準備 gatk 文件

1. 刪除重復(fù)序列 (need large space & long times) (2h/file)

gatk MarkDuplicatesSpark -I ./4.align/EXON_FYY.bam -O ./6.gatk/EXON_FYY_dedup.bam --tmp-dir /home/chencx/test --remove-all-duplicates true
# 查看刪除前后的數(shù)目變化
samtools view ./4.align/EXON_FYY.bam |wc -l
samtools view ./6.gatk/EXON_FYY_dedup.bam |wc -l

2. 堿基質(zhì)量重矯正--消除測序儀器或者系統(tǒng)帶來的誤差

這部分可以提前下載好

# 2.1. 為人類全基因組構(gòu)建 samtools fasta 索引
samtools faidx ./0.ref_38/hg38.fasta
# 2.2. 為人類全基因組構(gòu)建 dictionary
picard CreateSequenceDictionary R=./0.ref_38/hg38.fasta \
O=./0.ref_38/hg38.dict
# 2.3. 給變異位點創(chuàng)建索引
wget -c https://ftp.ncbi.nih.gov/snp/organisms/human_9606_b151_GRCh38p7/VCF/00-All.vcf.gz -P ./0.ref_38
gzip -dk ./0.ref_38/00-All.vcf.gz
# hg38都帶有chr要添加上
awk 'BEGIN{OFS="\t"} /^#/{print; next} {$1="chr"$1; print}' ./0.ref_38/00-All.vcf > ./0.ref_38/00-All_chr.vcf
head -n 80 ./0.ref_38/00-All_chr.vcf

變異檢測之前的一個關(guān)鍵預(yù)處理步驟:校正測序數(shù)據(jù)中非隨機的、系統(tǒng)性的堿基質(zhì)量分數(shù)誤差,為下游的變異檢測提供更準確的數(shù)據(jù),從而減少假陽性和假陰性。結(jié)果生成一個詳細的“重校準對照表”,指導(dǎo)下一個工具(ApplyBQSR)如何調(diào)整原始BAM文件中每一個堿基的質(zhì)量分數(shù)。

#2.4. 計算需重校正的reads和特征值 (need large space & long times)
gatk BaseRecalibrator -I ./6.gatk/EXON_FYY_dedup.bam \
-R ./0.ref_38/hg38.fasta \
-O ./6.gatk/table/EXON_FYY_recall.table \
--known-sites ./0.ref_38/00-All_chr.vcf \
--tmp-dir /home/chencx/test

實際修改BAM文件中的堿基質(zhì)量分數(shù)。它利用上一步(BaseRecalibrator)生成的“重校準配方”(.table文件),為每一個堿基計算并賦予一個新的、更準確的質(zhì)量分數(shù),并輸出一個新的BAM文件。

# 2.5. 利用校準表文件重新調(diào)整堿基質(zhì)量,并使用這個新的質(zhì)量值重新輸出一份新的 BAM 文件
gatk ApplyBQSR -I ./6.gatk/EXON_FYY_dedup.bam \
-bqsr ./6.gatk/table/EXON_FYY_recall.table \
-O ./6.gatk/EXON_FYY_bqsr.bam \
-R ./0.ref_38/hg38.fasta 

至此,BQSR流程完成,產(chǎn)生的 EXON_FYY_bqsr.bam 文件就是進行Germline變異檢測(如用 HaplotypeCaller)或Somatic變異檢測(如用 Mutect2)的最佳輸入文件。

歡迎大家評論交流!
(每帖分享:時間,好像很緊張但又無極限)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容