diff glimmer_glimmer_to_gff.py @ 0:9b2e283dc3b5 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/glimmer commit 37388949e348d221170659bbee547bf4ac67ef1a
author bgruening
date Tue, 28 Nov 2017 10:10:55 -0500
parents
children febc61f3c67d
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/glimmer_glimmer_to_gff.py	Tue Nov 28 10:10:55 2017 -0500
@@ -0,0 +1,38 @@
+#!/usr/bin/env python
+
+"""
+Input: Glimmer3 prediction
+Output: GFF3 file
+Return a GFF3 file with the genes predicted by Glimmer3
+Bjoern Gruening
+
+Note: Its not a full-fledged GFF3 file, its a really simple one.
+
+"""
+
+import re
+import sys
+
+
+def __main__():
+    input_file = open(sys.argv[1], 'r')
+
+    print('##gff-version 3\n')
+    for line in input_file:
+        line = line.strip()
+        if line[0] == '>':
+            header = line[1:]
+        else:
+            (id, start, end, frame, score) = re.split('\s+', line)
+            if int(end) > int(start):
+                strand = '+'
+            else:
+                strand = '-'
+                (start, end) = (end, start)
+
+            rest = 'frame=%s;score=%s' % (frame, score)
+            print('\t'.join([header, 'glimmer_prediction', 'predicted_gene', start, end, '.', strand, '.', rest]))
+
+
+if __name__ == "__main__":
+    __main__()