Annotations on yeast from Stanford mdb.
This commit is contained in:
parent
0904a59310
commit
947cf8385f
|
@ -0,0 +1,44 @@
|
||||||
|
|
||||||
|
def smdb_annot(orflist=None, input_fname='registry.genenames.tab', output_fname='yeast.annot'):
|
||||||
|
|
||||||
|
"""Reads registry.genenames.tab from the Stanford yeast
|
||||||
|
microarray database.
|
||||||
|
|
||||||
|
Available from:
|
||||||
|
ftp://genome-ftp.stanford.edu/pub/yeast/data_download/gene_registry/registry.genenames.tab
|
||||||
|
|
||||||
|
input: orf -- list of orfs (open reading frames)
|
||||||
|
file -- (optional) file to fetch info from
|
||||||
|
|
||||||
|
registry.genames contains:
|
||||||
|
|
||||||
|
0 = Locus name
|
||||||
|
1 = Other name
|
||||||
|
2 = Description
|
||||||
|
3 = Gene product
|
||||||
|
4 = Phenotype
|
||||||
|
5 = ORF name
|
||||||
|
6 = SGDID
|
||||||
|
|
||||||
|
NB! Other name, Gene product and Phenotype may have more
|
||||||
|
than one mapping. These are separated by |
|
||||||
|
|
||||||
|
Output: writes an annotation file
|
||||||
|
|
||||||
|
"""
|
||||||
|
outfile = open(output_fname, 'w')
|
||||||
|
header = "Orf\tLocus_id\tOther_name\tDescription\tGene_product\tPhenotype\tSGD_ID\n"
|
||||||
|
outfile.write(header)
|
||||||
|
text = open(input_fname, 'r').read().splitlines()
|
||||||
|
for line in text:
|
||||||
|
els = line.split('\t')
|
||||||
|
orf_name = els.pop(5)
|
||||||
|
if orf_name!='': # we dont care about non-named orfs
|
||||||
|
if orflist and orf_name not in orflist:
|
||||||
|
break
|
||||||
|
for e in els:
|
||||||
|
if e !='':
|
||||||
|
outfile.write(str(e) + "\t")
|
||||||
|
else:
|
||||||
|
outfile.write("NA")
|
||||||
|
f.write("\n")
|
Reference in New Issue