aboutsummaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorJustin Bedo <cu@cua0.org>2019-08-19 10:42:39 +1000
committerJustin Bedo <cu@cua0.org>2019-08-19 10:44:28 +1000
commit53f9549eb4957654a18afdb6f5c1049a1eb7ee53 (patch)
treeec3439b26f1ec9a523eff137ff5b8cd9fefb9e3c /tools
parente303a98cdc8749db939211ee7f691d07371f661a (diff)
snver: require labelled samples
SNVer does not extract sample names from the BAM files and labels the columns with the input file paths rather than sample names. We rename the paths to names.
Diffstat (limited to 'tools')
-rw-r--r--tools/snver-call.nix8
1 files changed, 6 insertions, 2 deletions
diff --git a/tools/snver-call.nix b/tools/snver-call.nix
index 5d80719..72562c7 100644
--- a/tools/snver-call.nix
+++ b/tools/snver-call.nix
@@ -10,9 +10,9 @@ with lib;
with types;
let
- config = pkgs.writeText "pool.txt" (concatMapStringsSep "\n" (x: "${x}\t${toString ploidy}\t1") inputs);
+ config = pkgs.writeText "pool.txt" (concatMapStringsSep "\n" (x: "${x}\t${toString ploidy}\t1") (attrValues inputs));
getref = f: matchFiletype "SNVer-call" { bam = {ref, ...}: ref; } f;
- refs = map getref inputs;
+ refs = mapAttrsToList (_: getref) inputs;
ref = head refs;
in
@@ -25,6 +25,10 @@ stage {
buildCommand = ''
SNVerPool -i / -c ${config} -r ${ref} -o snver
+ for f in *.vcf ; do
+ ${concatStringsSep "\n" (mapAttrsToList (x: y: "sed -i 's|//${y}|${x}|' $f") inputs)}
+ done
+
mkdir $out
cp snver.failed.log $log
ln -s $log $out/snver.failed.log