Mercurial > repos > computational-metabolomics > mspurity_puritya
view createMSP.R @ 3:585b0d90e501 draft
"planemo upload for repository https://github.com/computational-metabolomics/mspurity-galaxy commit 89bf304d12233004031de3c3e703a472b0ba5459"
author | computational-metabolomics |
---|---|
date | Thu, 09 Apr 2020 14:22:46 -0400 |
parents | 56cce1a90b73 |
children | aca2eb389ccd |
line wrap: on
line source
library(optparse) library(msPurity) print(sessionInfo()) # Get the parameter option_list <- list( make_option("--rdata_input",type="character"), make_option("--method",type="character"), make_option("--metadata",type="character"), make_option("--metadata_cols",type="character"), make_option("--metadata_cols_filter",type="character"), make_option("--adduct_split", action="store_true"), make_option("--xcms_groupids",type="character"), make_option("--filter",action="store_true"), make_option("--intensity_ra",type="character"), make_option("--include_adducts",type="character"), make_option("--msp_schema",type="character"), make_option("--include_adducts_custom",type="character", default=""), make_option("--out_dir",type="character", default=".") ) opt <- parse_args(OptionParser(option_list=option_list)) print(opt) load(opt$rdata_input) if (is.null(opt$metadata)){ metadata <- NULL }else{ metadata <- read.table(opt$metadata, header = TRUE, sep='\t', stringsAsFactors = FALSE, check.names = FALSE) if(!opt$metadata_cols_filter==''){ metadata_cols_filter <- strsplit(opt$metadata_cols_filter, ',')[[1]] metadata <- metadata[,metadata_cols_filter, drop=FALSE] print(metadata) if (!"grpid" %in% colnames(metadata)){ metadata$grpid <- 1:nrow(metadata) } print(metadata) } } if (is.null(opt$metadata_cols) || opt$metadata_cols==''){ metadata_cols <- NULL }else{ metadata_cols <- opt$metadata_cols } if(is.null(opt$adduct_split)){ adduct_split <- FALSE }else{ adduct_split <- TRUE } if (is.null(opt$xcms_groupids)){ xcms_groupids <- NULL }else{ xcms_groupids <- trimws(strsplit(opt$xcms_groupids, ',')[[1]]) } if (is.null(opt$include_adducts_custom)){ include_adducts_custom <- '' }else{ include_adducts_custom <- opt$include_adducts_custom } if (opt$include_adducts=='None'){ include_adducts <- '' }else{ include_adducts <- opt$include_adducts } include_adducts_all <- paste(include_adducts_custom, ',', include_adducts, sep="") include_adducts_all <- gsub("^,", "", include_adducts_all) include_adducts_all <- gsub(",$", "", include_adducts_all) include_adducts_all <- gsub("__ob__", "[", include_adducts_all) include_adducts_all <- gsub("__cb__", "]", include_adducts_all) include_adducts_all <- trimws(include_adducts_all) include_adducts_all <- gsub(",", " ", include_adducts_all) if(is.null(opt$filter)){ filter <- FALSE }else{ filter <- TRUE } msPurity::createMSP(pa, msp_file_pth = file.path(opt$out_dir, 'lcmsms_spectra.msp'), metadata = metadata, metadata_cols = metadata_cols, method = opt$method, adduct_split = adduct_split, xcms_groupids = xcms_groupids, filter = filter, intensity_ra=opt$intensity_ra, include_adducts=include_adducts_all, msp_schema=opt$msp_schema) print('msp created')