import csv
from PyGff import *
import cPickle
+import copy
def parse(gff_fid,pickle_fid):
reader = csv.reader(gff_fid, delimiter='\t', quoting=csv.QUOTE_NONE)
if id == 'gene':
if currentGene != None:
allGenes.append(currentGene)
- currentGene = None
currentGene = Gene(chr,start,stop,strand)
pass
elif id == 'exon':
+ assert currentGene != None
currentGene.addExon(start,stop)
elif id == 'CDS':
elif id == 'pseudogenic_transcript':
pass
- elif id == 'snoRNA':
+ elif id == 'miRNA':
pass
- elif id == 'snRNA':
+ elif id == 'rRNA':
pass
- elif id == 'miRNA':
+ elif id == 'snoRNA':
+ pass
+
+ elif id == 'snRNA':
pass
elif id == 'tRNA':
if currentGene != None:
allGenes.append(currentGene)
currentGene = None
-
else:
assert False, 'Error: Unknown identifier \'%s\'' % id
- cPickle.dump(allGenes,pickle_fid)
+ if currentGene != None:
+ allGenes.append(currentGene)
+ cPickle.dump(allGenes,pickle_fid)
if __name__ == '__main__':
assert len(sys.argv) >= 3