about summary refs log tree commit diff
path: root/gn3/commands.py
diff options
context:
space:
mode:
Diffstat (limited to 'gn3/commands.py')
-rw-r--r--gn3/commands.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/gn3/commands.py b/gn3/commands.py
index 4b0d62d..255ea1d 100644
--- a/gn3/commands.py
+++ b/gn3/commands.py
@@ -30,6 +30,20 @@ def compose_gemma_cmd(gemma_wrapper_cmd: str = "gemma-wrapper",
         cmd += " ".join([f"{arg}" for arg in gemma_args])
     return cmd
 
+def compose_rqtl_cmd(rqtl_wrapper_cmd: str,
+                     rqtl_wrapper_kwargs: Dict,
+                     rqtl_wrapper_bool_kwargs: list) -> str:
+    """Compose a valid R/qtl command given the correct input"""
+    # Add kwargs with values
+    cmd = rqtl_wrapper_cmd + " " + " ".join(
+        [f"--{key} {val}" for key, val in rqtl_wrapper_kwargs.items()])
+
+    # Add boolean kwargs (kwargs without values)
+    if rqtl_wrapper_bool_kwargs:
+        cmd += " "
+        cmd += " ".join([f"--{val}" for val in rqtl_wrapper_bool_kwargs])
+
+    return cmd
 
 def queue_cmd(conn: Redis,
               job_queue: str,