view experimental_design/experimental_design.r @ 57:33412e85e669 draft

"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
author rhpvorderman
date Wed, 02 Feb 2022 10:50:01 +0000
parents 81b3eb11ed2c
children
line wrap: on
line source

args <- commandArgs(trailingOnly = TRUE)

print(args)

inputs = args[1:(length(args) - 1)]
output = args[length(args)]

current.id = ""
counter = 1

result = NULL

for(current in inputs){
	if(grepl("/", current)){ #its a path to a file
		print(paste("Adding file", counter, "to", current.id))
		dat = read.table(current, sep="\t", header=T, quote="", fill=T)
		
		if(nrow(dat) == 0){
			print(paste(counter, "of", current.id, "has no sequences, skipping"))
			next
		}
		
		#IMGT check
		
		dat$Sample = current.id
		dat$Replicate = counter
		
		if(is.null(result)){
			result = dat[NULL,]
		}
		
		result = rbind(result, dat)
		
		counter = counter + 1
		
	} else { #its an ID of a patient
		print(paste("New patient", current))
		current.id = current
		counter = 1
	}
}

write.table(result, output, sep="\t", quote=F, row.names=F, col.names=T)