Mercurial > repos > lecorguille > xcms_retcor
changeset 37:35a20d7c9f33 draft
planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 088699d00f7e45bebb7da07bebc005c68df058d8
author | lecorguille |
---|---|
date | Wed, 05 Sep 2018 05:59:21 -0400 |
parents | e309e6af6744 |
children | 67ee46ce9781 |
files | abims_xcms_retcor.xml lib.r static/images/xcms_retcor_workflow.png |
diffstat | 3 files changed, 46 insertions(+), 28 deletions(-) [+] |
line wrap: on
line diff
--- a/abims_xcms_retcor.xml Fri Aug 31 09:02:01 2018 -0400 +++ b/abims_xcms_retcor.xml Wed Sep 05 05:59:21 2018 -0400 @@ -127,8 +127,8 @@ </inputs> <outputs> - <data name="xsetRData" format="rdata.xcms.retcor" label="${image.name[:-6]}.retcor.RData" from_work_dir="retcor.RData" /> - <data name="rawVSadjustedPdf" format="pdf" label="${image.name[:-6]}_rawVSadjusted.retcor.Rplots.pdf" from_work_dir="raw_vs_adjusted_rt.pdf" /> + <data name="xsetRData" format="rdata.xcms.retcor" label="${image.name[:-6]}.adjustRtime.RData" from_work_dir="retcor.RData" /> + <data name="rawVSadjustedPdf" format="pdf" label="${image.name[:-6]}_rawVSadjusted.adjustRtime.Rplots.pdf" from_work_dir="raw_vs_adjusted_rt.pdf" /> </outputs> <tests> @@ -246,22 +246,22 @@ **Upstream tools** -========================= ================= ============================== ========== -Name output file format parameter -========================= ================= ============================== ========== -xcms.xcmsSet xset.RData rdata.xcms.findchrompeaks RData file -------------------------- ----------------- ------------------------------ ---------- -xcms.group xset.group.RData RData RData file -========================= ================= ============================== ========== +========================= ============================ ============================== +Name Output file Format +========================= ============================ ============================== +xcms.findChromPeaks raw.xset.RData rdata.xcms.findchrompeaks +------------------------- ---------------------------- ------------------------------ +xcms.groupChromPeaks ``*``.groupChromPeaks.RData rdata.xcms.group +========================= ============================ ============================== **Downstream tools** -=========================== ================== ======== -Name Output file Format -=========================== ================== ======== -xcms.group xset.retcor.RData RData -=========================== ================== ======== +=========================== ============================ ================ +Name Output file Format +=========================== ============================ ================ +xcms.groupChromPeaks ``*``.groupChromPeaks.RData rdata.xcms.group +=========================== ============================ ================ **General schema of the metabolomic workflow** @@ -296,9 +296,9 @@ Output files ------------ -xset.group.retcor.RData: rdata.xcms.retcor format +xset.groupChromPeaks.adjustRtime.RData: rdata.xcms.retcor format - | Rdata file that will be necessary in the **xcms.group** step of the workflow. + | Rdata file that will be necessary in the **xcms.groupChromPeaks** step of the workflow. ---------------------------------------------------
--- a/lib.r Fri Aug 31 09:02:01 2018 -0400 +++ b/lib.r Wed Sep 05 05:59:21 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 }