前言
??染色體外環(huán)狀DNA(extrachromosomal circular DNA奶段,eccDNA)则吟,一個(gè)科研界的新起之秀疲酌,隨著國(guó)際學(xué)術(shù)期刊《Nature》[1] 和《Cell》[2] 相繼發(fā)文后北秽,迅速引起研究人員的重視葡幸。eccDNA從正常基因組中分離或脫落下來羡儿,游離于染色體基因組之外礼患,以特殊的方式參與生理或病理過程是钥。隨著對(duì)eccDNA分子的研究掠归,目前對(duì)eccDNA的功能有一定的認(rèn)識(shí),未來還會(huì)有新的發(fā)現(xiàn)悄泥。2018年虏冻,發(fā)表于《Trends in Genetics》[3] 一篇綜述根據(jù)近些年的研究總結(jié)了eccDNA的主要功能,如下圖所示:
Circle-Map
??通過前人的研究可以看出eccDNA在生理或者病理過程中還是很重要的弹囚,既然這么重要厨相,那么該如何鑒定呢?下面我們就回到今天的主題鸥鹉,來看看如何鑒定eccDNA蛮穿。目前,市面上有一些鑒定軟件毁渗,例如:Circle-Map
[4]践磅、ECCsplorer
[5]、Circle_finder
等灸异,而我們今天要說的主角就是Circle-Map
府适,該軟件由python3編寫,安裝和使用都很方便肺樟,并且生成的結(jié)果也很簡(jiǎn)潔明了檐春。
- 軟件安裝
??可以直接使用pip命令直接安裝,完成后即可在命令行使用Circle-Map
命令么伯,該軟件包含以下五個(gè)子命令ReadExtractor
疟暖、Realign
、bam2bam
田柔、Repeats
俐巴、Simulate
,鑒定eccDNA主要使用前兩個(gè)命令即可凯楔。
pip install Circle-Map
- index準(zhǔn)備
??Circle-Map的輸入文件是bwa
生成的bam窜骄,在使用bwa
比對(duì)前需要構(gòu)建index,以及后續(xù)步驟會(huì)使用到參考基因組的fasta摆屯,需要用samtools對(duì)fasta建index:
bwa index hg38.fa
samtools faidx hg38.fa
- mapping
使用bwa
將數(shù)據(jù)比對(duì)到參考基因組上:
bwa mem -q hg38 sample.R1.fastq.gz sample.R2.fastq.gz | samtools view -bS -o sample.raw.bam
- sort
分別準(zhǔn)備 reads name 和 chromosome coordinate排序的bam邻遏,并對(duì)bam建index:
samtools sort -n -o sample.qname.bam sample.raw.sam
#samtools index sample.qname.bam
samtools sort -o sample.sort.bam sample.raw.sam
samtools index sample.sort.bam
- ReadExtractor
接著糠亩,使用上一步生成的按reads name排序的bam作為輸入,生成包含候選reads的bam准验,并對(duì)生成的bam按chromosome coordinate排序和建立index:
Circle-Map ReadExtractor -i sample.qname.bam -o sample.candidates.bam
samtools sort -o sample.candidates.sort.bam sample.candidates.bam
samtools index sample.candidates.sort.bam
這一步應(yīng)該會(huì)出現(xiàn)類似下面的提示:
[E::idx_find_and_load] Could not retrieve index file for 'sample.qname.bam'
Processed 25000000 reads in 2.764 mins
finished extracting reads. Elapsed time: 2.842184130350749 mins
Thanks for using Circle-Map
??可以看到程序還是運(yùn)行成功了赎线,這個(gè)提示可以選擇忽略,至于出現(xiàn)Could not retrieve index
提示的原因也很明確糊饱,就是沒有對(duì)bam建索引垂寥。那么,既然知道了原因?yàn)樯恫唤鉀Q呢另锋?這是因?yàn)閟amtools只能對(duì)chromosome coordinate排序的bam建索引滞项,而這里用的是reads name排序的bam,所以還是直接選擇忽略這個(gè)提示吧夭坪!
- Realign
最后文判,使用前面生成的sample.candidates.sort.bam、sample.qname.bam室梅、sample.sort.bam三個(gè)bam文件以及參考基因組的fasta文件作為輸入戏仓,使用Realign
來鑒定eccDNA:
Circle-Map Realign -i sample.candidates.sort.bam -qbam sample.qname.bam -sbam sample.sort.bam -fasta hg38.fa -o sample.circle.bed
??當(dāng)程序正常運(yùn)行結(jié)束后,會(huì)生成bed格式的文件sample.circle.bed亡鼠,內(nèi)容如下:
chr7 143911105 143917553 12 7 251.0 29.97115384615385 5.408852146902424 1.0 0.9988734509951184 0.0
注意事項(xiàng)
??Circle-Map使用過程還是很簡(jiǎn)單的赏殃,但是使用的時(shí)候還是有一些需要注意的點(diǎn)。重點(diǎn)來了间涵!重點(diǎn)來了仁热!重點(diǎn)來了!這個(gè)軟件(version=1.1.4)有些小bug浑厚,如ReadExtractor
命令的輸入和輸出文件不能帶有路徑股耽,否則程序會(huì)運(yùn)行出錯(cuò)。這個(gè)問題的原因是該軟件會(huì)自動(dòng)獲取當(dāng)前的工作路徑钳幅,然后會(huì)將這個(gè)路徑和輸入拼接起來物蝙,這樣的話,如果你的輸入文件不在當(dāng)前目錄就會(huì)出現(xiàn)找不到輸入文件的錯(cuò)誤敢艰。那么诬乞,想要正常運(yùn)行:一是在輸入文件的目錄下運(yùn)行,二是修改一下源碼钠导,可以到模塊目錄下找到extract_circle_SV_reads.py
文件震嫉,將raw_bam = ps.AlignmentFile(self.working_dir + "/" + self.sorted_bam, "rb")
替換為ps.AlignmentFile(self.sorted_bam, "rb")
即可。還有一個(gè)需要注意的參數(shù)-dir
牡属,這個(gè)參數(shù)的意義是切換工作路徑票堵,如果想要指定輸出目錄可以用這個(gè)參數(shù),不要在輸出文件名里面加路徑逮栅!因?yàn)檐浖矔?huì)自動(dòng)把工作路徑和輸出文件名拼接起來悴势。不知道出于什么原因窗宇,作者要這么設(shè)計(jì)程序,使用起來感覺怪怪的特纤!
??Realign
使用起來也有同樣的注意事項(xiàng)军俊,輸出跟ReadExtractor
完全一樣,而輸入只有-sbam
參數(shù)的輸入bam不能帶路徑捧存,簡(jiǎn)單點(diǎn)的解決方法跟上面第一點(diǎn)粪躬,在bam文件所在目錄運(yùn)行,二是修改模塊文件Coverage.py
里面的代碼昔穴,將self.bam = ps.AlignmentFile(directory + "/" + sorted_bam, "rb")
替換為self.bam = ps.AlignmentFile(sorted_bam, "rb")
镰官。
結(jié)束語
??鑒定eccDNA的軟件還有其他的選擇,比如前面提到的另外兩款軟件ECCsplorer
傻咖、Circle_finder
朋魔,對(duì)于Circle_finder
本人并沒有接觸過岖研,這里就不再贅述卿操。不過,ECCsplorer
是本人一開始打算使用的軟件孙援,因?yàn)檫@款軟件比較新害淤,而且從文章的結(jié)果來看比Circle-Map
有優(yōu)勢(shì),并且這個(gè)軟件的分析內(nèi)容也較豐富一些拓售,還有就是能生成可視化的網(wǎng)頁報(bào)告窥摄。看完文章的介紹就心動(dòng)了础淤,確定要用這款軟件崭放。讓人沒有想到的是該軟件安裝起來就挺費(fèi)勁,雖然介紹說支持conda
安裝鸽凶,但是用conda
安裝一晚上沒有啥動(dòng)靜币砂。那只能放棄自動(dòng)安裝,選擇手動(dòng)安裝玻侥,從安裝到能正常使用决摧,過程著實(shí)有些不易!最終還是成功安裝了凑兰,并且用軟件自帶的數(shù)據(jù)也成功運(yùn)行了掌桩。本以為可以順利地分析的數(shù)據(jù)了,但程序運(yùn)行過程中還是錯(cuò)誤了姑食,有因?yàn)閮?nèi)存不足中斷的波岛,有卡死的,現(xiàn)場(chǎng)可謂凄凄慘慘戚戚音半!咱用的服務(wù)器集群不算差啊则拷,單個(gè)節(jié)點(diǎn)24cpu200G內(nèi)存灰蛙。可見這款軟件對(duì)資源要求確實(shí)很高隔躲,這一點(diǎn)作者倒沒有遮掩摩梧,在文章末尾也提到了這個(gè)局限性。所以宣旱,ECCsplorer
沒有優(yōu)化版本前仅父,最好還是不要嘗試了,反正本人選擇放棄使用了浑吟!畢竟笙纤,做分析選一款好用的工具可以提高不少的效率啊组力!
參考資料
-
《Circular ecDNA promotes accessible chromatin and high oncogene expression》 ?
-
《Functional Enhancers Shape Extrachromosomal Oncogene Amplifications》 ?
-
Discoveries of Extrachromosomal Circles of DNA in Normal and Tumor Cells ?
-
https://github.com/iprada/Circle-Map/wiki/Tutorial:-Identification-of-circular-DNA-using-Circle-Map-Realign ?
-
ECCsplorer: a pipeline to detect extrachromosomal circular DNA (eccDNA) from next?generation sequencing data ?