| Previous changeset 34:6550698fe60f (2024-07-15) |
|
Commit message:
planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163 |
|
modified:
abims_xcms_xcmsSet.xml lib.r macros_xcms.xml xcms_xcmsSet.r |
| b |
| diff -r 6550698fe60f -r 3990a65b45a4 abims_xcms_xcmsSet.xml --- a/abims_xcms_xcmsSet.xml Mon Jul 15 16:02:04 2024 +0000 +++ b/abims_xcms_xcmsSet.xml Mon Feb 03 14:48:09 2025 +0000 |
| [ |
| @@ -7,10 +7,14 @@ </macros> <expand macro="requirements"/> + <required_files> + <include path="xcms_xcmsSet.r" /> + <include path="lib.r" /> + </required_files> <expand macro="stdio"/> <command><![CDATA[ - @COMMAND_RSCRIPT@/xcms_xcmsSet.r + @COMMAND_RSCRIPT@xcms_xcmsSet.r image '$image' |
| b |
| diff -r 6550698fe60f -r 3990a65b45a4 lib.r --- a/lib.r Mon Jul 15 16:02:04 2024 +0000 +++ b/lib.r Mon Feb 03 14:48:09 2025 +0000 |
| [ |
| b'@@ -1,461 +1,470 @@\n-#@authors ABiMS TEAM, Y. Guitton\n+# @authors ABiMS TEAM, Y. Guitton\n # lib.r for Galaxy Workflow4Metabolomics xcms tools\n \n-#@author G. Le Corguille\n+# @author G. Le Corguille\n # solve an issue with batch if arguments are logical TRUE/FALSE\n parseCommandArgs <- function(...) {\n- args <- batch::parseCommandArgs(...)\n- for (key in names(args)) {\n- if (args[key] %in% c("TRUE", "FALSE"))\n- args[key] <- as.logical(args[key])\n- }\n- return(args)\n+ args <- batch::parseCommandArgs(...)\n+ for (key in names(args)) {\n+ if (args[key] %in% c("TRUE", "FALSE")) {\n+ args[key] <- as.logical(args[key])\n+ }\n+ }\n+ return(args)\n }\n \n-#@author G. Le Corguille\n+# @author G. Le Corguille\n # This function will\n # - load the packages\n # - display the sessionInfo\n loadAndDisplayPackages <- function(pkgs) {\n- for (pkg in pkgs) suppressPackageStartupMessages(stopifnot(library(pkg, quietly = TRUE, logical.return = TRUE, character.only = TRUE)))\n+ for (pkg in pkgs) suppressPackageStartupMessages(stopifnot(library(pkg, quietly = TRUE, logical.return = TRUE, character.only = TRUE)))\n \n- sessioninfo <- sessionInfo()\n- cat(sessioninfo$R.version$version.string, "\\n")\n- cat("Main packages:\\n")\n- for (pkg in names(sessioninfo$otherPkgs)) {\n- cat(paste(pkg, packageVersion(pkg)), "\\t")\n- }\n- cat("\\n")\n- cat("Other loaded packages:\\n")\n- for (pkg in names(sessioninfo$loadedOnly)) {\n- cat(paste(pkg, packageVersion(pkg)), "\\t")\n- }\n- cat("\\n")\n+ sessioninfo <- sessionInfo()\n+ cat(sessioninfo$R.version$version.string, "\\n")\n+ cat("Main packages:\\n")\n+ for (pkg in names(sessioninfo$otherPkgs)) {\n+ cat(paste(pkg, packageVersion(pkg)), "\\t")\n+ }\n+ cat("\\n")\n+ cat("Other loaded packages:\\n")\n+ for (pkg in names(sessioninfo$loadedOnly)) {\n+ cat(paste(pkg, packageVersion(pkg)), "\\t")\n+ }\n+ cat("\\n")\n }\n \n-#@author G. Le Corguille\n+# @author G. Le Corguille\n # This function merge several chromBPI or chromTIC into one.\n mergeChrom <- function(chrom_merged, chrom) {\n- if (is.null(chrom_merged)) return(NULL)\n- chrom_merged@.Data <- cbind(chrom_merged@.Data, chrom@.Data)\n- return(chrom_merged)\n+ if (is.null(chrom_merged)) {\n+ return(NULL)\n+ }\n+ chrom_merged@.Data <- cbind(chrom_merged@.Data, chrom@.Data)\n+ return(chrom_merged)\n }\n \n-#@author G. Le Corguille\n+# @author G. Le Corguille\n # This function merge several xdata into one.\n mergeXData <- function(args) {\n- chromTIC <- NULL\n- chromBPI <- NULL\n- chromTIC_adjusted <- NULL\n- chromBPI_adjusted <- NULL\n- md5sumList <- NULL\n- for (image in args$images) {\n+ chromTIC <- NULL\n+ chromBPI <- NULL\n+ chromTIC_adjusted <- NULL\n+ chromBPI_adjusted <- NULL\n+ md5sumList <- NULL\n+ for (image in args$images) {\n+ load(image)\n+ # Handle infiles\n+ if (!exists("singlefile")) singlefile <- NULL\n+ if (!exists("zipfile")) zipfile <- NULL\n+ rawFilePath <- retrieveRawfileInTheWorkingDir(singlefile, zipfile, args)\n+ zipfile <- rawFilePath$zipfile\n+ singlefile <- rawFilePath$singlefile\n \n- load(image)\n- # Handle infiles\n- if (!exists("singlefile")) singlefile <- NULL\n- if (!exists("zipfile")) zipfile <- NULL\n- rawFilePath <- retrieveRawfileInTheWorkingDir(singlefile, zipfile, args)\n- zipfile <- rawFilePath$zipfile\n- singlefile <- rawFilePath$singlefile\n+ if (exists("raw_data")) xdata <- raw_data\n+ if (!exists("xdata")) stop("\\n\\nERROR: The RData doesn\'t contain any object called \'xdata\'. This RData should have been created by an old version of XMCS 2.*")\n \n- if (exists("raw_data")) xdata <- raw_data\n- if (!exists("xdata")) stop("\\n\\nERROR: The RData doesn\'t contain any object called \'xdata\'. This RData should have been created by an old version of XMCS 2.*")\n-\n- cat(sampleNamesList$sampleNamesOrigin, "\\n")\n+ cat(sampleNamesList$sampleNamesOrigin, "\\n")\n \n- if (!exists("xdata_m'..b'ngs(try(file.link(singlefile_galaxyPath, singlefile_sampleName), silent = TRUE))) {\n+ file.copy(singlefile_galaxyPath, singlefile_sampleName)\n+ }\n+ files <- c(files, singlefile_sampleName)\n+ }\n }\n- }\n- # zipfile\n- if (!is.null(zipfile) && (zipfile != "")) {\n- if (!file.exists(zipfile)) {\n- error_message <- paste("Cannot access the Zip file:", zipfile, ". Please, contact your administrator ... if you have one!")\n- print(error_message)\n- stop(error_message)\n- }\n- suppressWarnings(unzip(zipfile, unzip = "unzip"))\n+ # zipfile\n+ if (!is.null(zipfile) && (zipfile != "")) {\n+ if (!file.exists(zipfile)) {\n+ error_message <- paste("Cannot access the Zip file:", zipfile, ". Please, contact your administrator ... if you have one!")\n+ print(error_message)\n+ stop(error_message)\n+ }\n+ suppressWarnings(unzip(zipfile, unzip = "unzip"))\n \n- #get the directory name\n- suppressWarnings(filesInZip <- unzip(zipfile, list = TRUE))\n- directories <- unique(unlist(lapply(strsplit(filesInZip$Name, "/"), function(x) x[1])))\n- directories <- directories[!(directories %in% c("__MACOSX")) & file.info(directories)$isdir]\n- directory <- "."\n- if (length(directories) == 1) directory <- directories\n+ # get the directory name\n+ suppressWarnings(filesInZip <- unzip(zipfile, list = TRUE))\n+ directories <- unique(unlist(lapply(strsplit(filesInZip$Name, "/"), function(x) x[1])))\n+ directories <- directories[!(directories %in% c("__MACOSX")) & file.info(directories)$isdir]\n+ directory <- "."\n+ if (length(directories) == 1) directory <- directories\n \n- cat("files_root_directory\\t", directory, "\\n")\n+ cat("files_root_directory\\t", directory, "\\n")\n \n- filepattern <- c("[Cc][Dd][Ff]", "[Nn][Cc]", "([Mm][Zz])?[Xx][Mm][Ll]", "[Mm][Zz][Dd][Aa][Tt][Aa]", "[Mm][Zz][Mm][Ll]")\n- filepattern <- paste(paste("\\\\.", filepattern, "$", sep = ""), collapse = "|")\n- info <- file.info(directory)\n- listed <- list.files(directory[info$isdir], pattern = filepattern, recursive = TRUE, full.names = TRUE)\n- files <- c(directory[!info$isdir], listed)\n- exists <- file.exists(files)\n- files <- files[exists]\n-\n- }\n- return(list(zipfile = zipfile, singlefile = singlefile, files = files))\n+ filepattern <- c("[Cc][Dd][Ff]", "[Nn][Cc]", "([Mm][Zz])?[Xx][Mm][Ll]", "[Mm][Zz][Dd][Aa][Tt][Aa]", "[Mm][Zz][Mm][Ll]")\n+ filepattern <- paste(paste("\\\\.", filepattern, "$", sep = ""), collapse = "|")\n+ info <- file.info(directory)\n+ listed <- list.files(directory[info$isdir], pattern = filepattern, recursive = TRUE, full.names = TRUE)\n+ files <- c(directory[!info$isdir], listed)\n+ exists <- file.exists(files)\n+ files <- files[exists]\n+ }\n+ return(list(zipfile = zipfile, singlefile = singlefile, files = files))\n }\n \n \n # This function retrieve a xset like object\n-#@author Gildas Le Corguille lecorguille@sb-roscoff.fr\n+# @author Gildas Le Corguille lecorguille@sb-roscoff.fr\n getxcmsSetObject <- function(xobject) {\n- # XCMS 1.x\n- if (class(xobject) == "xcmsSet")\n- return(xobject)\n- # XCMS 3.x\n- if (class(xobject) == "XCMSnExp") {\n- # Get the legacy xcmsSet object\n- suppressWarnings(xset <- as(xobject, "xcmsSet"))\n- if (!is.null(xset@phenoData$sample_group))\n- sampclass(xset) <- xset@phenoData$sample_group\n- else\n- sampclass(xset) <- "."\n- return(xset)\n- }\n+ # XCMS 1.x\n+ if (class(xobject) == "xcmsSet") {\n+ return(xobject)\n+ }\n+ # XCMS 3.x\n+ if (class(xobject) == "XCMSnExp") {\n+ # Get the legacy xcmsSet object\n+ suppressWarnings(xset <- as(xobject, "xcmsSet"))\n+ if (!is.null(xset@phenoData$sample_group)) {\n+ sampclass(xset) <- xset@phenoData$sample_group\n+ } else {\n+ sampclass(xset) <- "."\n+ }\n+ return(xset)\n+ }\n }\n' |
| b |
| diff -r 6550698fe60f -r 3990a65b45a4 macros_xcms.xml --- a/macros_xcms.xml Mon Jul 15 16:02:04 2024 +0000 +++ b/macros_xcms.xml Mon Feb 03 14:48:09 2025 +0000 |
| b |
| @@ -2,7 +2,7 @@ <macros> <token name="@TOOL_VERSION@">3.12.0</token> - <token name="@VERSION_SUFFIX@">1</token> + <token name="@VERSION_SUFFIX@">3</token> <token name="@PROFILE@">21.09</token> <xml name="requirements"> <requirements> |
| b |
| diff -r 6550698fe60f -r 3990a65b45a4 xcms_xcmsSet.r --- a/xcms_xcmsSet.r Mon Jul 15 16:02:04 2024 +0000 +++ b/xcms_xcmsSet.r Mon Feb 03 14:48:09 2025 +0000 |
| [ |
| @@ -9,11 +9,11 @@ # ----- PACKAGE ----- cat("\tSESSION INFO\n") -#Import the different functions +# Import the different functions source_local <- function(fname) { - argv <- commandArgs(trailingOnly = FALSE) - base_dir <- dirname(substring(argv[grep("--file=", argv)], 8)) - source(paste(base_dir, fname, sep = "/")) + argv <- commandArgs(trailingOnly = FALSE) + base_dir <- dirname(substring(argv[grep("--file=", argv)], 8)) + source(paste(base_dir, fname, sep = "/")) } source_local("lib.r") @@ -24,7 +24,7 @@ # ----- ARGUMENTS ----- cat("\tARGUMENTS INFO\n") -args <- parseCommandArgs(evaluate = FALSE) #interpretation of arguments given in command line as an R list of objects +args <- parseCommandArgs(evaluate = FALSE) # interpretation of arguments given in command line as an R list of objects write.table(as.matrix(args), col.names = FALSE, quote = FALSE, sep = "\t") cat("\n\n") @@ -33,14 +33,14 @@ # ----- PROCESSING INFILE ----- cat("\tARGUMENTS PROCESSING INFO\n") -#saving the commun parameters +# saving the commun parameters BPPARAM <- MulticoreParam(1) if (!is.null(args$BPPARAM)) { - BPPARAM <- MulticoreParam(args$BPPARAM) + BPPARAM <- MulticoreParam(args$BPPARAM) } register(BPPARAM) -#saving the specific parameters +# saving the specific parameters if (!is.null(args$filterAcquisitionNum)) filterAcquisitionNumParam <- args$filterAcquisitionNum if (!is.null(args$filterRt)) filterRtParam <- args$filterRt if (!is.null(args$filterMz)) filterMzParam <- args$filterMz @@ -49,9 +49,9 @@ method <- args$method if (!is.null(args$roiList)) { - cat("\t\troiList provided\n") - args$roiList <- list(getDataFrameFromFile(args$roiList)) - print(args$roiList) + cat("\t\troiList provided\n") + args$roiList <- list(getDataFrameFromFile(args$roiList)) + print(args$roiList) } cat("\n\n") @@ -59,7 +59,7 @@ # ----- INFILE PROCESSING ----- cat("\tINFILE PROCESSING INFO\n") -#image is an .RData file necessary to use xset variable given by previous tools +# image is an .RData file necessary to use xset variable given by previous tools load(args$image) if (!exists("raw_data")) stop("\n\nERROR: The RData doesn't contain any object called 'raw_data' which is provided by the tool: MSnbase readMSData") @@ -79,12 +79,12 @@ cat("\t\tCOMPUTE\n") cat("\t\t\tApply filter[s] (if asked)\n") -if (exists("filterAcquisitionNumParam")) raw_data <- filterAcquisitionNum(raw_data, filterAcquisitionNumParam[1]:filterAcquisitionNumParam[2]) +if (exists("filterAcquisitionNumParam")) raw_data <- filterAcquisitionNum(raw_data, filterAcquisitionNumParam[1]:filterAcquisitionNumParam[2]) if (exists("filterRtParam")) raw_data <- filterRt(raw_data, filterRtParam) if (exists("filterMzParam")) raw_data <- filterMz(raw_data, filterMzParam) -#Apply this filter only if file contain MS and MSn +# Apply this filter only if file contain MS and MSn if (length(unique(msLevel(raw_data))) != 1) { - raw_data <- filterMsLevel(raw_data, msLevel = 1) + raw_data <- filterMsLevel(raw_data, msLevel = 1) } cat("\t\t\tChromatographic peak detection\n") @@ -103,10 +103,10 @@ # Create a chromPeaks table if required if (exists("peaklistParam")) { - if (peaklistParam) { - cat("\nCreating the chromatographic peaks' table...\n") - write.table(chromPeaks(xdata), file = "chromPeak_table.tsv", sep = "\t", quote = FALSE, row.names = FALSE) - } + if (peaklistParam) { + cat("\nCreating the chromatographic peaks' table...\n") + write.table(chromPeaks(xdata), file = "chromPeak_table.tsv", sep = "\t", quote = FALSE, row.names = FALSE) + } } cat("\n\n") @@ -123,7 +123,7 @@ print(xset) cat("\n\n") -#saving R data in .Rdata file to save the variables used in the present tool +# saving R data in .Rdata file to save the variables used in the present tool objects2save <- c("xdata", "zipfile", "singlefile", "md5sumList", "sampleNamesList") save(list = objects2save[objects2save %in% ls()], file = "xcmsSet.RData") |