# HG changeset patch # User lecorguille # Date 1520241334 18000 # Node ID c363b9f1caefc0907b4a310e268ae1d8a7ea1eef # Parent 2bf1cb023c947fecc7595d74fa95c6f3ccbc60c2 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 7b226c3ba91a3cf654ec1c14b3ef85090968bb0f diff -r 2bf1cb023c94 -r c363b9f1caef abims_xcms_xcmsSet.xml --- a/abims_xcms_xcmsSet.xml Thu Mar 01 04:14:39 2018 -0500 +++ b/abims_xcms_xcmsSet.xml Mon Mar 05 04:15:34 2018 -0500 @@ -18,6 +18,17 @@ #end if BPPARAM \${GALAXY_SLOTS:-1} + + #if $filterSection.filterAcquisitionNum != "": + filterAcquisitionNum "c($filterSection.filterAcquisitionNum)" + #end if + #if $filterSection.filterRt != "": + filterRt "c($filterSection.filterRt)" + #end if + #if $filterSection.filterMz != "": + filterMz "c($filterSection.filterMz)" + #end if + method $methods.method #if $methods.method == "CentWave": @@ -64,12 +75,20 @@ - +
+ + + + + + + + + +
- + @@ -78,11 +97,15 @@ - + + +
- + + + @@ -138,7 +161,9 @@ - + + + @@ -165,6 +190,11 @@ +
+ + + +
@@ -174,9 +204,9 @@ - - - + + + @@ -594,7 +624,7 @@ - UPGRADE: upgrade the xcms version from 1.46.0 to 3.0.0. So refactoring of a lot of underlining codes and methods -- NEW: a bunch of new options: CentWave.mzCenterFun, CentWave.fitgauss, CentWave.verboseColumns, MatchedFilter.sigma +- NEW: a bunch of new options: Spectra Filters, CentWave.mzCenterFun, CentWave.fitgauss, CentWave.verboseColumns, MatchedFilter.sigma - UPDATE: since xcms 3.0.0, some options are no more available: scanrange, profmethod, MatchedFilter.step, MatchedFilter.sigma, MSW.winSize.noise, MSW.SNR.method diff -r 2bf1cb023c94 -r c363b9f1caef lib.r --- a/lib.r Thu Mar 01 04:14:39 2018 -0500 +++ b/lib.r Mon Mar 05 04:15:34 2018 -0500 @@ -52,7 +52,7 @@ #@author G. Le Corguille # Draw the plotChromPeakDensity 3 per page in a pdf file -getPlotChromPeakDensity <- function(xdata) { +getPlotChromPeakDensity <- function(xdata, mzdigit=4) { pdf(file="plotChromPeakDensity.pdf", width=16, height=12) par(mfrow = c(3, 1), mar = c(4, 4, 1, 0.5)) @@ -62,7 +62,9 @@ xlim <- c(min(featureDefinitions(xdata)$rtmin), max(featureDefinitions(xdata)$rtmax)) for (i in 1:nrow(featureDefinitions(xdata))) { - plotChromPeakDensity(xdata, mz=c(featureDefinitions(xdata)[i,]$mzmin,featureDefinitions(xdata)[i,]$mzmax), col=group_colors, pch=16, xlim=xlim) + mzmin = featureDefinitions(xdata)[i,]$mzmin + mzmax = featureDefinitions(xdata)[i,]$mzmax + plotChromPeakDensity(xdata, mz=c(mzmin,mzmax), col=group_colors, pch=16, xlim=xlim, main=paste(round(mzmin,mzdigit),round(mzmax,mzdigit))) legend("topright", legend=names(group_colors), col=group_colors, cex=0.8, lty=1) } @@ -431,7 +433,7 @@ files[exists] <- sub("//","/",files[exists]) # WHAT IS ON THE FILESYSTEM - filesystem_filepaths <- system(paste("find $PWD/",directory," -not -name '\\.*' -not -path '*conda-env*' -type f -name \"*\"", sep=""), intern=T) + filesystem_filepaths <- system(paste0("find \"$PWD/",directory,"\" -not -name '\\.*' -not -path '*conda-env*' -type f -name \"*\""), intern=T) filesystem_filepaths <- filesystem_filepaths[grep(filepattern, filesystem_filepaths, perl=T)] # COMPARISON @@ -461,7 +463,7 @@ checkXmlStructure <- function (directory) { cat("Checking XML structure...\n") - cmd <- paste("IFS=$'\n'; for xml in $(find",directory,"-not -name '\\.*' -not -path '*conda-env*' -type f -iname '*.*ml*'); do if [ $(xmllint --nonet --noout \"$xml\" 2> /dev/null; echo $?) -gt 0 ]; then echo $xml;fi; done;") + cmd <- paste0("IFS=$'\n'; for xml in $(find '",directory,"' -not -name '\\.*' -not -path '*conda-env*' -type f -iname '*.*ml*'); do if [ $(xmllint --nonet --noout \"$xml\" 2> /dev/null; echo $?) -gt 0 ]; then echo $xml;fi; done;") capture <- system(cmd, intern=TRUE) if (length(capture)>0){ @@ -480,7 +482,7 @@ cat("Checking Non ASCII characters in the XML...\n") processed <- F - l <- system( paste("find",directory, "-not -name '\\.*' -not -path '*conda-env*' -type f -iname '*.*ml*'"), intern=TRUE) + l <- system( paste0("find '",directory, "' -not -name '\\.*' -not -path '*conda-env*' -type f -iname '*.*ml*'"), intern=TRUE) for (i in l){ cmd <- paste("LC_ALL=C grep '[^ -~]' \"", i, "\"", sep="") capture <- suppressWarnings(system(cmd, intern=TRUE)) @@ -538,8 +540,8 @@ singlefile_sampleNames <- args$singlefile_sampleNameNegative } if (exists("singlefile_galaxyPaths")){ - singlefile_galaxyPaths <- unlist(strsplit(singlefile_galaxyPaths,",")) - singlefile_sampleNames <- unlist(strsplit(singlefile_sampleNames,",")) + singlefile_galaxyPaths <- unlist(strsplit(singlefile_galaxyPaths,"\\|")) + singlefile_sampleNames <- unlist(strsplit(singlefile_sampleNames,"\\|")) singlefile <- NULL for (singlefile_galaxyPath_i in seq(1:length(singlefile_galaxyPaths))) { diff -r 2bf1cb023c94 -r c363b9f1caef macros.xml --- a/macros.xml Thu Mar 01 04:14:39 2018 -0500 +++ b/macros.xml Mon Mar 05 04:15:34 2018 -0500 @@ -6,6 +6,7 @@ bioconductor-xcms r-batch r-rcolorbrewer + unzip @@ -24,13 +25,25 @@ sh -c "exit \$return" + + [0-9]+ *, *[0-9]+ + + + + [0-9]+\.?[0-9]* *, *[0-9]+\.?[0-9]* + + + + [0-9, ]+ + + #if $file_load_section.file_load_conditional.file_load_select == "yes": #if $file_load_section.file_load_conditional.input[0].is_of_type("mzxml") or $file_load_section.file_load_conditional.input[0].is_of_type("mzml") or $file_load_section.file_load_conditional.input[0].is_of_type("mzdata") or $file_load_section.file_load_conditional.input[0].is_of_type("netcdf"): - #set singlefile_galaxyPath = ','.join( [ str( $single_file ) for $single_file in $file_load_section.file_load_conditional.input ] ) - #set singlefile_sampleName = ','.join( [ str( $single_file.name ) for $single_file in $file_load_section.file_load_conditional.input ] ) + #set singlefile_galaxyPath = '|'.join( [ str( $single_file ) for $single_file in $file_load_section.file_load_conditional.input ] ) + #set singlefile_sampleName = '|'.join( [ str( $single_file.name ) for $single_file in $file_load_section.file_load_conditional.input ] ) singlefile_galaxyPath '$singlefile_galaxyPath' singlefile_sampleName '$singlefile_sampleName' #else diff -r 2bf1cb023c94 -r c363b9f1caef xcms_xcmsSet.r --- a/xcms_xcmsSet.r Thu Mar 01 04:14:39 2018 -0500 +++ b/xcms_xcmsSet.r Mon Mar 05 04:15:34 2018 -0500 @@ -37,6 +37,16 @@ register(BPPARAM) #saving the specific parameters +if (!is.null(args$filterAcquisitionNum)){ + filterAcquisitionNumParam <- args$filterAcquisitionNum; args$filterAcquisitionNum <- NULL +} +if (!is.null(args$filterRt)){ + filterRtParam <- args$filterRt; args$filterRt <- NULL +} +if (!is.null(args$filterMz)){ + filterMzParam <- args$filterMz; args$filterMz <- NULL +} + method <- args$method; args$method <- NULL cat("\n\n") @@ -80,6 +90,17 @@ cat("\t\t\tLoad Raw Data\n") raw_data <- readMSData(files=files, pdata = new("NAnnotatedDataFrame", pd), mode="onDisk") +cat("\t\t\tApply filter[s] (if asked)\n") +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) +} + cat("\t\t\tChromatographic peak detection\n") findChromPeaksParam <- do.call(paste0(method,"Param"), args) print(findChromPeaksParam) @@ -90,7 +111,7 @@ # Transform the files absolute pathways into relative pathways xdata@processingData@files <- sub(paste(getwd(), "/", sep="") , "", xdata@processingData@files) -save.image() + # Create a sampleMetada file sampleNamesList <- getSampleMetadata(xdata=xdata, sampleMetadataOutput="sampleMetadata.tsv")