# HG changeset patch
# User lecorguille
# Date 1486549624 18000
# Node ID 8e740205c907786ee3e72e5ee1ab370272d4b74e
# Parent 3bd1e74d4abcaa34d60e87a8ba9369afb35e5fad
planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 717c02f887ce343ca55f862c8020aaf49f5581d8
diff -r 3bd1e74d4abc -r 8e740205c907 abims_xcms_retcor.xml
--- a/abims_xcms_retcor.xml Wed Feb 08 04:36:13 2017 -0500
+++ b/abims_xcms_retcor.xml Wed Feb 08 05:27:04 2017 -0500
@@ -43,7 +43,7 @@
-
+
diff -r 3bd1e74d4abc -r 8e740205c907 lib.r
--- a/lib.r Wed Feb 08 04:36:13 2017 -0500
+++ b/lib.r Wed Feb 08 05:27:04 2017 -0500
@@ -27,28 +27,32 @@
#@author G. Le Corguille
#This function format ions identifiers
-formatIonIdentifiers <- function(variableMetadata, numDigitsRT=0, numDigitsMZ=0) {
- splitDeco = strsplit(as.character(variableMetadata$name),"_")
- idsDeco = sapply(splitDeco, function(x) { deco=unlist(x)[2]; if (is.na(deco)) return ("") else return(paste0("_",deco)) })
- namecustom = make.unique(paste0("M",round(variableMetadata[,"mz"],numDigitsMZ),"T",round(variableMetadata[,"rt"],numDigitsRT),idsDeco))
- variableMetadata=cbind(name=variableMetadata$name, namecustom=namecustom, variableMetadata[,!(colnames(variableMetadata) %in% c("name"))])
- return(variableMetadata)
+formatIonIdentifiers <- function(dataData, numDigitsRT=0, numDigitsMZ=0) {
+ return(make.unique(paste0("M",round(dataData[,"mz"],numDigitsMZ),"T",round(dataData[,"rt"],numDigitsRT))))
}
#@author G. Le Corguille
# value: intensity values to be used into, maxo or intb
getPeaklistW4M <- function(xset, intval="into",convertRTMinute=F,numDigitsMZ=4,numDigitsRT=0,variableMetadataOutput,dataMatrixOutput) {
- variableMetadata_dataMatrix = peakTable(xset, method="medret", value=intval)
- variableMetadata_dataMatrix = cbind(name=groupnames(xset),variableMetadata_dataMatrix)
+ groups <- xset@groups
+ values <- groupval(xset, "medret", value=intval)
- dataMatrix = variableMetadata_dataMatrix[,(make.names(colnames(variableMetadata_dataMatrix)) %in% c("name", make.names(sampnames(xset))))]
+ # renamming of the column rtmed to rt to fit with camera peaklist function output
+ colnames(groups)[colnames(groups)=="rtmed"] <- "rt"
+ colnames(groups)[colnames(groups)=="mzmed"] <- "mz"
+
+ ids <- formatIonIdentifiers(groups, numDigitsRT=numDigitsRT, numDigitsMZ=numDigitsMZ)
+ groups = RTSecondToMinute(groups, convertRTMinute)
- variableMetadata = variableMetadata_dataMatrix[,!(make.names(colnames(variableMetadata_dataMatrix)) %in% c(make.names(sampnames(xset))))]
- variableMetadata = RTSecondToMinute(variableMetadata, convertRTMinute)
- variableMetadata = formatIonIdentifiers(variableMetadata, numDigitsRT=numDigitsRT, numDigitsMZ=numDigitsMZ)
+ rownames(groups) = ids
+ rownames(values) = ids
- write.table(variableMetadata, file=variableMetadataOutput,sep="\t",quote=F,row.names=F)
- write.table(dataMatrix, file=dataMatrixOutput,sep="\t",quote=F,row.names=F)
+ #@TODO: add "name" as the first column name
+ #colnames(groups)[1] = "name"
+ #colnames(values)[1] = "name"
+
+ write.table(groups, file=variableMetadataOutput,sep="\t",quote=F,row.names = T,col.names = NA)
+ write.table(values, file=dataMatrixOutput,sep="\t",quote=F,row.names = T,col.names = NA)
}
#@author Y. Guitton
diff -r 3bd1e74d4abc -r 8e740205c907 macros.xml
--- a/macros.xml Wed Feb 08 04:36:13 2017 -0500
+++ b/macros.xml Wed Feb 08 05:27:04 2017 -0500
@@ -70,42 +70,7 @@
-
- #if $peaklist.peaklistBool
- variableMetadataOutput $variableMetadata
- dataMatrixOutput $dataMatrix
- convertRTMinute $peaklist.convertRTMinute
- numDigitsMZ $peaklist.numDigitsMZ
- numDigitsRT $peaklist.numDigitsRT
- intval $peaklist.intval
- #end if
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- (peaklist['peaklistBool'])
-
-
- (peaklist['peaklistBool'])
-
-
.. class:: infomark
diff -r 3bd1e74d4abc -r 8e740205c907 xcms.r
--- a/xcms.r Wed Feb 08 04:36:13 2017 -0500
+++ b/xcms.r Wed Feb 08 05:27:04 2017 -0500
@@ -252,7 +252,7 @@
getBPCs(xcmsSet=xset,rt="corrected",pdfname=bicspdf)
}
-if ((thefunction == "group" || thefunction == "fillPeaks") && exists("intval")) {
+if (thefunction == "fillPeaks" && exists("intval")) {
getPeaklistW4M(xset,intval,convertRTMinute,numDigitsMZ,numDigitsRT,variableMetadataOutput,dataMatrixOutput)
}