Skip to content
Snippets Groups Projects
Commit b52170d6 authored by Cats's avatar Cats
Browse files

change R script

parent e3d1b73f
No related branches found
No related tags found
1 merge request!15Biowdl 25
......@@ -3,8 +3,9 @@ task MergeCounts {
Array[File] inputFiles
String outputFile
String idVar
String measurementVar
Int featureColumn
Int valueColumn
Boolean inputHasHeader
# Based on a script by Szymon Kielbasa/Ioannis Moustakas
command <<<
......@@ -17,15 +18,22 @@ task MergeCounts {
listOfFiles <- c("${sep='", "' inputFiles}")
valueI <- ${valueColumn}
featureI <- ${featureColumn}
header <- ${true="TRUE" false="FALSE" inputHasHeader}
d <- do.call(rbind, lapply(listOfFiles, function(file){
d <- read.table(file, header=TRUE, comment.char="#")
colI <- grep(${measurementVar}, colnames(d))
colnames(d)[colI] <- strsplit(file, "/")[[1]][3]
d <- d %>% melt(id.vars=${idVar}, measure.vars=colI,
variable.name="sample", value.name="count")
d <- read.table(file, header=header, comment.char="#")
splitPath <- strsplit(file, "/")[[1]]
colnames(d)[valueI] <- sub("\\\.[^\\\.]*$", "",
splitPath[length(splitPath)])
colnames(d)[featureI] <- "feature"
d <- d %>% melt(id.vars=featureI, variable.name="sample", value.name="count")
}))
d <- d %>% dcast(paste0(${idVar}, " ~ sample"), value.var="count")
d <- d %>% dcast(feature ~ sample, value.var="count")
write.table(d, sep="\t", quote=FALSE, row.names=FALSE)
CODE
>>>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment