官方使用參考:http://mummer.sourceforge.net/manual
中文原理解釋+教程參考:http://www.reibang.com/p/2e184e5c15b7
安裝MUMmer
MUMmer的各版本可以從 https://sourceforge.net/projects/mummer/ 下載
我用的是3.23版的
wget https://jaist.dl.sourceforge.net/project/mummer/mummer/3.23/MUMmer3.23.tar.gz
tar -xvzf MUMmer3.0.tar.gz #解壓壓縮包。你可以輸入“rar --help”查看“-xzvf”分別代表什么意思
make check #確保makefile能夠識別程序色徘。如果沒有出現(xiàn)錯誤消息恭金,則診斷成功,可以繼續(xù)褂策。
#但是横腿,如果顯示錯誤消息,則無法通過系統(tǒng)路徑訪問所列出的程序辙培。如果需要蔑水,請安裝相關(guān)程序,將它們添加到您的系統(tǒng)PATH變量中扬蕊,然后輸入以下命令繼續(xù)安裝MUMmer:
make install #如果報錯了,可能是gcc出了問題丹擎。解決方法請看《官方使用參考》
使用MUMmer
注:請到 /MUMmer-version/ 目錄下使用尾抑,要不然就把bin目錄添加到環(huán)境變量里(我沒有找到bin目錄是哪個,所以我沒添加)
步驟一:nucmer用于比對
我用的是nucmer蒂培,因為它用于關(guān)系密切的多序列比對再愈。它先找到給定長度的最大精確匹配,然后將這些匹配聚類形成更大的不精確對齊區(qū)域护戳。最后翎冲,它將每個匹配的對齊向外擴展,將集群加入到一個單獨的高分成對對齊中媳荒。這使得NUCmer最適合定位和顯示高度保守的DNA序列區(qū)域抗悍。
很多時候驹饺,需要將兩個尚未完成的基因組或兩個基因組與多個染色體對齊。這可能會更復(fù)雜一些缴渊,因為必須為每個可能的序列配對生成單獨的比對赏壹。NUCmer和PROmer都能自動化這一過程,并接受多個fasta文件輸入衔沼,從而簡化了對齊兩組contigs蝌借、scaffold或染色體的過程。
- promer:是Perl寫的流程指蚁,它用以翻譯后的氨基酸序列 進行聯(lián)配菩佑,工作原理同nucmer;
- run-mummer1, run-mummer3: 兩者是基于cshell寫的流程凝化,用于兩個序列的常規(guī)聯(lián)配擎鸠,和promer,nucmer類似缘圈,只不過能夠自動識別序列類型劣光。它們擅長聯(lián)配相似度高的DNA序列,找到它們的不同糟把,也就是適合找SNP或者糾錯绢涡。前者用于1v1、無重排遣疯,后者1v多雄可、有重排。
nucmer用法:
nucmer [options] <reference file> <query file>
options參數(shù)解釋:
--minmatch/-l: 單個匹配最小長度
--forwoard/-f, --reverse/-r: 只匹配正鏈或只匹配負(fù)鏈缠犀。
--mincluster/-c: 用于聚類的匹配最低長度数苫,默認(rèn)65
--maxgap/-g: 兩個相鄰匹配間的最大gap長度,默認(rèn)90
--diagdiff/-D: 一個聚類中兩個鄰接匹配辨液,最大對角差分虐急,默認(rèn)5
--diagfactor/-d: 也是和對角差分相關(guān)參數(shù),只不過和gap長度有關(guān)滔迈,默認(rèn)0.12
--breaklen/-b: 在對聯(lián)配兩端拓展式止吁,在終止后繼續(xù)延伸的程度,默認(rèn)200
--[no]extend:是否外延燎悍,默認(rèn)是
--[no]optimize:是否優(yōu)化敬惦,默認(rèn)是。即在聯(lián)配分?jǐn)?shù)較低時不會立刻終止谈山,而是回顧整條聯(lián)配俄删,看能否茍延殘喘一會。
--depend: 顯示依賴信息后退出
--coords: 調(diào)用show-coords輸出坐標(biāo)信息
--prefix/-p: 輸出文件的前綴
--[no]delta: 是否輸出delta文件,默認(rèn)是
--threads/-t: 多核心
---delta=PATH: 指定位置畴椰,而不是當(dāng)前
--sam-short=PATH:保存為SAM短格式
--sam-long=PATH: 保存為SAM長格式
--save=PREFIX:保存suffix array
--load=PREIFX:加載suffix array
步驟二:delta-filter用于過濾比對結(jié)果
用法:
delta-filter -i 90 -l 5000 -m jgc.delta > jgc_i90_m_delta.filter
參數(shù)解釋:
-i: 最小的相似度 [0,100], 默認(rèn)0
-l: 最小的匹配長度 默認(rèn)0.
-u: 最小的聯(lián)配唯一度 [0,100], 默認(rèn)0
-o: 最大重疊度臊诊,針對-r和-q設(shè)置。 [0,100], 默認(rèn)100
-g: 1對1全局匹配迅矛,不允許重排
-1: 1對1聯(lián)配妨猩,允許重排,是-r和-q的交集
-m: 多對對聯(lián)配秽褒,允許重排壶硅,是-r和-q的合集。
-q: 僅保留每個query在reference上的最佳位置,允許多條query在reference上重疊
-r: 僅保留每個reference在query上的最佳位置,允許多條reference在query上重疊
步驟三:用mummerplot畫共線性散點圖
用法:
mummerplot -p jgc jgc_i90_m_delta.filter --png --filter
參數(shù)介紹:
-b|breaklen:突出顯示斷點距離最近的序列末端比斷點核苷酸更遠(yuǎn)的排列
-f / --filter:只顯示對任意序列上任何特定點的“最佳”命中的.delta文件比對销斟,即引用子序列和查詢子序列的一對一映射
-h / --help:顯示幫助信息(說明書)
-p|prefix:設(shè)置文件前綴(默認(rèn)是 'out')
-t|terminal:設(shè)置輸出的是png格式還是postscript(PS格式的)還是X11
得出結(jié)果
sz jgc.png #下載文件