使用Tbtools根據(jù)gtf文件統(tǒng)計基因密度

做長鏈非編碼RNA(lncRNA)的數(shù)據(jù)分析,有一個部分是比較mRNA和lncRNA在染色上的分布密度,做完Hisat2——stringtie流程能夠分別拿到mRNA和lncRNA的gtf格式注釋文件,那如何根據(jù)這兩個文件按指定的步長計算基因密度呢?

經(jīng)過搜索找到了非常方便的工具是tbtools

參考推文

image.png
  • 1 是輸入的gtf文件

  • 2 是步長

  • 3 Defined Feature Tag 這個是什么意思暫時沒有搞明白 默認(rèn)的是Guess,如果采用默認(rèn)我這邊會遇到報錯,改成exon就可以了

  • 輸出文件的路徑

最終部分結(jié)果


image.png

這里遇到一個問題是不是從小到大依次排列下來的,這個可以后續(xù)改

也可以先把自己的gtf文件里的順序更改一下,使用到的工具是 Tbtools里的 GXF Fix

這里參考

image.png

還找到了一個R語言的代碼可以統(tǒng)計基因密度

參考鏈接 https://davetang.org/muse/2017/08/04/read-gtf-file-r/
https://www.biostars.org/p/169171/

代碼

library(dplyr)
library(rtracklayer)
my_obj<-import("gene_density/i.gtf")
my_obj
my_obj@seqinfo@seqlengths<-read.table("gene_density/chr_len.txt",header=F,sep="\t")$V2

my_obj@seqnames@values
my_obj@seqnames@lengths


seqinfo(my_obj)
pome.windows = tileGenome(seqinfo(my_obj), tilewidth=100000, cut.last.tile.in.chrom=T)
pome.windows$totalgenes<-countOverlaps(pome.windows,my_obj)
data.frame(pome.windows) %>% 
  write.table(file = "gene_density/1.tsv",quote=F,row.names = F,sep="\t")

pome.windows = tileGenome(seqinfo(reduce(my_obj)), tilewidth=100000, cut.last.tile.in.chrom=T)
pome.windows$totalgenes<-countOverlaps(pome.windows,reduce(my_obj))
data.frame(pome.windows) %>% 
  write.table(file = "gene_density/1-1.tsv",quote=F,row.names = F,sep="\t")

但是這個結(jié)果好像不對,暫時看不太懂這個代碼

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容