統計Binmap中某一親本基因型所佔總比例

在構建完binmap之後,往往需要統計各親本佔羣體的基因型比例。比如玉米中的B73-teosinte羣體,我們假設B73的基因型爲A,teosinte的基因型爲B,如果我們需要統計在整個羣體中teosinte所佔的基因型比例,這時候我們需要先將羣體中所有B基因型的bin的區間都提取出來,生成一個bed文件,如下圖,該bed文件共有三列,第一列爲染色體名稱,第二列爲其中一個基因型爲B的bin的起始物理位置,第三列爲同一個bin的終止物理位置。

 

bedtools merge可以對bed文件的區間進行取並集操作,但是如果我們直接使用bedtools merge對bed文件經常操作,往往會出現如下報錯:

該報錯的意思是bed文件的各個區間沒有進行sort處理,很顯然我們的第一反應是用linux 下的sort進行操作,如下:

結果表明,linux下自帶的sort命令並不能勝任,於是我們嘗試第二種策略,使用bedtools自帶的bedtools sort進行排序:

這樣我們就得到了在羣體範圍chr2中teosinte所佔基因型的全部總長,累加10條chr的teosinte的全部長度,然後處以參考基因組的總長,就是在整個羣體中teosinte所佔基因型的比例,也就是該羣體中teosinte在參考基因組中的覆蓋度。

 

總結如下:

統計binmap中某一親本基因型的比例,先將包含該親本基因型的所有bin的起始和終止的物理位置生成一個bed文件,然後先使用Linux下的sort和bedtools sort同時對該bed文件進行排序,再使用bedtools merge進行取並集,就可以得到該親本基因型在參考基因組上的覆蓋長度,最後用該親本的基因型全部總長處以參考基因組的總長度,即可以得到該親本在羣體中所佔的比例(該親本基因型在參考基因組上的覆蓋度)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章