美文网首页生信相关我爱编程
python一次性提取所有RNA的注释文件

python一次性提取所有RNA的注释文件

作者: Stone_Stan4d | 来源:发表于2018-04-12 13:30 被阅读113次

    从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语言来提取这个文件,听说有成熟的软件包可以调用。

    相关文章

      网友评论

        本文标题:python一次性提取所有RNA的注释文件

        本文链接:https://www.haomeiwen.com/subject/dzmxkftx.html