From abca64c223180c6427901a0d8df318787bbf2d65 Mon Sep 17 00:00:00 2001 From: DavyCats Date: Thu, 14 Feb 2019 15:40:32 +0100 Subject: [PATCH 1/3] allow for additional annotations to be added into mergecounts output --- mergecounts.wdl | 41 +++++++++++++++++++++++++++++++---------- 1 file changed, 31 insertions(+), 10 deletions(-) diff --git a/mergecounts.wdl b/mergecounts.wdl index 5de98e7..5059ea9 100644 --- a/mergecounts.wdl +++ b/mergecounts.wdl @@ -9,6 +9,9 @@ task MergeCounts { Int featureColumn Int valueColumn Boolean inputHasHeader + String featureAttribute = "gene_id" + File referenceGtf + Array[String]+? additionalAttributes } # Based on a script by Szymon Kielbasa/Ioannis Moustakas @@ -19,26 +22,43 @@ task MergeCounts { R --no-save <% melt(id.vars=featureI, variable.name="sample", value.name="count") + d <- d %>% melt(id.vars=feature.i, variable.name="sample", + value.name="count") })) d <- d %>% dcast(feature ~ sample, value.var="count") - write.table(d, file="~{outputFile}", sep="\t", quote=FALSE, row.names=FALSE) + + gtf <- ensemblGenome(dirname(reference.gtf)) + read.gtf(gtf, basename(reference.gtf)) + + gtf.table <- gtf@ev$gtf + gtf.table <- gtf.table[order(gtf.table[,feature.attribute]),] + gtf.table <- gtf.table[!duplicated(gtf.table[,feature.attribute]),] + id.table <- gtf.table[, c(feature.attribute, additional.attributes), drop=F] + output.table <- merge(id.table, d, all.y = T, by.y="feature", + by.x=feature.attribute) + + write.table(output.table, file=output.path, sep="\t", quote=FALSE, + row.names=FALSE, na="") CODE >>> @@ -48,5 +68,6 @@ task MergeCounts { runtime { memory: 4 + (2*length(inputFiles)) + docker: "biowdl/mergecounts:latest" } } \ No newline at end of file -- GitLab From 3f682360337dcb8700f0d6f938ea86e256dd857f Mon Sep 17 00:00:00 2001 From: DavyCats Date: Thu, 14 Feb 2019 16:29:04 +0100 Subject: [PATCH 2/3] add docker containers for htseq and stringtie, escape $ in mergecounts --- htseq.wdl | 2 ++ mergecounts.wdl | 4 ++-- stringtie.wdl | 9 +++++++++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/htseq.wdl b/htseq.wdl index 6ea0ab4..5a53f04 100644 --- a/htseq.wdl +++ b/htseq.wdl @@ -14,6 +14,7 @@ task HTSeqCount { String stranded = "no" Int memory = 12 + String dockerTag = "0.9.1--py36h7eb728f_2" } command { @@ -35,5 +36,6 @@ task HTSeqCount { runtime { memory: memory + docker: "quay.io/biocontainers/htseq:" + dockerTag } } \ No newline at end of file diff --git a/mergecounts.wdl b/mergecounts.wdl index 5059ea9..dac4981 100644 --- a/mergecounts.wdl +++ b/mergecounts.wdl @@ -38,7 +38,7 @@ task MergeCounts { d <- read.table(file, sep="\t", header=header, comment.char="#") filename <- basename(file) - colnames(d)[value.i] <- sub("\\\.[^\\\.]*$", "", filename) + colnames(d)[value.i] <- sub("\\\.[^\\\.]*\$", "", filename) colnames(d)[feature.i] <- "feature" d <- d %>% melt(id.vars=feature.i, variable.name="sample", @@ -50,7 +50,7 @@ task MergeCounts { gtf <- ensemblGenome(dirname(reference.gtf)) read.gtf(gtf, basename(reference.gtf)) - gtf.table <- gtf@ev$gtf + gtf.table <- gtf@ev\$gtf gtf.table <- gtf.table[order(gtf.table[,feature.attribute]),] gtf.table <- gtf.table[!duplicated(gtf.table[,feature.attribute]),] id.table <- gtf.table[, c(feature.attribute, additional.attributes), drop=F] diff --git a/stringtie.wdl b/stringtie.wdl index 57f7206..3ce8b32 100644 --- a/stringtie.wdl +++ b/stringtie.wdl @@ -13,6 +13,8 @@ task Stringtie { Boolean? firstStranded Boolean? secondStranded String? geneAbundanceFile + + String dockerTag = "1.3.4--py35_0" } command { @@ -37,6 +39,7 @@ task Stringtie { runtime { cpu: threads + docker: "quay.io/biocontainers/stringtie:" + dockerTag } } @@ -55,6 +58,8 @@ task Merge { Float? minimumIsoformFraction Boolean keepMergedTranscriptsWithRetainedIntrons = false String? label + + String dockerTag = "1.3.4--py35_0" } command { @@ -77,4 +82,8 @@ task Merge { output { File mergedGtfFile = outputGtfPath } + + runtime { + docker: "quay.io/biocontainers/stringtie:" + dockerTag + } } -- GitLab From edfcd38d2ffdec19b524dfb7eb7bf16be671ad5c Mon Sep 17 00:00:00 2001 From: DavyCats Date: Mon, 18 Feb 2019 15:16:10 +0100 Subject: [PATCH 3/3] change docker tags --- mergecounts.wdl | 2 +- stringtie.wdl | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/mergecounts.wdl b/mergecounts.wdl index dac4981..ddcc251 100644 --- a/mergecounts.wdl +++ b/mergecounts.wdl @@ -68,6 +68,6 @@ task MergeCounts { runtime { memory: 4 + (2*length(inputFiles)) - docker: "biowdl/mergecounts:latest" + docker: "biowdl/mergecounts:1.0" } } \ No newline at end of file diff --git a/stringtie.wdl b/stringtie.wdl index 3ce8b32..bce40a1 100644 --- a/stringtie.wdl +++ b/stringtie.wdl @@ -14,7 +14,7 @@ task Stringtie { Boolean? secondStranded String? geneAbundanceFile - String dockerTag = "1.3.4--py35_0" + String dockerTag = "1.3.3--py36_3" } command { @@ -59,7 +59,7 @@ task Merge { Boolean keepMergedTranscriptsWithRetainedIntrons = false String? label - String dockerTag = "1.3.4--py35_0" + String dockerTag = "1.3.3--py36_3" } command { -- GitLab