Mercurial > repos > computational-metabolomics > mspurity_frag4feature
diff filterFragSpectra.R @ 6:d4a17be5429a draft
"planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit 2579c8746819670348c378f86116f83703c493eb"
author | computational-metabolomics |
---|---|
date | Thu, 04 Mar 2021 12:34:06 +0000 |
parents | ab65999a5430 |
children | e9fbb65451f6 |
line wrap: on
line diff
--- a/filterFragSpectra.R Fri Nov 13 09:52:35 2020 +0000 +++ b/filterFragSpectra.R Thu Mar 04 12:34:06 2021 +0000 @@ -5,96 +5,95 @@ option_list <- list( - make_option("--out_rdata", type="character"), - make_option("--out_peaklist_prec", type="character"), - make_option("--out_peaklist_frag", type="character"), - make_option("--pa", type="character"), + make_option("--out_rdata", type = "character"), + make_option("--out_peaklist_prec", type = "character"), + make_option("--out_peaklist_frag", type = "character"), + make_option("--pa", type = "character"), - make_option("--ilim", default=0.0), - make_option("--plim", default=0.0), + make_option("--ilim", default = 0.0), + make_option("--plim", default = 0.0), - make_option("--ra", default=0.0), - make_option("--snr", default=0.0), + make_option("--ra", default = 0.0), + make_option("--snr", default = 0.0), - make_option("--rmp", action="store_true"), - make_option("--snmeth", default="median", type="character") + make_option("--rmp", action = "store_true"), + make_option("--snmeth", default = "median", type = "character") ) -opt <- parse_args(OptionParser(option_list=option_list)) +opt <- parse_args(OptionParser(option_list = option_list)) print(opt) -loadRData <- function(rdata_path, name){ +loadRData <- function(rdata_path, name) { #loads an RData file, and returns the named xset object if it is there load(rdata_path) return(get(ls()[ls() %in% name])) } # Requires -pa <- loadRData(opt$pa, 'pa') +pa <- loadRData(opt$pa, "pa") -if(is.null(opt$rmp)){ - opt$rmp = FALSE +if (is.null(opt$rmp)) { + opt$rmp <- FALSE }else{ - opt$rmp = TRUE + opt$rmp <- TRUE } -pa <- filterFragSpectra(pa, - ilim=opt$ilim, - plim=opt$plim, - ra=opt$ra, - snr=opt$snr, - rmp=opt$rmp, - snmeth=opt$snmeth) +pa <- filterFragSpectra(pa, + ilim = opt$ilim, + plim = opt$plim, + ra = opt$ra, + snr = opt$snr, + rmp = opt$rmp, + snmeth = opt$snmeth) print(pa) -save(pa, file=opt$out_rdata) +save(pa, file = opt$out_rdata) # get the msms data for grpid from the purityA object -msmsgrp <- function(grpid, pa){ +msmsgrp <- function(grpid, pa) { msms <- pa@grped_ms2[grpid] - - grpinfo <- pa@grped_df[pa@grped_df$grpid==grpid,] - - grpinfo$subsetid <- 1:nrow(grpinfo) - result <- plyr::ddply(grpinfo, ~subsetid, setid, msms=msms) + + grpinfo <- pa@grped_df[pa@grped_df$grpid == grpid, ] + + grpinfo$subsetid <- seq_len(nrow(grpinfo)) + result <- plyr::ddply(grpinfo, ~subsetid, setid, msms = msms) return(result) } -# Set the relevant details -setid <- function(grpinfo_i, msms){ +# Set the relevant details +setid <- function(grpinfo_i, msms) { msms_i <- msms[[1]][[grpinfo_i$subsetid]] n <- nrow(msms_i) msms_i <- data.frame(msms_i) - colnames(msms_i)[1:2] <- c('mz', 'i') - m <- cbind('grpid'=rep(grpinfo_i$grpid,n), 'pid'=rep(grpinfo_i$pid,n), 'fileid'=rep(grpinfo_i$fileid,n), msms_i) + colnames(msms_i)[1:2] <- c("mz", "i") + m <- cbind("grpid" = rep(grpinfo_i$grpid, n), "pid" = rep(grpinfo_i$pid, n), "fileid" = rep(grpinfo_i$fileid, n), msms_i) return(m) } -if (length(pa)>0){ +if (length(pa) > 0) { - if (length(pa@grped_ms2)==0){ - message('No spectra available') - } else{ + if (length(pa@grped_ms2) == 0) { + message("No spectra available") + } else { # get group ids grpids <- unique(as.character(pa@grped_df$grpid)) # loop through all the group ids - df_fragments = plyr::adply(grpids, 1, msmsgrp, pa=pa) - df_fragments = merge(df_fragments, pa@puritydf[,c("pid", "acquisitionNum", "precursorScanNum")], by="pid") - df_fragments = df_fragments[order(df_fragments$grpid, df_fragments$pid, df_fragments$mz),] + df_fragments <- plyr::adply(grpids, 1, msmsgrp, pa = pa) + df_fragments <- merge(df_fragments, pa@puritydf[, c("pid", "acquisitionNum", "precursorScanNum")], by = "pid") + df_fragments <- df_fragments[order(df_fragments$grpid, df_fragments$pid, df_fragments$mz), ] #select and reorder columns - df_fragments = df_fragments[,c("grpid", "pid", "precursorScanNum", "acquisitionNum", "fileid", "mz", "i", "snr", "ra", "purity_pass_flag", "intensity_pass_flag", "ra_pass_flag", "snr_pass_flag", "pass_flag")] + df_fragments <- df_fragments[, c("grpid", "pid", "precursorScanNum", "acquisitionNum", "fileid", "mz", "i", "snr", "ra", "purity_pass_flag", "intensity_pass_flag", "ra_pass_flag", "snr_pass_flag", "pass_flag")] - pa@grped_df$filename = sapply(pa@grped_df$fileid, function(x) names(pa@fileList)[as.integer(x)]) + pa@grped_df$filename <- sapply(pa@grped_df$fileid, function(x) names(pa@fileList)[as.integer(x)]) - print(head(pa@grped_df)) - write.table(pa@grped_df, opt$out_peaklist_prec, row.names=FALSE, sep='\t') + print(head(pa@grped_df)) + write.table(pa@grped_df, opt$out_peaklist_prec, row.names = FALSE, sep = "\t") print(head(df_fragments)) - write.table(df_fragments, opt$out_peaklist_frag, row.names=FALSE, sep='\t') + write.table(df_fragments, opt$out_peaklist_frag, row.names = FALSE, sep = "\t") } } -