diff blast_annotations_processor.py @ 3:ca2f07b71581 draft default tip

planemo upload for repository https://github.com/Onnodg/Naturalis_NLOOR/tree/main/NLOOR_scripts/process_annotations_tool commit 600e5a50a13a3a16a1970d6d4d31cb4f7bd549bf-dirty
author onnodg
date Thu, 12 Feb 2026 13:52:07 +0000
parents 9ca209477dfd
children
line wrap: on
line diff
--- a/blast_annotations_processor.py	Mon Dec 15 16:43:36 2025 +0000
+++ b/blast_annotations_processor.py	Thu Feb 12 13:52:07 2026 +0000
@@ -51,17 +51,17 @@
     parser.add_argument('--filtered-fasta', required=True,
                         help='Filtered fasta file (fasta format) for downstream analysis')
 
-    parser.add_argument('--uncertain-threshold', type=float, default=0.9, required=True,
-                        help='Threshold for resolving taxonomic conflicts (default: 0.9)')
-    parser.add_argument('--eval-threshold', default='1e-10', type=float, required=True,
-                        help='E-value threshold for filtering results (default: 1e-10)')
+    parser.add_argument('--uncertain-threshold', type=float, default=1, required=True,
+                        help='Threshold for resolving taxonomic conflicts')
+    parser.add_argument('--eval-threshold', type=float, required=True,
+                        help='E-value threshold for filtering results')
     parser.add_argument('--use-counts', action='store_true', default=False, required=False,
                         help='Use read counts in circular data')
-    parser.add_argument('--ignore-rank', default='unknown', required=False,
+    parser.add_argument('--ignore-rank', default='', required=False,
                         help='Ignore rank when containing this text')
-    parser.add_argument('--ignore-taxonomy', default='environmental', required=False,
+    parser.add_argument('--ignore-taxonomy', default='', required=False,
                         help="Don't use taxonomy containing this taxonomy")
-    parser.add_argument('--bitscore-perc-cutoff', type=float, default=8, required=True,
+    parser.add_argument('--bitscore-perc-cutoff', type=float, default=0, required=True,
                         help='Bitscore percentage cutoff for considered hits')
     parser.add_argument('--min-bitscore', type=int, default=0, required=True,
                         help='Minimum bitscore threshold for hits')
@@ -482,7 +482,9 @@
                 total_headers += 1
                 header_line = line.rstrip("\n")
                 header = header_line.split()[0].strip('>')
-                if "count=" in header_line:
+                if "obiclean_count={'XXX': " in header_line:
+                    count = int(header_line.split("obiclean_count={'XXX': ")[1].split("}")[0])
+                elif "count=" in header_line:
                     count = int(header_line.split("count=")[1].split(";")[0])
                 else:
                     count = 0
@@ -713,7 +715,6 @@
     if not os.path.exists(anno_file_path):
         log_message(log_messages, f"Error: Input file {anno_file_path} not found")
         with open(args.log, 'w') as f:
-            print('gaat nog niet goed hoor')
             f.write("\n".join(log_messages))
         return