寫在前面
更好的閱讀體驗(yàn)請(qǐng)移步這里恒水。
確定染色體同源片段是基因組學(xué)研究的一個(gè)重要方面温峭,有助于揭示基因組在歷史上發(fā)生的多種多樣的進(jìn)化事件,如DNA復(fù)制陆蟆、染色體重排雷厂、基因丟失等。研究發(fā)現(xiàn)叠殷,谷物之間改鲫、哺乳動(dòng)物之間、分屬不同種的酵母之間都存在大規(guī)模的染色體同源片段林束;物種內(nèi)部也常發(fā)現(xiàn)由于大規(guī)南窦基因組復(fù)制而形成的同源片段;約80%的擬南芥基因組處于復(fù)制區(qū)壶冒,分析表明缕题,擬南芥的進(jìn)化過程中,至少發(fā)生了一次或三次多倍化事件胖腾。正是由于這種大規(guī)模的復(fù)制事件烟零,大量染色體發(fā)生重排、丟失和插入等咸作,從而使染色體片段間的關(guān)系變得面目全非锨阿,對(duì)同源染色體片段的判斷造成了困難,因此便有了這樣一種有效的檢測(cè)工具——ColinearScan记罚。
由于該軟件的主要作者之一是本科時(shí)的學(xué)院院長墅诡,故在本科時(shí)的科研中使用較多,所以在此介紹一下基本用法桐智。
簡介
ColinearScan主要基于動(dòng)態(tài)規(guī)劃算法并采用基因共線性方法來檢測(cè)同源染色體片段末早,該軟件的主要特點(diǎn)是:
合理的統(tǒng)計(jì)推斷
較強(qiáng)的適應(yīng)性
計(jì)算的高效性
參數(shù)選擇方面,尤其是相鄰?fù)椿驅(qū)嚯x的確定说庭,依據(jù)基因組的特點(diǎn)做了合理的分析然磷,對(duì)推斷的同源區(qū)顯著性也做了深入的統(tǒng)計(jì)學(xué)檢驗(yàn)
之前的共線性的方法有一些缺陷,最大問題在于參數(shù)選擇基于經(jīng)驗(yàn)口渔,沒有深入合理的理論分析样屠。例如相鄰?fù)椿驅(qū)χg的距離是一個(gè)重要參數(shù),經(jīng)驗(yàn)方法難以取定一個(gè)合適的值缺脉,而把不適當(dāng)?shù)闹涤糜趯ふ彝磪^(qū)域,會(huì)使結(jié)果嚴(yán)重地偏離實(shí)際情況悦穿。
安裝
安裝環(huán)境
-
C++ 編譯器和庫
如果是從源碼編譯軟件來安裝攻礼,就需要與ANSI C++兼容的編譯器,比如GNU GCC栗柒。目前礁扮,ColinearScan已經(jīng)使用GCC 3.0(X86和AMD64平臺(tái))和GCC 4.0成功編譯知举。
ColinearScan使用了C++標(biāo)準(zhǔn)庫(STL),因此建議使用與GCC一致的STL太伊。
-
PERL解釋器和模塊
PERL解釋器雇锡,并將其加入環(huán)境變量或安裝在
/usr/bin
目錄下。BioPerl模塊僚焦,某些腳本可能需要該模塊锰提。
其它PERL模塊,Getopt::Long和Pod::Usage芳悲,詳細(xì)信息可搜索CPAN立肘。
-
Make程序
如果是從源碼編譯安裝,建議使用GNU make程序名扛。
安裝步驟
源碼
下載源碼壓縮包谅年。
解壓縮。
gzip -dc ColinearScan-1.0.1.tar.gz | tar xv
cd ColinearScan
- 配置ColinearScan 的安裝目錄肮韧,下面以安裝到
/home/chip/tools/ColinearScan
為例融蹂,如果沒有改變安裝位置,則默認(rèn)安裝到/usr/local
目錄弄企。
./configure --prefix=/home/chip/tools/ColinearScan
- 編譯并安裝殿较。
make
make install
- 將可執(zhí)行程序路徑加入環(huán)境變量。
echo 'export PATH=$PATH:/home/chip/tools/ColinearScan/bin' >> ~/.bashrc
預(yù)編譯文件
官網(wǎng)提供了Linux X86和Linux AMD64兩個(gè)平臺(tái)的預(yù)編譯安裝文件桩蓉,如果想下載淋纲,要先確定自己的系統(tǒng)是否適合。
下載適合自己的安裝包院究。
解壓縮安裝包洽瞬。
gzip -dc ColinearScan-1.0.1-i686-linux.tar.gz | tar xv
- 將可執(zhí)行程序路徑加入環(huán)境變量。
echo 'export PATH=$PATH:/home/chip/tools/ColinearScan/bin' >> ~/.bashrc
RPM包
RPM包是安裝Linux軟件最簡單的方式业汰。需要注意的是伙窃,官網(wǎng)提供的安裝包是基于Fedora Core 4 X86平臺(tái)的。
下載安裝包样漆。
安裝RPM包需要root權(quán)限为障,因此需要先查看當(dāng)前是否是root用戶。
whoami
如果不是放祟,需切換為root鳍怨。
- 安裝。
rpm -ivh ColinearScan-1.0.1-i686-fedora.rpm
運(yùn)行步驟
下面的步驟展示了如何使用CoinearScan來檢測(cè)擬南芥的2號(hào)和秈稻的5號(hào)染色體之間的共線性片段跪妥。
BLAST
BLAST用于獲得2條染色體之間的同源基因?qū)πM南芥的2號(hào)和秈稻的5號(hào)染色體之間的BLAST比對(duì)結(jié)果文件已經(jīng)準(zhǔn)備好,即ath_chr2_indica_chr5.blast眉撵。
提取BLAST結(jié)果中的基因?qū)?/h3>
提取BLAST結(jié)果中符合要求的基因?qū)φ煜悖嚓P(guān)參數(shù)有兩個(gè)落塑,score和evalue,下面是提取score > 100的示例:
cat ath_chr2_indica_chr5.blast | get_pairs.pl --score 100 > ath_chr2_indica_chr5.pairs
屏蔽高度重復(fù)位點(diǎn)
由于連續(xù)的單基因復(fù)制而產(chǎn)生的高度重復(fù)位點(diǎn)會(huì)使得共線性區(qū)域檢測(cè)變得十分困難罐韩。因此憾赁,可通過repeat_mask.pl程序來屏蔽那些高度重復(fù)位點(diǎn)。如果某些位點(diǎn)的基因?qū)?shù)量超過了設(shè)置的參數(shù)散吵,則將其視為高度重復(fù)區(qū)域并將其從基因?qū)ξ募衅帘巍?/p>
cat ath_chr2_indica_chr5.pairs | repeat_mask.pl -n 5 > ath_chr2_indica_chr5.purged
估計(jì)最大間隙長度
最大間隙長度(mg)是檢測(cè)共線性區(qū)域的重要參數(shù)龙考。max_gap.pl程序可以使用基因?qū)ξ募砉烙?jì)mg值。需要注意的是错蝴,估計(jì)mg值還需要染色體長度文件(詳細(xì)的文件格式介紹洲愤,請(qǐng)參閱文件格式部分)。
max_gap.pl --lenfile ath_chrs.lens --lenfile indica_chrs.lens --suffix purged
檢測(cè)共線性片段
當(dāng)有了mg值后顷锰,就可以用它來檢測(cè)染色體之間的共線性區(qū)域柬赐。
block_scan.pl --mg 321000 --mg 507000 --lenfile ath_chrs.lens --lenfile indica_chrs.lens --suffix purged
為了提高效率,上述流程也可以寫為一個(gè)shell腳本官紫,代碼如下:
#!/bin/sh
?
do_error()
{
echo "Error occured when running $1"
exit 1
}
?
echo "Start to run the working example..."
echo
?
echo "* STEP1 Extract pairs from BLAST results"
echo " We should parse BLAST results and extract pairs of anchors (genes in this example) satisfying our rule (score >= 100)."
echo
echo " > cat ath_chr2_indica_chr5.blast | get_pairs.pl --score 100 > ath_chr2_indica_chr5.pairs"
echo
cat ath_chr2_indica_chr5.blast | get_pairs.pl --score 100 > ath_chr2_indica_chr5.pairs || do_error get_pairs.pl
echo
?
echo "* STEP2 Mask highly repeated anchor"
echo " Highly repeated anchors which are mostly generated by continuous single gene duplication events make those colinear segements vague to be detected. We mask them off using a very simple algorithm."
echo
echo " > cat ath_chr2_indica_chr5.pairs | repeat_mask.pl -n 5 > ath_chr2_indica_chr5.purged"
echo
cat ath_chr2_indica_chr5.pairs | repeat_mask.pl -n 5 > ath_chr2_indica_chr5.purged || do_error repeat_mask.pl
echo
?
echo "* STEP3 Estimate maximum gap length"
echo " Use pair files with repeats masked to estimate mg values which will be used to detected colinear blocks."
echo
echo " > max_gap.pl --lenfile ath_chrs.lens --lenfile indica_chrs.lens --suffix purged"
echo
max_gap.pl --lenfile ath_chrs.lens --lenfile indica_chrs.lens --suffix purged || do_error max_gap.pl
echo
?
echo "* SETP4 Detect blocks from pair file(s)"
echo " Everything's ready do scan at last."
echo
echo " > block_scan.pl --mg 321000 --mg 507000 --lenfile ath_chrs.lens --lenfile indica_chrs.lens --suffix purged"
echo
block_scan.pl --mg 321000 --mg 507000 --lenfile ath_chrs.lens --lenfile indica_chrs.lens --suffix purged || do_error block_scan.pl
echo
?
echo "Now ath_chr2_indica_chr5.blocks contains predicted colinear blocks."
文件格式
基因?qū)ξ募?/h3>
基因?qū)ξ募?條染色體之間或1條染色體內(nèi)發(fā)現(xiàn)的基因?qū)Ω厮巍N募拿恳恍惺且粚?duì)基因或標(biāo)記位點(diǎn)的記錄。
#anchor orientation position anchor orientation position
OsIBCD007232 1 26277701 OsIBCD015822 -1 32139191
染色體長度文件
染色體長度文件包含物種的染色體長度束世。每行對(duì)應(yīng)于物種的一條染色體酝陈,包括2個(gè)部分。首先是染色體號(hào)毁涉,第二個(gè)是長度(以bp或cM表示)沉帮。
5 31202585
共線性區(qū)域文件
在該文件中包括預(yù)測(cè)的共線性區(qū)域。每個(gè)區(qū)域都有一個(gè)描述行(第一行)贫堰,顯示用于搜索共線性區(qū)域的mg值穆壕。
+++++++++++++++++ MAXIMUM GAP LENGTH 500000 500000
每個(gè)共線性區(qū)域包含多行,包括區(qū)域的首行其屏,中間幾行喇勋,以及p值的統(tǒng)計(jì)行。
the 1th path length 15
OsIBCD029268 2.01061e+07 LOC_Os10 1.81952e+07 1
OsIBCD029264 2.00692e+07 LOC_Os10 1.83001e+07 -1
OsIBCD029250 1.99637e+07 LOC_Os10 1.85672e+07 1
OsIBCD029222 1.97822e+07 LOC_Os10 1.89026e+07 -1
OsIBCD029198 1.95817e+07 LOC_Os10 1.92271e+07 -1
OsIBCD029186 1.95031e+07 LOC_Os10 1.95171e+07 -1
OsIBCD029169 1.93285e+07 LOC_Os10 1.96994e+07 -1
OsIBCD029166 1.93003e+07 LOC_Os10 1.97443e+07 -1
OsIBCD044787 1.92408e+07 LOC_Os10 1.97995e+07 -1
OsIBCD029122 1.88742e+07 LOC_Os10 2.01553e+07 1
OsIBCD029076 1.84667e+07 LOC_Os10 2.0168e+07 1
OsIBCD029060 1.83421e+07 LOC_Os10 2.03553e+07 1
OsIBCD028992 1.78464e+07 LOC_Os10 2.04401e+07 1
OsIBCD028983 1.77888e+07 LOC_Os10 2.06978e+07 1
OsIBCD044725 1.73026e+07 LOC_Os10 2.07117e+07 -1
>LOCALE p-value : 7.78723e-15
其它相關(guān)軟件
MCScanX
MCScan是一個(gè)通過掃描多個(gè)基因組或亞基因組以識(shí)別染色體的同源區(qū)域的工具偎行,并可以使用基因位點(diǎn)來比對(duì)這些區(qū)域川背。MCScanX工具包對(duì)原有的MCScan工具包做了相應(yīng)的調(diào)整,以用于檢測(cè)共線性區(qū)域蛤袒,并整合了15個(gè)程序來對(duì)結(jié)果進(jìn)行可視化和進(jìn)一步的分析熄云。
SynFind
SynFind是在一個(gè)基因組中檢測(cè)給定基因組的共線性區(qū)域。在分析時(shí)汗盘,SynFind可以檢測(cè)待搜索基因組中所有基因相關(guān)的共線性區(qū)域皱碘,并且可以下載完整的共線性基因集,同時(shí)可以生成同線性深度表以獲得查詢基因組和每個(gè)目標(biāo)基因組之間的多倍化水平隐孽。
Satsuma
Satsuma是一種可以比對(duì)復(fù)雜DNA序列的工具癌椿,其可以提供最大的靈敏度,特異性和速度菱阵。該軟件目前是Spines軟件包的一部分踢俄,可以免費(fèi)下載安裝。
Cinteny
Cinteny服務(wù)器可用于檢測(cè)多個(gè)基因組間的共線性區(qū)域晴及,并使用反轉(zhuǎn)距離作為度量來檢測(cè)基因組重排的程度都办。
OrthoCluster
OrthoCluster是一種快速且易于使用的網(wǎng)頁程序,可用于識(shí)別多個(gè)基因組間的共線性區(qū)域虑稼。OrthoCluster還可用于查找基因組中的重復(fù)區(qū)域琳钉。OrthoClusterDB提供了一個(gè)網(wǎng)頁界面,用于運(yùn)行OrthoCluster蛛倦,其中包含用戶自定義數(shù)據(jù)集和參數(shù)歌懒,以及瀏覽和下載不同基因組的共線性區(qū)域數(shù)據(jù)。
SynMap
SynMap可以在兩個(gè)物種之間生成一個(gè)共線性點(diǎn)圖溯壶,并識(shí)別共線性區(qū)域及皂。
SyMAP
SyMAP v4.2是一個(gè)軟件包,用于檢測(cè)且改,可視化和查詢?nèi)旧w和物理圖譜之間的共線性關(guān)系验烧。它可以用于中到高等真核生物基因組(細(xì)菌除外)。它可以將基因組草圖與參考基因組對(duì)齊又跛,但不能將草圖與草圖對(duì)齊碍拆。
Genomatix
該軟件可用于在其他物種中搜索直系同源區(qū)域。
AutoGRAPH
AutoGRAPH是用于多物種比較基因組分析的網(wǎng)頁服務(wù)器。它可以用于構(gòu)建和可視化兩個(gè)或三個(gè)物種之間的共線性圖譜,確定和顯示物種之間的宏觀和微觀共線性關(guān)系用含,以及進(jìn)化事件位點(diǎn)订晌。
SynChro
SynChro是一種用于檢測(cè)保守的共線性區(qū)域的工具。它可以檢測(cè)多個(gè)基因組間的共線性區(qū)域诗茎。
SyntenyView
Ensembl SyntenyView可以顯示物種之間的大量基因的共線性關(guān)系。
Sibelia
Sibelia可以幫助分析與病原體相關(guān)的基因組變異。Sibelia也可以用于多種微生物菌株的進(jìn)化和基因組重排研究谱秽。
SynOrth
Synorth 可以用于研究脊椎動(dòng)物基因組中基因組調(diào)控區(qū)(GRBs)的進(jìn)化變化研究,特別是硬骨魚類全基因組重復(fù)后的變化摹迷。
i-ADHoRe
i-ADHoRe是一種用于檢測(cè)不同基因組內(nèi)和間的同源關(guān)系的工具疟赊。
PoFF
PoFF是Proteinortho工具包的擴(kuò)展包,其整合了保守的共線性區(qū)域的數(shù)據(jù)以檢測(cè)直系同源關(guān)系峡碉。
SimpleSynteny
SimpleSynteny是一個(gè)網(wǎng)頁工具近哟,可輕松生成美觀的圖片。該程序可以使用1-60個(gè)基因?qū)碜?-10個(gè)基因組的選定重疊群進(jìn)行靶向分析鲫寄。
參考
Wang X, Shi X, Li Z, et al. Statistical inference of chromosomal homology based on gene colinearity and applications to Arabidopsis and rice[J]. BMC bioinformatics, 2006, 7(1): 447.
Wang Y, Tang H, DeBarry J D, et al. MCScanX: a toolkit for detection and evolutionary analysis of gene synteny and collinearity[J]. Nucleic acids research, 2012, 40(7): e49-e49.
Tools to detect synteny blocks regions among multiple genomes