GTF处理脚本 - GTFtools
主要功能及示例:
1)计算merged外显子
合并同一个基因的所有splice isoforms的外显子,并生成bed格式文件,可以用来计算具有多个isoforms的基因的非重叠外显子长度
python gtftools.py -m merged_exons.bed demo.gtf
2)计算independent introns
python gtftools.py -d independent_introns.bed demo.gtf
3)计算基因长度
由于一个基因可能有多个isoforms,因此作者提供了4种基因长度计算方法:mean,median,max及merged exons,其中merged exons就是TCGA count转tpm时所用的长度 。
python gtftools.py -l gene_length.txt demo.gtf
4)计算isoform长度
python gtftools.py -r isoform_length.txt demo.gtf
5)输出基因坐标和ID mappings
python gtftools.py -g genes.bed demo.gtf
6)提供SNP信息,输出cis-SNPs
python gtftools.py -p snp_list.txt demo.gtf > cisSNP.bed
7)提取基因上下游信息
例如提取基因上游2000,下游1000的信息
python gtftools.py -g gene.bed -f 2000-1000 demo.gtf
8)提取5’和3’splice site区域
python gtftools.py -q splice_regions.bed demo.gtf
9)提取外显子信息
python gtftools.py -e exons.bed demo.gtf
10)提取内含子信息
python gtftools.py -i introns.bed demo.gtf
11)提取基因间区信息
python gtftools.py -b intergenic_regions.bed demo.gtf
12)提取UTR信息
python gtftools.py -u utr.bed demo.gtf
更多功能,请下载使用
三、GTF小技巧
1)GTF注释是不断更新的,例如ensembl human的目前最新是v107,因此做分析时,一定要明确GTF版本号和基因组版本号,并且两者要匹配
2)GTF要与基因组对应。使用GTF前需要检查下是否与你所使用的基因组序列文件里边的染色体名字匹配,例如线粒体的要看清楚是chrMT还是chrM,有些加chr,有些不加chr
3)一般情况下我们关注的是chr1-22、X、Y、M这些染色体,random等不感兴趣的可以去掉
4)存在大量非标准的GTF,有些可以用程序直接转,有些可能需要人工调整,这需要经验和脚本编写能力
5)GTF文件一般很大,记得压缩和索引
一款纯Python编写的GTF处理脚本 - GTFtools - 简书 (jianshu.com)
GTFtools:a software package for analyzing various features of gene models