diff fasta_remove_id.py @ 0:d5c3354c166d draft default tip

Uploaded
author cpt_testbed
date Fri, 29 Apr 2022 10:33:36 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/fasta_remove_id.py	Fri Apr 29 10:33:36 2022 +0000
@@ -0,0 +1,28 @@
+#!/usr/bin/env python
+import sys
+import argparse
+import logging
+from Bio import SeqIO
+
+logging.basicConfig(level=logging.INFO)
+log = logging.getLogger()
+
+
+def drop_id(fasta_file=None):
+    for rec in SeqIO.parse(fasta_file, "fasta"):
+        rec.description = ""
+        ind = str(rec.seq).find("##")
+        if (
+            ind != -1
+        ):  # This method causes mid-file comments (such as from Apollo sequences) to be appended to the end of the previous sequence
+            rec.seq = rec.seq[0:ind]
+        yield rec
+
+
+if __name__ == "__main__":
+    parser = argparse.ArgumentParser(description="Identify shine-dalgarno sequences")
+    parser.add_argument("fasta_file", type=argparse.FileType("r"), help="Genbank file")
+
+    args = parser.parse_args()
+    for rec in drop_id(**vars(args)):
+        SeqIO.write([rec], sys.stdout, "fasta")