changeset 38:e66eeca443e4 draft

planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 088699d00f7e45bebb7da07bebc005c68df058d8
author lecorguille
date Wed, 05 Sep 2018 05:56:32 -0400
parents 9ada611dd63f
children e8d7395a70b2
files abims_xcms_xcmsSet.xml lib.r static/images/xcms_xcmsset_workflow.png
diffstat 3 files changed, 44 insertions(+), 32 deletions(-) [+]
line wrap: on
line diff
--- a/abims_xcms_xcmsSet.xml	Fri Aug 31 08:59:03 2018 -0400
+++ b/abims_xcms_xcmsSet.xml	Wed Sep 05 05:56:32 2018 -0400
@@ -408,24 +408,22 @@
 
 **Upstream tools**
 
-========================= ================= ============================== ==========
-Name                      output file       format                         parameter
-========================= ================= ============================== ==========
-MSnbase readMSData        raw.RData         rdata.msnbase.raw              RData file
-========================= ================= ============================== ==========
+========================= ================= ==============================
+Name                      Output file       Format
+========================= ================= ==============================
+MSnbase.readMSData        ``*``.raw.RData   rdata.msnbase.raw
+========================= ================= ==============================
 
 
 **Downstream tools**
 
-=========================== ==================== =================
-Name                        Output file          Format
-=========================== ==================== =================
-xcms.group                  xset.RData           rdata.xcms.raw
---------------------------- -------------------- -----------------
-PCA ellipsoid by factors    sampleMetadata.tsv   Tabular
---------------------------- -------------------- -----------------
-Anova                       sampleMetadata.tsv   Tabular
-=========================== ==================== =================
+==================================== ======================== =========================
+Name                                 Output file              Format
+==================================== ======================== =========================
+xcms.findChromPeaks Merger (single)  ``*``.raw.xset.RData     rdata.xcms.findchrompeaks
+------------------------------------ ------------------------ -------------------------
+xcms.groupChromPeaks (zip)           ``*``.raw.xset.RData     rdata.xcms.findchrompeaks
+==================================== ======================== =========================
 
 
 **Example of a metabolomic workflow**
@@ -474,14 +472,10 @@
 Output files
 ------------
 
-sampleMetadata.tsv
-
-    | Tabular file that contains for each sample, it's associated class and polarity (positive,negative and mixed).
-    | This file is necessary in the Anova and PCA step of the workflow.
-
 xset.RData: rdata.xcms.findchrompeaks format
 
-    | RData file that is necessary in the second step of the workflow "xcms.group".
+    | (single) RData files that is necessary in the second step of the workflow "xcms.groupChromPeaks" must to be merged using "xcms.findChromPeaks Merger"
+    | (zip) RData file that is necessary in the second step of the workflow "xcms.groupChromPeaks".
 
 ---------------------------------------------------
 
--- a/lib.r	Fri Aug 31 08:59:03 2018 -0400
+++ b/lib.r	Wed Sep 05 05:56:32 2018 -0400
@@ -29,18 +29,21 @@
 
 #@author G. Le Corguille
 # This function merge several chromBPI or chromTIC into one.
-mergeChrom <- function(chromTIC_merged, chromTIC, xdata_merged) {
-    if (is.null(chromTIC_merged)) return(NULL)
-    chromTIC_merged@.Data <- cbind(chromTIC_merged@.Data, chromTIC@.Data)
-    chromTIC_merged@phenoData <- xdata_merged@phenoData
-    return(chromTIC_merged)
+mergeChrom <- function(chrom_merged, chrom) {
+    if (is.null(chrom_merged)) return(NULL)
+    chrom_merged@.Data <- cbind(chrom_merged@.Data, chrom@.Data)
+    return(chrom_merged)
 }
 
 #@author G. Le Corguille
 # This function merge several xdata into one.
 mergeXData <- function(args) {
-    chromTIC <- NULL; chromBPI <- NULL
+    chromTIC <- NULL
+    chromBPI <- NULL
+    chromTIC_adjusted <- NULL
+    chromBPI_adjusted <- NULL
     for(image in args$images) {
+
         load(image)
         # Handle infiles
         if (!exists("singlefile")) singlefile <- NULL
@@ -49,9 +52,12 @@
         zipfile <- rawFilePath$zipfile
         singlefile <- rawFilePath$singlefile
         retrieveRawfileInTheWorkingDirectory(singlefile, zipfile)
+
         if (exists("raw_data")) xdata <- raw_data
         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.*")
+
         cat(sampleNamesList$sampleNamesOrigin,"\n")
+
         if (!exists("xdata_merged")) {
             xdata_merged <- xdata
             singlefile_merged <- singlefile
@@ -59,16 +65,21 @@
             sampleNamesList_merged <- sampleNamesList
             chromTIC_merged <- chromTIC
             chromBPI_merged <- chromBPI
+            chromTIC_adjusted_merged <- chromTIC_adjusted
+            chromBPI_adjusted_merged <- chromBPI_adjusted
         } else {
             if (is(xdata, "XCMSnExp")) xdata_merged <- c(xdata_merged,xdata)
             else if (is(xdata, "OnDiskMSnExp")) xdata_merged <- .concatenate_OnDiskMSnExp(xdata_merged,xdata)
             else stop("\n\nERROR: The RData either a OnDiskMSnExp object called raw_data or a XCMSnExp object called xdata")
+
             singlefile_merged <- c(singlefile_merged,singlefile)
             md5sumList_merged$origin <- rbind(md5sumList_merged$origin,md5sumList$origin)
             sampleNamesList_merged$sampleNamesOrigin <- c(sampleNamesList_merged$sampleNamesOrigin,sampleNamesList$sampleNamesOrigin)
             sampleNamesList_merged$sampleNamesMakeNames <- c(sampleNamesList_merged$sampleNamesMakeNames,sampleNamesList$sampleNamesMakeNames)
-            chromTIC_merged <- mergeChrom(chromTIC_merged, chromTIC, xdata_merged)
-            chromBPI_merged <- mergeChrom(chromBPI_merged, chromBPI, xdata_merged)
+            chromTIC_merged <- mergeChrom(chromTIC_merged, chromTIC)
+            chromBPI_merged <- mergeChrom(chromBPI_merged, chromBPI)
+            chromTIC_adjusted_merged <- mergeChrom(chromTIC_adjusted_merged, chromTIC_adjusted)
+            chromBPI_adjusted_merged <- mergeChrom(chromBPI_adjusted_merged, chromBPI_adjusted)
         }
     }
     rm(image)
@@ -76,8 +87,6 @@
     singlefile <- singlefile_merged; rm(singlefile_merged)
     md5sumList <- md5sumList_merged; rm(md5sumList_merged)
     sampleNamesList <- sampleNamesList_merged; rm(sampleNamesList_merged)
-    chromTIC <- chromTIC_merged; rm(chromTIC_merged)
-    chromBPI <- chromBPI_merged; rm(chromBPI_merged)
 
     if (!is.null(args$sampleMetadata)) {
         cat("\tXSET PHENODATA SETTING...\n")
@@ -92,7 +101,13 @@
             stop(error_message)
         }
     }
-    return(list("xdata"=xdata, "singlefile"=singlefile, "md5sumList"=md5sumList,"sampleNamesList"=sampleNamesList, "chromTIC"=chromTIC, "chromBPI"=chromBPI))
+
+    if (!is.null(chromTIC_merged)) { chromTIC <- chromTIC_merged; chromTIC@phenoData <- xdata@phenoData }
+    if (!is.null(chromBPI_merged)) { chromBPI <- chromBPI_merged; chromBPI@phenoData <- xdata@phenoData }
+    if (!is.null(chromTIC_adjusted_merged)) { chromTIC_adjusted <- chromTIC_adjusted_merged; chromTIC_adjusted@phenoData <- xdata@phenoData }
+    if (!is.null(chromBPI_adjusted_merged)) { chromBPI_adjusted <- chromBPI_adjusted_merged; chromBPI_adjusted@phenoData <- xdata@phenoData }
+
+    return(list("xdata"=xdata, "singlefile"=singlefile, "md5sumList"=md5sumList,"sampleNamesList"=sampleNamesList, "chromTIC"=chromTIC, "chromBPI"=chromBPI, "chromTIC_adjusted"=chromTIC_adjusted, "chromBPI_adjusted"=chromBPI_adjusted))
 }
 
 #@author G. Le Corguille
@@ -192,6 +207,9 @@
     return(myDataFrame)
 }
 
+#@author G. Le Corguille
+# Draw the BPI and TIC graphics
+# colored by sample names or class names
 getPlotChromatogram <- function(chrom, xdata, pdfname="Chromatogram.pdf", aggregationFun = "max") {
 
     if (aggregationFun == "sum")
@@ -408,7 +426,7 @@
     for (singlefile_galaxyPath_i in seq(1:length(singlefile_galaxyPaths))) {
       singlefile_galaxyPath <- singlefile_galaxyPaths[singlefile_galaxyPath_i]
       singlefile_sampleName <- singlefile_sampleNames[singlefile_galaxyPath_i]
-      # In case, an url is used to import data within Galaxy 
+      # In case, an url is used to import data within Galaxy
       singlefile_sampleName <- tail(unlist(strsplit(singlefile_sampleName,"/")), n=1)
       singlefile[[singlefile_sampleName]] <- singlefile_galaxyPath
     }
Binary file static/images/xcms_xcmsset_workflow.png has changed