Mercurial > repos > tomnl > assess_purity_msms
annotate create_msp.R @ 13:eea94e398c26 draft
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit 97c9122c9af9ddca3a2498185ce8c7919c0df03a
author | tomnl |
---|---|
date | Tue, 08 May 2018 05:30:13 -0400 |
parents | e5f627fd21e8 |
children | fa5838760aee |
rev | line source |
---|---|
6
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
1 suppressWarnings(suppressPackageStartupMessages(require(optparse,quietly = T))) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
2 suppressWarnings(suppressPackageStartupMessages(require(msPurity))) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
3 print(sessionInfo()) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
4 # Get the parameter |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
5 option_list <- list( |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
6 make_option(c("-i","--purity"),type="character"), |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
7 make_option(c("-p","--ppm"),type="numeric"), |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
8 make_option(c("-m","--mode"),type="character") |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
9 ) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
10 opt <- parse_args(OptionParser(option_list=option_list)) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
11 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
12 print(opt) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
13 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
14 load(opt$purity) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
15 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
16 grped_df <- pa@grped_df |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
17 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
18 msms <- pa@grped_ms2 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
19 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
20 puritydf <- pa@puritydf |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
21 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
22 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
23 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
24 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
25 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
26 grped_df$fileid <- sapply(grped_df$filename, function(x) which(basename(pa@fileList)==x)) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
27 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
28 puritydf$fileid <- sapply(puritydf$filename, function(x) which(basename(pa@fileList)==x)) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
29 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
30 selfrag <- as.numeric(unique(grped_df$grpid)) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
31 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
32 of <- file(description = "outfile.msp", open = "w+a") |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
33 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
34 write.msp <- function(name,precmz,prectype,spectra,ofile){ |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
35 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
36 cat(paste("NAME: ", name, "\r\n", sep = ""), file = ofile) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
37 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
38 cat(paste("PRECURSORMZ: ", precmz , "\r\n", sep = ""), file = ofile) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
39 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
40 #cat(paste("PRECURSORTYPE: ", prectype, "\r\n", sep = ""), file = ofile) # No adducts? Annotation |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
41 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
42 cat("Comment:\r\n", file = ofile) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
43 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
44 cat(paste("Num Peaks: ", nrow(spectra), "\r\n", sep = ""), file = ofile) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
45 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
46 cat(paste(paste(spectra[,1], spectra[,2], sep = "\t"), sep = "\r\n"), sep = "\r\n", file = ofile) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
47 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
48 cat("\r\n", file = ofile) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
49 } |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
50 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
51 for(i in selfrag){ |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
52 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
53 j <- which(grped_df$grpid==i) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
54 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
55 spec <- msms[[as.character(i)]] |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
56 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
57 if (length(j)>1){ |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
58 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
59 grpd <- grped_df[j,] |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
60 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
61 if (opt$mode=="all"){ |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
62 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
63 for(jj in 1:length(j)){ |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
64 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
65 idj <- paste(i,jj,sep=".") |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
66 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
67 specj <- spec[[jj]] |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
68 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
69 grpdj <- grpd[jj,] |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
70 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
71 name = paste(i, grpdj$sample, grpdj$pid, sep='-') |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
72 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
73 write.msp(name,grpdj$precurMtchMZ,"",specj,of) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
74 } |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
75 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
76 }else{ |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
77 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
78 prec_int <- sapply(grpd$precurMtchID, function(x) puritydf[ which(puritydf$seqNum==x & puritydf$fileid==grpd$fileid[1]), "precursorIntensity"] ) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
79 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
80 if (opt$mode=="max"){ |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
81 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
82 idx <- which(prec_int==max(prec_int)) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
83 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
84 grpd <- grpd[idx,] |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
85 name = paste(i, grpd$sample, grpd$pid, sep='-') |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
86 write.msp(name,grpd$precurMtchMZ,"",specj[[idx]], of) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
87 } |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
88 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
89 if (opt$mode=="average"){ |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
90 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
91 file_weights <- prec_int/prec_int[which(prec_int==min(prec_int))] # spectra of the most intense precursor, largest weight |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
92 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
93 merged_msms <- do.call("rbind", spec) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
94 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
95 colnames(merged_msms) <- c("mz","int") |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
96 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
97 file_weights <-rep(file_weights,sapply(spec,nrow)) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
98 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
99 merged_msms <- data.frame(cbind(merged_msms,file_weights)) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
100 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
101 umzs <- sort(merged_msms$mz,index.return=T)$ix |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
102 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
103 merged_msms <- merged_msms[umzs,] |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
104 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
105 umzs <- merged_msms$mz |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
106 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
107 mz_groups <- list() # mz windows to bind |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
108 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
109 mz_grouped <- c() # used mzs |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
110 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
111 ppm <- opt$ppm # ppm level to bind mzs |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
112 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
113 for(y in 1:length(umzs)){ # spectra averaging |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
114 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
115 z <- umzs[y] |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
116 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
117 if(!(z %in% mz_grouped)){ |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
118 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
119 mz_range <- z*(ppm/1e6) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
120 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
121 mz_range <- c(z-mz_range,z+mz_range) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
122 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
123 mz_group <- which(umzs>mz_range[1] & umzs<mz_range[2]) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
124 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
125 if(length(mz_group)>1){ |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
126 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
127 zz <- umzs[max(mz_group)] |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
128 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
129 mz_range <- zz*(ppm/1e6) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
130 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
131 mz_range <- c(zz-mz_range,zz+mz_range) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
132 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
133 mz_group2 <- which(umzs>mz_range[1] & umzs<mz_range[2]) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
134 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
135 mz_group <- append(mz_group,mz_group2) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
136 } |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
137 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
138 mz_group <- unique(mz_group) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
139 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
140 mz_grouped <- append(mz_grouped,umzs[mz_group]) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
141 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
142 mz_group <- list(mz_group) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
143 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
144 mz_groups <- append(mz_groups,mz_group) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
145 } |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
146 } |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
147 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
148 averaged_spec <- t(sapply(mz_groups,function(x){ |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
149 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
150 if(length(x)==1){ |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
151 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
152 mz <- merged_msms$mz[x] |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
153 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
154 nint <- merged_msms[x,] |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
155 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
156 nint <- nint$int*nint$file_weights |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
157 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
158 }else{ |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
159 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
160 mz <- mean(merged_msms$mz[x]) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
161 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
162 nint <- sum(sapply(x,function(y){ |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
163 nint <- merged_msms[y,] |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
164 nint <- nint$int*nint$file_weights |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
165 })) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
166 } |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
167 return(c(mz,nint)) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
168 })) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
169 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
170 write.msp(i,mean(grpd$precurMtchMZ),"",averaged_spec,of) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
171 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
172 } |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
173 } |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
174 }else{ |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
175 spec <- spec[[1]] |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
176 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
177 grpd <- grped_df[j,] |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
178 name = paste(i, grpd$sample, grpd$pid, sep='-') |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
179 write.msp(name,grpd$precurMtchMZ,"",spec,of) |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
180 } |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
181 } |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
182 |
e5f627fd21e8
planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit afee93a926072b534bb3541e1524f1ad6a7decb9
tomnl
parents:
diff
changeset
|
183 |