寫在前面
目前规婆,有大量物種的基因組序列和注釋信息公布澜躺。幾乎所有科研人員都可以下載并使用這些數(shù)據(jù),分析和驗(yàn)證自己的科研假設(shè)抒蚜。常常掘鄙,我們會(huì)遇到一些小問題,比如基因組序列文件中包含了大量無法錨定到染色體的片段嗡髓。這些片段操漠,當(dāng)然是有存在意義。但在下游數(shù)據(jù)應(yīng)用上饿这,基于不同分析目的浊伙,其實(shí)并不一定要用上。更或者保留這些序列长捧,反而不便于下游數(shù)據(jù)分析嚣鄙。舉兩個(gè)例子。
圖中菠蘿基因組序列文件中有大量scaffold串结,使得25個(gè)染色體(盡管是最大連鎖群)無法被很好的可視化哑子,拿到這個(gè)圖片舅列,自然無從分析。當(dāng)然卧蜓,擬南芥基因組序列也是類似帐要,葉綠體和線粒體基因組在這個(gè)分析中并無必要存在。
再看烦却,葡萄比對(duì)到自身的基因點(diǎn)陣圖
去掉 random 染色體碎片之后宠叼,如下
可以看出來先巴,其實(shí)圖片干凈了許多其爵,也才是我們關(guān)注的分析內(nèi)容。
總而言之伸蚯,過濾掉這些基因組序列中的碎片摩渺,常常有助于下游分析。而過濾策略其實(shí)往往簡(jiǎn)單剂邮。碎片摇幻,自然是長(zhǎng)度比非碎片的小得多。所以挥萌,我們只需要基于長(zhǎng)度做過濾即可绰姻。如果使用 之前版本的TBtools ,大體可以通過以下步驟實(shí)現(xiàn):
- 使用
Fasta Stat
獲得所有序列長(zhǎng)度 - 使用 Excel 或者 TBtools 表格工具引瀑,對(duì)長(zhǎng)度做排序狂芋,找到合適的長(zhǎng)度閾值
- 過濾并保留所有長(zhǎng)度不低于該閾值的序列 ID
- 使用 TBtools 提取這些序列
大體有至少換TBtools三個(gè)功能和四步操作。當(dāng)然憨栽,一般保險(xiǎn)起見帜矾,我們過濾完基因組序列,最好還要過濾一下基因結(jié)構(gòu)注釋文件.gff3/.gtf屑柔。這一步屡萤,使用 TBtools 的表格工具,其實(shí)也可以解決掸宛。
說了這么多死陆,其實(shí)只有一句話:太麻煩了!
新功能一次搞定
事實(shí)上唧瘾,我自己也被這個(gè)折磨了一段時(shí)間翔曲。想著有時(shí)間就寫一點(diǎn),期間不斷被各類事情打斷劈愚,一個(gè)原本可以用大半個(gè)小時(shí)寫完的功能瞳遍,卻整整跨越了一個(gè)星期【穑看了下掠械,感覺確實(shí)是一天寫三四行代碼。當(dāng)然,這并不影響功能的實(shí)現(xiàn)猾蒂,以及這個(gè)功能用起來到底有多爽均唉。
打開 TBtools 并找到這個(gè)功能,Genome Length Filter
肚菠。
首先是獲取長(zhǎng)度信息并排序舔箭,
設(shè)置并運(yùn)行如下,
點(diǎn)擊
Get Seq Length
之后蚊逢,TBtools會(huì)獲取层扶,排序并顯示所有序列長(zhǎng)度,基于序列 ID 和長(zhǎng)度烙荷。我們可以確定镜会,菠蘿這個(gè)基因組序列,要過濾掉碎片终抽,那么就設(shè)置長(zhǎng)度為 3739203
戳表。復(fù)制黏貼該長(zhǎng)度,設(shè)置輸出文件路徑昼伴,隨后
Start Filter
即可完成過濾匾旭。一氣呵成。
當(dāng)然圃郊,或許我們要同時(shí)過濾基因結(jié)構(gòu)注釋信息价涝,那么就點(diǎn)擊 (Optional) Gene Structure Annotation Filter
,通過文件選擇框描沟,設(shè)置基因結(jié)構(gòu)注釋信息文件即可飒泻。
點(diǎn)擊開始過濾,即可一次獲得過濾過的 基因組序列信息 和 基因結(jié)構(gòu)注釋信息吏廉。
pineapple.Chr.fa # 基因組序列文件
pineapple.Chr.fa.gxf # 如果輸入的是gtf文件泞遗,那么輸出就是gtf格式,如果輸入是gff3格式席覆,那么輸出也是gff3格式...
寫在最后
非常明顯史辙,這個(gè)功能其實(shí)是整合了 TBtools 已有的三個(gè)功能。盡管只是整合佩伤,我個(gè)人覺得還是非常實(shí)用聊倔。
有時(shí)候,我們并不是不知道問題的答案生巡,而是不知道我們其實(shí)還沒搞清楚問題是什么耙蔑。