1. 課程大綱
- 基礎(chǔ)知識
- 數(shù)據(jù)質(zhì)控
- Fastqc結(jié)果解讀
- 數(shù)據(jù)過濾
2. 學(xué)習(xí)筆記
2.1 基礎(chǔ)知識
2.1.1 測序原理
- Sample Prep:DNA隨機(jī)打斷加adapter;
- Cluster Generation:橋式PCR;
- Sequencing: 邊合成邊測序;
- Data Analysis
2.1.2 fastq數(shù)據(jù)格式
- Read record information (including header, flow cell ID, Lane, Tile and barcode)
- Reads bases
- plus (+)
- quality scores (phred 33)
2.1.3 堿基質(zhì)量體系
- A(黃)T(綠)C(紅)G(藍(lán))
- Q = -10log10(e)轉(zhuǎn)換:0.1對應(yīng)10;
- Q30>80(質(zhì)量大于30(錯誤率小于千分之一)的堿基比例大于80%)
- ASCII碼,質(zhì)量值 + 33后只需要一個值代替質(zhì)量。
2.1.4 下載數(shù)據(jù)資料
git clone 網(wǎng)址(在對應(yīng)文件夾下載,可下載至當(dāng)前文件夾)
2.2 數(shù)據(jù)質(zhì)控
2.2.1 md5:數(shù)據(jù)完整性校驗(yàn)
- 生成md5文件:md5sum *>md5.txt
- md5校驗(yàn):md5sum -c md5
- 查看文件: cat md5.txt
2.2.2 安裝FastQC
- 安裝Bioconda(聯(lián)網(wǎng)自動化安裝miniconda64位):
wget miniconda website #官網(wǎng)下載對應(yīng)版本miniconda
sh 文件名 # yes下來安裝
conda source ~/.bashrc #將conda添加至環(huán)境變量PATH
conda install 軟件名 #后續(xù)可用此命令安裝常用生信軟件
conda config --add channels bioconda #配置channel
which 軟件名 # 查看文件安裝位置
conda install bwa = 0.7.12 #安裝特定版本軟件
conda search bwa #查看所有版本,*為已有版本
conda list # 查看已安裝情況
conda update 軟件名 # 軟件升級
conda remove 軟件名 #軟件卸載
- 安裝FastQC
conda install fastqc # 安裝
fastqc #查看是否安裝好
which fastqc #查看安裝位置
wget 網(wǎng)址 #手動安裝下載文件
unzip 文件名 # 解壓文件
fastqc為java文件,可直接使用,僅需修改權(quán)限
chmod a+x
- Tips:推薦自動安裝,出現(xiàn)問題再選擇手動安裝,具體wget網(wǎng)址下載,按文件說明一步步安裝。
2.2.3 使用FastQC進(jìn)行質(zhì)控
- 查看幫助文檔
fastqc -help #查看幫助文檔
fastqc 文件名 #簡單的質(zhì)控方法,默認(rèn)結(jié)果輸出至當(dāng)前目錄,輸出結(jié)果包含html文件和一個zip壓縮文件
fastqc -o ./ #設(shè)置存儲位置,當(dāng)前位置
fastqc --nogroup # 不設(shè)分組
- 用新建shell腳本取代命令行模式
vi qc.sh
sh qc.sh
- 后臺運(yùn)行方式
fastqc test.1.fastq & test.2.fastq # &符號可同時運(yùn)行兩個文件,不分先后
nohup fastqc -o ./ -- nogroup test.1.fastq & test.2.fastq # nohup 用于后臺運(yùn)行,只需要遠(yuǎn)程服務(wù)器連接狀態(tài)即可
- 批量生成腳本方式
ls ../raw_data/raw_data/*.fastq.gz | xargs -i echo nohup fastqc -o ./ -- nogroup {} \& >fastqc.sh #列出所有質(zhì)控文件,命令通道,按行處理,對每行執(zhí)行fastqc和輸出,將結(jié)果存檔于fastqc文件
less nohup.out # 通過日志查看運(yùn)行狀態(tài)
2.3 Fastqc結(jié)果解讀
2.3.1 數(shù)據(jù)常見問題
- 低質(zhì)量:Trim or Remove
- Adapter序列:Trim or Remove
- 細(xì)菌污染:比對后remove
- Reads過短:remove
- 質(zhì)控結(jié)果:網(wǎng)頁文件,需下載至本地瀏覽器打開;提示信息中僅供參考(對號為通過;嘆號為警告;×為未通過)
2.3.2 數(shù)據(jù)的基本信息
- Encoding:數(shù)據(jù)質(zhì)量體系,舊版本Illumina 1.5,新的為Sanger體系;舊的需轉(zhuǎn)換至新的體系。
- Total Sequences:總的reads數(shù)。
- Sequence Length:序列長度,分固定長度,不固定長度(三代測序結(jié)果)
- %GC:GC含量。
2.3.3 數(shù)據(jù)質(zhì)量如何
- Per base sequence quality:單個堿基質(zhì)量箱線圖(上四分位,中位數(shù),下四分位,橫坐標(biāo)為堿基位置,縱坐標(biāo)為質(zhì)量,一般至少20以上才合格),一般二代測序單獨(dú)顯示,三代會有合并顯示;二代測序在質(zhì)控時,一般設(shè)置no group參數(shù)。
- Per Tile sequencing quality:冷色調(diào)為高質(zhì)量,暖色調(diào)為低質(zhì)量,好的測序一般都為藍(lán)色。
- Per Sequence Quality Scores:序列質(zhì)量平均值分配,橫坐標(biāo)為質(zhì)量值,縱坐標(biāo)為reads數(shù)目,一般最右側(cè)有一個峰值。
2.3.4 AT是否相等
- Per base sequence content:正常條件下,一般A=T,C=G;當(dāng)數(shù)據(jù)不夠多,可能會出現(xiàn)差異較大的情況;當(dāng)出現(xiàn)頭部AT不等時,可能是隨機(jī)引物造成。
2.3.5 Sequence Duplication
- 含義:完全相同的reads
- 產(chǎn)生原因:基因組中的重復(fù)序列;不同細(xì)胞中的多套DNA;PCR擴(kuò)增。
- 正常duplication比例為4%左右,RNA-seq偏高,主要由于rRNA,表達(dá)量高的看家基因等;
- 過高原因:過多PCR擴(kuò)增(6輪64個拷貝),主要包括過少DNA、大片段文庫;片段長度差異太大,短片段重復(fù)多;
- 實(shí)際中一般僅分析前十萬條;大于75bp僅選擇前50bp;大于10次合并顯示。
- 實(shí)際分析中一次reads大于90%or95%比較合適。
2.3.6 序列是否有污染
- 污染種類:實(shí)驗(yàn)中添加試劑(adapter或primer);外源污染(人或細(xì)菌)。
- G/C含量圖:正常一般為規(guī)則的正態(tài)分布平滑曲線,30-50%。
- Duplication level:個別重復(fù)數(shù)意外較多。
- Overrepresented sequences:某種序列格外多,證明有污染。
- Adapter Content:是否有adapter污染。
- kmer content:序列打斷后,某種序列是否很多。
- Adapter 和 primer污染:過濾環(huán)節(jié)直接去除;
- 細(xì)菌污染:與其他基因組比對,確定是否有污染,若有,去除污染數(shù)據(jù)。
2.4 數(shù)據(jù)過濾
2.4.1 過濾軟件哪家強(qiáng)
- SOAPnuke:華大專用,功能強(qiáng)大,安裝復(fù)雜,有統(tǒng)計結(jié)果,低質(zhì)量remove,需輸入adapter序列,快。
- Trimmomatic:java不需要安裝,低質(zhì)量trim,保留更多數(shù)據(jù),自帶adapter庫。
- FASTX-Toolkit:靈活,麻煩。
2.4.2 安裝Trimmomatic
- 下載:wget 官網(wǎng)鏈接
- 解壓:unzip 文件名
- 運(yùn)行:java -jar 文件名(有java環(huán)境即可,否則需重新安裝java)
2.4.3 使用trimmomatic過濾數(shù)據(jù)
-
過濾原理:接頭處,空載,過短
過濾情況 - 過濾代碼實(shí)例
java -jar trimmomatic-0.35.jar \ #注意寫好文件所在絕對路徑
PE \ #pair end
-phred33 \ #此處可省略
input_forward.fq.gz input_reverse.fq.gz \ #輸入文件名
output_forward_paired.fq.gz output_forward_unpaired.fq.gz output_reverse_paired.fq.gz output_reverse_unpaired.fq.gz \ #輸出文件名,一般四個
ILLUMINACLIP:adapter絕對路徑/TruSeq3-PE.fa:2:30:10 \ #利用overexpresented數(shù)據(jù)確定adapter類型,Trueseq2 orTrueseq 3,去除adapter和primer等
LEADING:3 \ #去頭,5’端低質(zhì)量堿基
TRAILING:3 \ #去尾,3’端低質(zhì)量堿基
SLIDINGWINDOW:4:15 \ #4個為單位的劃窗,質(zhì)量值小于15的去掉
MAXIINFO:60:0.2 # reads長度和質(zhì)量的平衡
CROP/HEADCROP:100 \ # 最多保留N個堿基長度
MINLEN:36
3. 學(xué)習(xí)小結(jié)
- 注意活學(xué)活用,熟悉文件夾切換。
- 養(yǎng)成良好習(xí)慣,單獨(dú)建立軟件文件夾和數(shù)據(jù)文件夾。
