首先是上游Chip-Seq1.文章數(shù)據(jù)選取這里緊跟jimmy大神的腳本,選擇同樣的文章數(shù)據(jù),來自于《CARM1 Methylates Chromatin Remodeling Factor BAF155 to Enhance Tumor Progression and Metastasis》 作者首先實驗證明了用small haripin RNA來knockout CARM1 只能達到90%的敲除效果,有趣的是,對CARM1的功能影響非常小,說明只需要極少量的CARM1就可以發(fā)揮很好的作用。 因此作者通過zinc finger nuclease這種基因組編輯技術(shù)設計了100%敲除CARM1的實驗材料,這樣就能比較CARM1有無時各種蛋白被催化狀態(tài)了。 其中SWI/SNF(BAF) chromatin remodeling complex 染色質(zhì)重構(gòu)復合物的一個亞基 BAF155,非常明顯的只有在CARM1這個基因完好無損的細胞系里面才能被正常的甲基化。作者證明了BAF155是CARM1這個基因非常好的一個底物, 而且通過巧妙的實驗設計,證明了BAF155這個蛋白的第1064位氨基酸(R) 是 CARM1的作用位點。 因為早就有各種文獻說明了SWI/SNF(BAF) chromatin remodeling complex 染色質(zhì)重構(gòu)復合物在癌癥的重要作用, 所以作者也很自然想探究BAF155在癌癥的功能詳情,這里作者選擇的是ChIP-seq技術(shù)。BAF155是作為SWI/SNF(BAF) chromatin remodeling complex 染色質(zhì)重構(gòu)復合物的一個組分,必然可以直接或者間接的結(jié)合DNA。 而ChIP-seq技術(shù)最適合來探究能直接或者間接結(jié)合DNA的蛋白的功能,所以作者構(gòu)造了一種細胞系(MCF7),它的BAF155蛋白的第1064位氨基酸(R) 突變而無法被CARM1這個基因催化而甲基化,然后比較突變的細胞系和野生型細胞系的BAF155的兩個ChIP-seq結(jié)果,這樣就可以研究BAF155是否必須要被CARM1這個基因催化而甲基化后才能行使生物學功能。 作者用me-BAF155特異性抗體+western bloting 證明了正常的野生型MCF7細胞系里面有~74%的BAF155被甲基化。 有一個細胞系SKOV3,可以正常表達除了BAF155之外的其余14種SWI/SNF(BAF) chromatin remodeling complex 染色質(zhì)重構(gòu)復合物,而不管是把突變的細胞系和野生型細胞系的BAF155混在里面都可以促進染色質(zhì)重構(gòu)復合物的組裝,所以甲基化與否并不影響這個染色質(zhì)重構(gòu)復合物的組裝,重點應該研究的是甲基化會影響B(tài)AF155在基因組其它地方結(jié)合。 2.數(shù)據(jù)下載考慮到原始文件過大(主要是練習的服務器配置不夠),所以只下載了4個文件,就是WT和MUT的input和IP的數(shù)據(jù)。 mkdir -p /project/home/lyang/ChIP-seq_test && cd /project/home/lyang/ChIP-seq_test 3.格式轉(zhuǎn)換——單端測序結(jié)果mkdir 1.trans_fastq && cd 1.trans_fastq 4.質(zhì)控fastqcmkdir /project/home/lyang/ChIP-seq_test/2.fasqc && cd /project/home/lyang/ChIP-seq_test/2.fasqc 得到html報告可以自行查看,或者實驗multiqc整合報告 5.用multiqc整合報告cd /project/home/lyang/ChIP-seq_test/2.fasqc 6.過濾低質(zhì)量的fq文件mkdir /project/home/lyang/ChIP-seq_test/3.trim_galore && cd /project/home/lyang/ChIP-seq_test/3.trim_galore 因為我們只有4個樣本,所以懶得寫循環(huán),也懶得寫控制腳本 可以看到與修剪之前相比,%Dups和%GC比例都降低了。 7.bowtie2比對7.1索引的構(gòu)建文中用到的參考基因組是hg19,所以去下載hg19參考基因組,然后用bowtie2構(gòu)建索引。 mkdir -p /project/home/lyang/refdata/bowtie2/ && cd /project/home/lyang/refdata/bowtie2/ 7.2進行比對得到bam文件mkdir /project/home/lyang/ChIP-seq_test/4.mapping && cd /project/home/lyang/ChIP-seq_test/4.mapping 上面的samtools步驟很多,可以管道起來讓它簡潔一點,不過需要注意的是服務器內(nèi)存要好! 對bam文件進行QC ls *sorted.bam |xargs -i samtools index {} 查看成功率: cat *stat*|grep % 結(jié)果似乎不錯: 11810228 + 0 mapped (100.00% : N/A) 這個百分百比對成功看起來有點不真實。 8.如果有必要,則合并bam文件(這里不需要)有些數(shù)據(jù)是同一個樣本的測序數(shù)據(jù)由于被分到了不同的lane中進行測序,所以最后得到的sra文件也分成了數(shù)個。 如果存在這種情況則需要對不同的文件進行合并,但是前提是檢驗了不同bam文件的相關(guān)性非常好! 這里的數(shù)據(jù)單個文件就是一個完整的樣本,所以無需合并,但是還是先把代碼記錄下來,以免日后需要使用: ls *.bam|sed 's/_[0-9]_trimmed.bam//g' |sort -u |while read id;do samtools merge ../mergeBam/$id.merge.bam $id*.bam ;done 9.關(guān)于PCR重復的去除經(jīng)過bowtie2比對并將bam文件排序,構(gòu)建索引后得到的文件: 557M Oct 4 10:32 SRR1042595.sorted.bam 去除PCR重復并建立索引 mkdir /project/home/lyang/ChIP-seq_test/5.RemovePCRduplicated/ && cd /project/home/lyang/ChIP-seq_test/5.RemovePCRduplicated/ QC質(zhì)控結(jié)果: cat *stat*|grep % 去除重復前后比較(主要看文件大?。?/p> 可以看到至少去除了一半的序列。 10.利用macs2來callpeak10.1 首先了解關(guān)于macs2這個軟件:macs2包含一系列的子命令,其中最主要的就是 macs2 callpeak -t ChIP.bam -c Control.bam -f BAM -g hs -n test -B -q 0.01 一般而言,我們照葫蘆畫瓢,按照這個實例替換對應部分就行了,介紹一下各個參數(shù)的意義
10.2 應用到自己的實例中:首先確定哪些樣本是當作control來消除噪音,哪些是treatment來真正尋找peaks的。 可以看到SRR104259{4,6,8},SRR1042600都是作為input的control組。 而SRR104259{3,5,7,9}都是作為treatment組。 但是不知道這里control和treatment組是不是存在一一對應的關(guān)系,就當作是一一對應的關(guān)系往下做吧 mkdir /project/home/lyang/ChIP-seq_test/6.macs2-callpeak && cd /project/home/lyang/ChIP-seq_test/6.macs2-callpeak 10.3 macs2結(jié)果輸出macs2的輸出文件解讀 得到的文件有: 10.3.1 NAME_peaks.xls雖然后綴名是xls,但實際上就是一個普通的文本文件。包含peak信息的tab分割的文件,前幾行會顯示callpeak時的命令。輸出信息包含:
10.3.2 NAME_peaks.narrowPeaknarrowPeak文件是BED6+4格式,可以上傳到UCSC瀏覽。輸出文件每列信息分別包含:
bed格式的文件和其他Peak文件唯一不同的是——Peak文件中,由于以1為基,而bed文件是以0為基,所以peak的起始位置需要減1才是bed格式的文件。 10.3.3 NAME_summits.bedBED格式的文件,包含peak的summits位置,第5列是-log10pvalue。如果想找motif,推薦使用此文件。
10.3.4 NAME_model.rNAME_model.r能通過 可以看到非常貼心的幫我們寫好了腳本,直接運行即可出pdf圖。 10.4 macs2背后的統(tǒng)計學原理參考Chip-seq處理流程 我們對ChIP-seq測序數(shù)據(jù)尋找peaks的本質(zhì)就是得到所有測序數(shù)據(jù)比對在全基因組之后在基因組上測序深度里面尋找比較突出的部分。比如對WES數(shù)據(jù)來說,各個外顯子,或者外顯子的5端到3端,理論上測序深度應該是一致的,都是50X~200X,畫一個測序深度曲線,應該是近似于一條直線。但對我們的ChIP-seq測序數(shù)據(jù)來說,在所捕獲的區(qū)域上面,理論上測序深度是絕對不一樣的,應該是近似于一個山峰。 而那些覆蓋度高的地方,山頂,就是我們的IP所結(jié)合的熱點,也就是我們想要找的peaks。我們通常說的ChIP-seq測序的IP,可以是各個組蛋白上各修飾位點對應的抗體,或者是各種轉(zhuǎn)錄因子的抗體等等。 熱點是這樣一些位置,這些位置多次被測得的read所覆蓋(我們測的是一個細胞群體,read出現(xiàn)次數(shù)多,說明該位置被TF結(jié)合的幾率大)。那么,read數(shù)達到多少才叫多?這就要用到統(tǒng)計檢驗來分析。假設TF在基因組上的分布是沒有任何規(guī)律的,那么,測序得到的read在基因組上的分布也必然是隨機的,某個堿基上覆蓋的read的數(shù)目應該服從二項分布。 TF在基因組上的結(jié)合其實是一個隨機過程,基因組的每個位置其實都有機會結(jié)合某個TF,只是概率不一樣,說白了,peak出現(xiàn)的位置,是TF結(jié)合的熱點,而peak-calling就是為了找到這些熱點。當n很大,p很小時,二項分布可以近似用泊松分布替代,在這里: n是測序得到的read總數(shù)目,l是單個read的長度,s是基因組的大小。 我們可以算出在某個置信概率(如0.00001)下,隨機情況下,某個堿基上可以覆蓋的read的數(shù)目的最小值,當實際觀察到的read數(shù)目超過這個值(單側(cè)檢驗)時,我們認為該堿基是TF的一個結(jié)合熱點。反過來,針對每一個read數(shù)目,我們也可以算出對應的置信概率P。 但是,這只是一個簡化的模型,實際情況要復雜好多。比如,由于測序、mapping過程內(nèi)在的偏好性,以及不同染色質(zhì)間的差異性,相比全基因組,某些堿基可能內(nèi)在地會被更多的read所覆蓋,這種情況得到的很多peak可能都是假的。 MACS考慮到了這一點,當對某個堿基進行假設檢驗時,MACS只考慮該堿基附近的染色質(zhì)區(qū)段(如10k),此時,上述公式中n表示附近10k區(qū)間內(nèi)的read數(shù)目,s被置為10k。當有對照組實驗(Control,相比實驗組,沒有用抗體捕獲TF,或用了一個通用抗體)存在時,利用Control組的數(shù)據(jù)構(gòu)建泊松分布,當沒有Control時,利用實驗組,稍大一點的局部區(qū)間(比如50k)的數(shù)據(jù)構(gòu)建泊松分布。 read只是跟隨著TF一起沉淀下來的DNA fragment的末端,read的位置并不是真實的TF結(jié)合的位置。所以在peak-calling之前,延伸read是必須的。不同TF大小不一樣,對read延伸的長度也理應不同。我們知道,測得的read最終其實會近似地平均分配到正負鏈上,這樣,對于一個TF結(jié)合熱點而言,read在附近正負鏈上會近似地形成“雙峰”。 MACS會以某個window size掃描基因組,統(tǒng)計每個window里面read的富集程度,然后抽取(比如1000個)合適的(read富集程度適中,過少,無法建立模型,過大,可能反映的只是某種偏好性)window作樣本,建立“雙峰模型”。最后,兩個峰之間的距離就被認為是TF的長度D,每個read將延伸D/2的長度。 當有對照組實驗存在時,MACS會進行兩次peak calling。第一次以實驗組(Treatment)為實驗組,對照組為對照組,第二次顛倒,以實驗組為對照組,對照組為實驗組。之后,MACS對每一個P計算了相應的FDR(False Discovery Rate)值: Control-p表示第二次peak calling(顛倒的)得到的置信概率小于P的peak的個數(shù)。 Treatment-p表示第一次peak calling得到的置信概率小于P的peak的個數(shù)。 FDR綜合利用了實驗組和對照組的信息,顯然,FDR越小越好。 這一段摘抄自plob的教程。 10.5 自己得到的輸出結(jié)果如下:##sorted.bam文件得到的結(jié)果 BED包含有3個必須的字段和9個可選字段: 必須字段:
可選字段:
而peak calling的MACS輸出bed文件默認是前5列,其中第五列指的是片段堆積的峰高: chr1 121485178 121485179 Xu_MUT_rep2_rmdup_peak_1 169.64561 所以在ChIPseeker是畫peak coverage的函數(shù)covplot要有個weightCol的參數(shù)。 11.使用deeptools是進行可視化deeptools工具介紹BAM神器--Deeptools使用指南 對于deeptools里的任意子命令,都支持
還有一些過濾用參數(shù)部分子命令可用,如 官方文檔見http://deeptools./en/latest/index.html, 下面按照用法引入不同的工具。 BAM轉(zhuǎn)換為bigWig或bedGraphBAM文件是SAM的二進制轉(zhuǎn)換版,bigWig是wig或bedGraph的二進制版,存放區(qū)間的坐標軸信息和相關(guān)計分(score),主要用于在基因組瀏覽器上查看數(shù)據(jù)的連續(xù)密度圖,可用 為什么要用bigWig? 主要是因為BAM文件比較大,直接用于展示時對服務器要求較大。因此在GEO上僅會提供bw,即bigWig下載,便于下載和查看。如果真的感興趣,則可以下載原始數(shù)據(jù)進行后續(xù)分析。 deeptools提供 為了能夠比較不同的樣本,需要對先將基因組分成等寬分箱(bin),統(tǒng)計每個分箱的read數(shù),最后得到描述性統(tǒng)計值。
bamCoverage -e 170 -bs 10 -b ap2_chip_rep1_2_sorted.bam -o ap2_chip_rep1_2.bw 得到的bw文件就可以送去IGV/Jbrowse進行可視化。這里的參數(shù)僅使用了
如果為了其他結(jié)果進行比較,還需要進行標準化,deeptools提供了如下參數(shù):
如果需要以100為分箱,并且標準化到1x,且僅統(tǒng)計某一條染色體區(qū)域的正鏈,輸出格式為bedgraph,那么命令行可以這樣寫: bamCoverage -e 170 -bs 100 -of bedgraph -r Chr4:12985884:12997458 -b 02-read-alignment/ap2_chip_rep1_1_sorted.bam -o chip.bedgraph
把bam文件轉(zhuǎn)為bw文件cd /project/home/lyang/ChIP-seq_test/5.RemovePCRduplicated 載入IGV中進行查看:查看bam文件找一個樣本SRR1042595.sorted.bam(未去重)和SRR1042595.rmdup.bam(去除PCR重復后)導入IGV中進行查看去除PCR重復前后的變化: 可以看到這個樣本沒有去除重復前有很多PCR重復。 因為這些片段都是經(jīng)過PCR重復擴增而來的,所以是一模一樣的。因為都是一條母鏈復制而來的。 查看同一個樣本的不同格式bam,bw,bed文件 可以看到在rmdup后,bam文件上變化挺大的,但是奇怪的是在最后的callpeaks的bed文件居然差別不大。且bw文件也相差不大。 查看bed文件可以先對bed文件進行處理,這樣就可以把結(jié)果直接復制到IGV中,得到peaks的坐標地址了。 awk '{print $1":"$2"-"$3}' Xu_WT_rep1_sort_summits.bed 根據(jù)上面Xu_WT_rep1_sort_summits.bed文件中的結(jié)果去IGV中查看,看到在Xu_WT_rep1樣本中有一個peaks。 再找一個Xu_MUT_rep2_rmdup_summits.bed文件中Xu_MUT_rep2樣本的peaks。 如果igv載入非常慢的時候,可以考慮點擊reload session這個選項: 查看TSS附件信號強度:背景介紹在 真核cDNA序列詳解 有詳細介紹,關(guān)于UTR,CDS,內(nèi)含子,外顯子以及TSS之間的關(guān)系: 啟動子(promoter):與RNA聚合酶結(jié)合并能起始mRNA合成的序列。 轉(zhuǎn)錄起始點(TSS):轉(zhuǎn)錄時,mRNA鏈第一個核苷酸相對應DNA鏈上的堿基,通常為一個嘌呤。 UTR(Untranslated Regions):即非翻譯區(qū),是信使RNA(mRNA)分子兩端的非編碼片段。 5'-UTR從mRNA起點的甲基化鳥嘌呤核苷酸帽延伸至AUG起始密碼子,3'-UTR從編碼區(qū)末端的終止密碼子延伸至多聚A尾巴(Poly-A)的末端。 下載TSS.bed文件方法一:[https:///projects/seqminer/files/Reference%20coordinate/](https:///projects/seqminer/files/Reference coordinate/)(結(jié)果證明這個文件似乎有問題,后面用computeMatrix reference-point調(diào)用時總是報錯) 方法二:去UCSC官網(wǎng)(推薦在這里下載) 進入table browser工具后進行選擇: group這個選項我不太確定,但是大家都選的這個我就沒改了。 track里可以選擇NCBI RefSeq或者UCSC gene,這里選了NCBI group一般不變 table里如果track選擇NCBI RefSeq,這里就選擇RefSeq;如果track選擇UCSC gene,這里就選knownGene output format根據(jù)自己的需求選擇 file type returned這里選gzip compressed,這樣就可以下載到壓縮包格式的輸出文件。選text則下載文本格式。 output file一定要寫上一個文件名字,如果為空則后面無法下載,而只能在瀏覽器上查看。 最后點擊get output即可。 這里我選擇了它默認的whole gene。點擊get bed即可開始下載文件。 TSS附件信號強度畫圖在tss前后2kb的位置批量畫圖 mkdir /project/home/lyang/ChIP-seq_test/hg19.tss.bed && cd /project/home/lyang/ChIP-seq_test/hg19.tss.bed 還可以給多個bed文件來繪圖,還可以畫genebody的圖,因為原理一樣,我就不做過多介紹啦。 關(guān)于genebody,等回去后有空了看看這篇文獻:Gene body methylation can alter gene expression and is a therapeutic target in cancer. 上面的批量代碼其實就是為了統(tǒng)計全基因組范圍的peak在基因特征的分布情況,也就是需要用到
TSS附件信號強度結(jié)果解讀上面程序跑完后的結(jié)果導出到電腦上后: profile圖(相當于Heatmap圖中最上面的折線圖單獨展示) Heatmap圖 拿一個熱圖做具體說明: 可以認為在距離TSS上游x處,所有基因normalization后的信號值的均值為0.060。 對了,昨天的九月學徒轉(zhuǎn)錄組學習成果展(3萬字總結(jié))(上篇) 也是我寫的! 一定要繼續(xù)關(guān)注哦,下期更精彩! 學徒寫在最后
學徒已經(jīng)做的很優(yōu)秀了,一個月的時間總是短暫的,但學習的腳步不能停下,希望他回去以后能有更多的學習成果跟大家分享! 當然,如果你感興趣學徒培養(yǎng),也可以看看招學徒的通知: 你可以先看看我是如何培養(yǎng)學徒的: |
|