diff new_imgt.r @ 81:b6f9a640e098 draft

Uploaded
author davidvanzessen
date Fri, 19 Feb 2021 15:10:54 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/new_imgt.r	Fri Feb 19 15:10:54 2021 +0000
@@ -0,0 +1,40 @@
+args <- commandArgs(trailingOnly = TRUE)
+
+imgt.dir = args[1]
+merged.file = args[2]
+gene = args[3]
+
+merged = read.table(merged.file, header=T, sep="\t", fill=T, stringsAsFactors=F, comment.char="", quote="")
+
+if(!("Sequence.ID" %in% names(merged))){ #change-o db
+	print("Change-O DB changing 'SEQUENCE_ID' to 'Sequence.ID'")
+	names(merged)[which(names[merged] == "SEQUENCE_ID")] = "Sequence.ID"
+}
+
+if(gene != "-"){
+	merged = merged[grepl(paste("^", gene, sep=""), merged$best_match),]
+}
+
+if("best_match" %in% names(merged)){
+	merged = merged[!grepl("unmatched", merged$best_match),]
+}
+
+nrow_dat = 0
+
+for(f in list.files(imgt.dir, pattern="*.txt$")){
+	#print(paste("filtering", f))
+	path = file.path(imgt.dir, f)
+	dat = read.table(path, header=T, sep="\t", fill=T, quote="", stringsAsFactors=F, check.names=FALSE, comment.char="")
+	
+	dat = dat[dat[,"Sequence ID"] %in% merged$Sequence.ID,]
+	
+	nrow_dat = nrow(dat)
+	
+	if(nrow(dat) > 0 & grepl("^8_", f)){ #change the FR1 columns to 0 in the "8_..." file
+		dat[,grepl("^FR1", names(dat))] = 0
+	}
+	
+	write.table(dat, path, quote=F, sep="\t", row.names=F, col.names=T, na="")
+}
+
+print(paste("Creating new zip for ", gene, "with", nrow_dat, "sequences"))