首页 > 编程语言 > 详细

【数据处理】python将GO注释结果整理为WEGO文件

时间:2020-06-29 00:00:01      阅读:95      评论:0      收藏:0      [点我收藏+]

通常,比对NR库后为m8格式,通过NR和GO数据库对应关系文件,写代码整理为Gene——>GO文件,如下:
技术分享图片
这里是一对一的关系,要转换为WEGO格式文件,即一对多关系,如下:
技术分享图片
用python脚本处理代码示例如下:

#! /usr/bin/env python
import optargs
import os
import sys

usage=‘‘‘
    tidy go annotation file to wego file
‘‘‘

option = optparse.OptionParser(usage)
option.add_option(‘‘,‘--infile‘,help=‘* annot file‘,default=‘‘)
option.add_option(‘‘,‘--outfile‘,help=‘* outfile‘,default=‘‘)

(opts,args) = option.parse_args()
infile = opts.infile
outfile = opts.outfile

def main():
    acc2go = {}
    res = open(outfile,‘w‘)
    for line in open(infile,‘r‘):
        line = line.strip().split(‘\t‘)
        if len(line) < 2: continue
        accession = line[0]
        go = line[1]
        acc2go.setdefault(accession, set()).add(go)

    for acc,goi in acc2go.items():
        res.write("%s\t%s\n"%(acc, "\t".join(goi)))
    res.close()

if __name__ == ‘__main__‘:
    if len(sys.argv) < 2:
        os.system("python %s -h"%(sys.args[0]))
        sys.exit(1)
    else:
        main()

【数据处理】python将GO注释结果整理为WEGO文件

原文:https://www.cnblogs.com/jessepeng/p/13205633.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!