comparison baseline/filter.r @ 81:b6f9a640e098 draft

Uploaded
author davidvanzessen
date Fri, 19 Feb 2021 15:10:54 +0000
parents
children
comparison
equal deleted inserted replaced
80:a4617f1d1d89 81:b6f9a640e098
1 arg = commandArgs(TRUE)
2 summaryfile = arg[1]
3 gappedfile = arg[2]
4 selection = arg[3]
5 output = arg[4]
6 print(paste("selection = ", selection))
7
8
9 summarydat = read.table(summaryfile, header=T, sep="\t", fill=T, stringsAsFactors=F, quote = "")
10 gappeddat = read.table(gappedfile, header=T, sep="\t", fill=T, stringsAsFactors=F, quote = "")
11
12 fix_column_names = function(df){
13 if("V.DOMAIN.Functionality" %in% names(df)){
14 names(df)[names(df) == "V.DOMAIN.Functionality"] = "Functionality"
15 print("found V.DOMAIN.Functionality, changed")
16 }
17 if("V.DOMAIN.Functionality.comment" %in% names(df)){
18 names(df)[names(df) == "V.DOMAIN.Functionality.comment"] = "Functionality.comment"
19 print("found V.DOMAIN.Functionality.comment, changed")
20 }
21 return(df)
22 }
23
24 gappeddat = fix_column_names(gappeddat)
25
26 #dat = data.frame(merge(gappeddat, summarydat, by="Sequence.ID", all.x=T))
27
28 dat = cbind(gappeddat, summarydat$AA.JUNCTION)
29
30 colnames(dat)[length(dat)] = "AA.JUNCTION"
31
32 dat$VGene = gsub("^Homsap ", "", dat$V.GENE.and.allele)
33 dat$VGene = gsub("[*].*", "", dat$VGene)
34
35 dat$DGene = gsub("^Homsap ", "", dat$D.GENE.and.allele)
36 dat$DGene = gsub("[*].*", "", dat$DGene)
37
38 dat$JGene = gsub("^Homsap ", "", dat$J.GENE.and.allele)
39 dat$JGene = gsub("[*].*", "", dat$JGene)
40
41 print(str(dat))
42
43 dat$past = do.call(paste, c(dat[unlist(strsplit(selection, ","))], sep = ":"))
44
45 dat = dat[!duplicated(dat$past), ]
46
47 print(paste("Sequences remaining after duplicate filter:", nrow(dat)))
48
49 dat = dat[dat$Functionality != "No results" & dat$Functionality != "unproductive",]
50
51 print(paste("Sequences remaining after functionality filter:", nrow(dat)))
52
53 print(paste("Sequences remaining:", nrow(dat)))
54
55 write.table(x=dat, file=output, sep="\t",quote=F,row.names=F,col.names=T)