python一次性提取所有RNA的注释文件
2018-04-12 本文已影响113人
Stone_Stan4d
从ensembl下载的人RNA注释文件gtf格式,从里面提取RNA的关键信息:
代码如下:
# -*- coding:utf-8 -*-
import os
import csv
os.chdir(r'E:\2018\lncRNA与mRNA分离')
# 先处理GTF文件,lncRNA存入列表
allRNA = open('allRNA.csv', 'w', newline = '')
allWriter = csv.writer(allRNA,delimiter=',',lineterminator='\r\n')
allWriter.writerow(['genensmbl', 'genename', 'genetype'])
with open("Homo_sapiens.GRCh38.92.chr.gtf", 'r') as f_gtf:
for line in f_gtf:
if line.startswith('#'):
continue
line = line.strip('\n').split('\t')
genetype = line[2]
'''
j = 2 if (genetype == 'gene') else 3
genensmbl = line[8].split(';')[0].split('"')[1]
genename = line[8].split(';')[j].split('"')[1]
'''
if genetype == 'gene':
genensmbl = line[8].split(';')[0].split('"')[1]
genename = line[8].split(';')[2].split('"')[1]
genetype = line[8].split(';')[4].split('"')[1]
allWriter.writerow([genensmbl, genename, genetype])
f_gtf.close()
allRNA.close()
这是提取完成后的表格,RNA类型有多种:
image.png
下一次尝试用R语言来提取这个文件,听说有成熟的软件包可以调用。