annotate lib.r @ 25:7e2770b86a0e draft default tip

planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
author workflow4metabolomics
date Mon, 03 Feb 2025 14:39:35 +0000
parents bf452dc6e4b0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
1 # @authors ABiMS TEAM, Y. Guitton
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
2 # lib.r for Galaxy Workflow4Metabolomics xcms tools
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
3
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
4 # @author G. Le Corguille
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
5 # solve an issue with batch if arguments are logical TRUE/FALSE
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
6 parseCommandArgs <- function(...) {
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
7 args <- batch::parseCommandArgs(...)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
8 for (key in names(args)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
9 if (args[key] %in% c("TRUE", "FALSE")) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
10 args[key] <- as.logical(args[key])
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
11 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
12 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
13 return(args)
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
14 }
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
15
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
16 # @author G. Le Corguille
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
17 # This function will
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
18 # - load the packages
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
19 # - display the sessionInfo
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
20 loadAndDisplayPackages <- function(pkgs) {
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
21 for (pkg in pkgs) suppressPackageStartupMessages(stopifnot(library(pkg, quietly = TRUE, logical.return = TRUE, character.only = TRUE)))
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
22
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
23 sessioninfo <- sessionInfo()
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
24 cat(sessioninfo$R.version$version.string, "\n")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
25 cat("Main packages:\n")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
26 for (pkg in names(sessioninfo$otherPkgs)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
27 cat(paste(pkg, packageVersion(pkg)), "\t")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
28 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
29 cat("\n")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
30 cat("Other loaded packages:\n")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
31 for (pkg in names(sessioninfo$loadedOnly)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
32 cat(paste(pkg, packageVersion(pkg)), "\t")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
33 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
34 cat("\n")
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
35 }
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
36
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
37 # @author G. Le Corguille
12
9efcd7620cde planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 5e066c50d2e4ac6d5796b53331cbd3198ab8c4f9-dirty
lecorguille
parents: 11
diff changeset
38 # This function merge several chromBPI or chromTIC into one.
15
2c7d3db37974 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 088699d00f7e45bebb7da07bebc005c68df058d8
lecorguille
parents: 14
diff changeset
39 mergeChrom <- function(chrom_merged, chrom) {
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
40 if (is.null(chrom_merged)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
41 return(NULL)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
42 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
43 chrom_merged@.Data <- cbind(chrom_merged@.Data, chrom@.Data)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
44 return(chrom_merged)
12
9efcd7620cde planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 5e066c50d2e4ac6d5796b53331cbd3198ab8c4f9-dirty
lecorguille
parents: 11
diff changeset
45 }
9efcd7620cde planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 5e066c50d2e4ac6d5796b53331cbd3198ab8c4f9-dirty
lecorguille
parents: 11
diff changeset
46
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
47 # @author G. Le Corguille
11
67ab853b89f3 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit f01148783819c37e474790dbd56619862960448a
lecorguille
parents: 10
diff changeset
48 # This function merge several xdata into one.
67ab853b89f3 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit f01148783819c37e474790dbd56619862960448a
lecorguille
parents: 10
diff changeset
49 mergeXData <- function(args) {
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
50 chromTIC <- NULL
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
51 chromBPI <- NULL
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
52 chromTIC_adjusted <- NULL
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
53 chromBPI_adjusted <- NULL
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
54 md5sumList <- NULL
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
55 for (image in args$images) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
56 load(image)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
57 # Handle infiles
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
58 if (!exists("singlefile")) singlefile <- NULL
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
59 if (!exists("zipfile")) zipfile <- NULL
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
60 rawFilePath <- retrieveRawfileInTheWorkingDir(singlefile, zipfile, args)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
61 zipfile <- rawFilePath$zipfile
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
62 singlefile <- rawFilePath$singlefile
15
2c7d3db37974 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 088699d00f7e45bebb7da07bebc005c68df058d8
lecorguille
parents: 14
diff changeset
63
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
64 if (exists("raw_data")) xdata <- raw_data
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
65 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.*")
15
2c7d3db37974 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 088699d00f7e45bebb7da07bebc005c68df058d8
lecorguille
parents: 14
diff changeset
66
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
67 cat(sampleNamesList$sampleNamesOrigin, "\n")
15
2c7d3db37974 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 088699d00f7e45bebb7da07bebc005c68df058d8
lecorguille
parents: 14
diff changeset
68
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
69 if (!exists("xdata_merged")) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
70 xdata_merged <- xdata
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
71 singlefile_merged <- singlefile
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
72 md5sumList_merged <- md5sumList
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
73 sampleNamesList_merged <- sampleNamesList
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
74 chromTIC_merged <- chromTIC
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
75 chromBPI_merged <- chromBPI
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
76 chromTIC_adjusted_merged <- chromTIC_adjusted
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
77 chromBPI_adjusted_merged <- chromBPI_adjusted
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
78 } else {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
79 if (is(xdata, "XCMSnExp")) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
80 xdata_merged <- c(xdata_merged, xdata)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
81 } else if (is(xdata, "OnDiskMSnExp")) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
82 xdata_merged <- xcms:::.concatenate_OnDiskMSnExp(xdata_merged, xdata)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
83 } else {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
84 stop("\n\nERROR: The RData either a OnDiskMSnExp object called raw_data or a XCMSnExp object called xdata")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
85 }
15
2c7d3db37974 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 088699d00f7e45bebb7da07bebc005c68df058d8
lecorguille
parents: 14
diff changeset
86
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
87 singlefile_merged <- c(singlefile_merged, singlefile)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
88 md5sumList_merged$origin <- rbind(md5sumList_merged$origin, md5sumList$origin)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
89 sampleNamesList_merged$sampleNamesOrigin <- c(sampleNamesList_merged$sampleNamesOrigin, sampleNamesList$sampleNamesOrigin)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
90 sampleNamesList_merged$sampleNamesMakeNames <- c(sampleNamesList_merged$sampleNamesMakeNames, sampleNamesList$sampleNamesMakeNames)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
91 chromTIC_merged <- mergeChrom(chromTIC_merged, chromTIC)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
92 chromBPI_merged <- mergeChrom(chromBPI_merged, chromBPI)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
93 chromTIC_adjusted_merged <- mergeChrom(chromTIC_adjusted_merged, chromTIC_adjusted)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
94 chromBPI_adjusted_merged <- mergeChrom(chromBPI_adjusted_merged, chromBPI_adjusted)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
95 }
11
67ab853b89f3 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit f01148783819c37e474790dbd56619862960448a
lecorguille
parents: 10
diff changeset
96 }
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
97 rm(image)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
98 xdata <- xdata_merged
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
99 rm(xdata_merged)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
100 singlefile <- singlefile_merged
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
101 rm(singlefile_merged)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
102 md5sumList <- md5sumList_merged
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
103 rm(md5sumList_merged)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
104 sampleNamesList <- sampleNamesList_merged
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
105 rm(sampleNamesList_merged)
11
67ab853b89f3 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit f01148783819c37e474790dbd56619862960448a
lecorguille
parents: 10
diff changeset
106
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
107 if (!is.null(args$sampleMetadata)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
108 cat("\tXSET PHENODATA SETTING...\n")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
109 sampleMetadataFile <- args$sampleMetadata
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
110 sampleMetadata <- getDataFrameFromFile(sampleMetadataFile, header = FALSE)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
111 xdata@phenoData@data$sample_group <- sampleMetadata$V2[match(xdata@phenoData@data$sample_name, sampleMetadata$V1)]
11
67ab853b89f3 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit f01148783819c37e474790dbd56619862960448a
lecorguille
parents: 10
diff changeset
112
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
113 if (any(is.na(pData(xdata)$sample_group))) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
114 sample_missing <- pData(xdata)$sample_name[is.na(pData(xdata)$sample_group)]
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
115 error_message <- paste("Those samples are missing in your sampleMetadata:", paste(sample_missing, collapse = " "))
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
116 print(error_message)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
117 stop(error_message)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
118 }
23
2eb424218159 "planemo upload for repository https://github.com/workflow4metabolomics/xcms commit dcc90f9cf76e6980c0a7d9698c89fab826e7adae"
workflow4metabolomics
parents: 22
diff changeset
119 }
15
2c7d3db37974 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 088699d00f7e45bebb7da07bebc005c68df058d8
lecorguille
parents: 14
diff changeset
120
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
121 if (!is.null(chromTIC_merged)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
122 chromTIC <- chromTIC_merged
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
123 chromTIC@phenoData <- xdata@phenoData
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
124 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
125 if (!is.null(chromBPI_merged)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
126 chromBPI <- chromBPI_merged
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
127 chromBPI@phenoData <- xdata@phenoData
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
128 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
129 if (!is.null(chromTIC_adjusted_merged)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
130 chromTIC_adjusted <- chromTIC_adjusted_merged
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
131 chromTIC_adjusted@phenoData <- xdata@phenoData
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
132 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
133 if (!is.null(chromBPI_adjusted_merged)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
134 chromBPI_adjusted <- chromBPI_adjusted_merged
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
135 chromBPI_adjusted@phenoData <- xdata@phenoData
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
136 }
24
bf452dc6e4b0 planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit eca29d4347fe2f4802091c4a06715232a6fd9253
workflow4metabolomics
parents: 23
diff changeset
137
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
138 return(list("xdata" = xdata, "singlefile" = singlefile, "md5sumList" = md5sumList, "sampleNamesList" = sampleNamesList, "chromTIC" = chromTIC, "chromBPI" = chromBPI, "chromTIC_adjusted" = chromTIC_adjusted, "chromBPI_adjusted" = chromBPI_adjusted))
11
67ab853b89f3 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit f01148783819c37e474790dbd56619862960448a
lecorguille
parents: 10
diff changeset
139 }
67ab853b89f3 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit f01148783819c37e474790dbd56619862960448a
lecorguille
parents: 10
diff changeset
140
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
141 # @author G. Le Corguille
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
142 # This function convert if it is required the Retention Time in minutes
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
143 RTSecondToMinute <- function(variableMetadata, convertRTMinute) {
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
144 if (convertRTMinute) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
145 # converting the retention times (seconds) into minutes
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
146 print("converting the retention times into minutes in the variableMetadata")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
147 variableMetadata[, "rt"] <- variableMetadata[, "rt"] / 60
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
148 variableMetadata[, "rtmin"] <- variableMetadata[, "rtmin"] / 60
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
149 variableMetadata[, "rtmax"] <- variableMetadata[, "rtmax"] / 60
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
150 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
151 return(variableMetadata)
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
152 }
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
153
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
154 # @author G. Le Corguille
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
155 # This function format ions identifiers
23
2eb424218159 "planemo upload for repository https://github.com/workflow4metabolomics/xcms commit dcc90f9cf76e6980c0a7d9698c89fab826e7adae"
workflow4metabolomics
parents: 22
diff changeset
156 formatIonIdentifiers <- function(variableMetadata, numDigitsRT = 0, numDigitsMZ = 0) {
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
157 splitDeco <- strsplit(as.character(variableMetadata$name), "_")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
158 idsDeco <- sapply(
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
159 splitDeco,
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
160 function(x) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
161 deco <- unlist(x)[2]
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
162 if (is.na(deco)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
163 return("")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
164 } else {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
165 return(paste0("_", deco))
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
166 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
167 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
168 )
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
169 namecustom <- make.unique(paste0("M", round(variableMetadata[, "mz"], numDigitsMZ), "T", round(variableMetadata[, "rt"], numDigitsRT), idsDeco))
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
170 variableMetadata <- cbind(name = variableMetadata$name, namecustom = namecustom, variableMetadata[, !(colnames(variableMetadata) %in% c("name"))])
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
171 return(variableMetadata)
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
172 }
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
173
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
174 # @author G. Le Corguille
16
40791ab6c06b planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e131bacd37bfaf2c4132fd214c81db9b8a9df513
lecorguille
parents: 15
diff changeset
175 # This function convert the remain NA to 0 in the dataMatrix
40791ab6c06b planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e131bacd37bfaf2c4132fd214c81db9b8a9df513
lecorguille
parents: 15
diff changeset
176 naTOzeroDataMatrix <- function(dataMatrix, naTOzero) {
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
177 if (naTOzero) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
178 dataMatrix[is.na(dataMatrix)] <- 0
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
179 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
180 return(dataMatrix)
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
181 }
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
182
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
183 # @author G. Le Corguille
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
184 # Draw the plotChromPeakDensity 3 per page in a pdf file
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
185 getPlotChromPeakDensity <- function(xdata, param = NULL, mzdigit = 4) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
186 pdf(file = "plotChromPeakDensity.pdf", width = 16, height = 12)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
187
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
188 par(mfrow = c(3, 1), mar = c(4, 4, 1, 0.5))
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
189
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
190 if (length(unique(xdata$sample_group)) < 10) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
191 group_colors <- brewer.pal(length(unique(xdata$sample_group)), "Set1")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
192 } else {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
193 group_colors <- hcl.colors(length(unique(xdata$sample_group)), palette = "Dark 3")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
194 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
195 names(group_colors) <- unique(xdata$sample_group)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
196 col_per_samp <- as.character(xdata$sample_group)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
197 for (i in seq_len(length(group_colors))) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
198 col_per_samp[col_per_samp == (names(group_colors)[i])] <- group_colors[i]
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
199 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
200
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
201 xlim <- c(min(featureDefinitions(xdata)$rtmin), max(featureDefinitions(xdata)$rtmax))
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
202 for (i in seq_len(nrow(featureDefinitions(xdata)))) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
203 mzmin <- featureDefinitions(xdata)[i, ]$mzmin
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
204 mzmax <- featureDefinitions(xdata)[i, ]$mzmax
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
205 plotChromPeakDensity(xdata, param = param, mz = c(mzmin, mzmax), col = col_per_samp, pch = 16, xlim = xlim, main = paste(round(mzmin, mzdigit), round(mzmax, mzdigit)))
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
206 legend("topright", legend = names(group_colors), col = group_colors, cex = 0.8, lty = 1)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
207 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
208
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
209 dev.off()
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
210 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
211
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
212 # @author G. Le Corguille
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
213 # Draw the plotChromPeakDensity 3 per page in a pdf file
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
214 getPlotAdjustedRtime <- function(xdata) {
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
215 pdf(file = "raw_vs_adjusted_rt.pdf", width = 16, height = 12)
10
47e953d9da82 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 49203f8a5271fa5e6bb889e907df71ebf7757309
lecorguille
parents: 8
diff changeset
216
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
217 # Color by group
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
218 if (length(unique(xdata$sample_group)) < 10) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
219 group_colors <- brewer.pal(length(unique(xdata$sample_group)), "Set1")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
220 } else {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
221 group_colors <- hcl.colors(length(unique(xdata$sample_group)), palette = "Dark 3")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
222 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
223 if (length(group_colors) > 1) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
224 names(group_colors) <- unique(xdata$sample_group)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
225 plotAdjustedRtime(xdata, col = group_colors[xdata$sample_group])
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
226 legend("topright", legend = names(group_colors), col = group_colors, cex = 0.8, lty = 1)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
227 }
10
47e953d9da82 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 49203f8a5271fa5e6bb889e907df71ebf7757309
lecorguille
parents: 8
diff changeset
228
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
229 # Color by sample
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
230 plotAdjustedRtime(xdata, col = rainbow(length(xdata@phenoData@data$sample_name)))
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
231 legend("topright", legend = xdata@phenoData@data$sample_name, col = rainbow(length(xdata@phenoData@data$sample_name)), cex = 0.8, lty = 1)
10
47e953d9da82 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 49203f8a5271fa5e6bb889e907df71ebf7757309
lecorguille
parents: 8
diff changeset
232
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
233 dev.off()
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
234 }
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
235
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
236 # @author G. Le Corguille
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
237 # value: intensity values to be used into, maxo or intb
24
bf452dc6e4b0 planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit eca29d4347fe2f4802091c4a06715232a6fd9253
workflow4metabolomics
parents: 23
diff changeset
238 getPeaklistW4M <- function(xdata, intval = "into", convertRTMinute = FALSE, numDigitsMZ = 4, numDigitsRT = 0, naTOzero = TRUE, variableMetadataOutput, dataMatrixOutput, sampleNamesList) {
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
239 dataMatrix <- featureValues(xdata, method = "medret", value = intval)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
240 colnames(dataMatrix) <- make.names(tools::file_path_sans_ext(colnames(dataMatrix)))
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
241 dataMatrix <- cbind(name = groupnames(xdata), dataMatrix)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
242 variableMetadata <- featureDefinitions(xdata)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
243 colnames(variableMetadata)[1] <- "mz"
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
244 colnames(variableMetadata)[4] <- "rt"
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
245 variableMetadata <- data.frame(name = groupnames(xdata), variableMetadata)
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
246
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
247 variableMetadata <- RTSecondToMinute(variableMetadata, convertRTMinute)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
248 variableMetadata <- formatIonIdentifiers(variableMetadata, numDigitsRT = numDigitsRT, numDigitsMZ = numDigitsMZ)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
249 dataMatrix <- naTOzeroDataMatrix(dataMatrix, naTOzero)
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
250
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
251 # FIX: issue when the vector at peakidx is too long and is written in a new line during the export
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
252 variableMetadata[, "peakidx"] <- vapply(variableMetadata[, "peakidx"], FUN = paste, FUN.VALUE = character(1), collapse = ",")
19
7b77a7238777 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 37b0a6a7686f701e4bf00db97ae2c1b82cd6e989
lecorguille
parents: 18
diff changeset
253
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
254 write.table(variableMetadata, file = variableMetadataOutput, sep = "\t", quote = FALSE, row.names = FALSE)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
255 write.table(dataMatrix, file = dataMatrixOutput, sep = "\t", quote = FALSE, row.names = FALSE)
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
256 }
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
257
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
258 # @author G. Le Corguille
11
67ab853b89f3 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit f01148783819c37e474790dbd56619862960448a
lecorguille
parents: 10
diff changeset
259 # It allow different of field separators
24
bf452dc6e4b0 planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit eca29d4347fe2f4802091c4a06715232a6fd9253
workflow4metabolomics
parents: 23
diff changeset
260 getDataFrameFromFile <- function(filename, header = TRUE) {
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
261 myDataFrame <- read.table(filename, header = header, sep = ";", stringsAsFactors = FALSE)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
262 if (ncol(myDataFrame) < 2) myDataFrame <- read.table(filename, header = header, sep = "\t", stringsAsFactors = FALSE)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
263 if (ncol(myDataFrame) < 2) myDataFrame <- read.table(filename, header = header, sep = ",", stringsAsFactors = FALSE)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
264 if (ncol(myDataFrame) < 2) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
265 error_message <- "Your tabular file seems not well formatted. The column separators accepted are ; , and tabulation"
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
266 print(error_message)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
267 stop(error_message)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
268 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
269 return(myDataFrame)
11
67ab853b89f3 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit f01148783819c37e474790dbd56619862960448a
lecorguille
parents: 10
diff changeset
270 }
67ab853b89f3 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit f01148783819c37e474790dbd56619862960448a
lecorguille
parents: 10
diff changeset
271
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
272 # @author G. Le Corguille
15
2c7d3db37974 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 088699d00f7e45bebb7da07bebc005c68df058d8
lecorguille
parents: 14
diff changeset
273 # Draw the BPI and TIC graphics
2c7d3db37974 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 088699d00f7e45bebb7da07bebc005c68df058d8
lecorguille
parents: 14
diff changeset
274 # colored by sample names or class names
23
2eb424218159 "planemo upload for repository https://github.com/workflow4metabolomics/xcms commit dcc90f9cf76e6980c0a7d9698c89fab826e7adae"
workflow4metabolomics
parents: 22
diff changeset
275 getPlotChromatogram <- function(chrom, xdata, pdfname = "Chromatogram.pdf", aggregationFun = "max") {
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
276 if (aggregationFun == "sum") {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
277 type <- "Total Ion Chromatograms"
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
278 } else {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
279 type <- "Base Peak Intensity Chromatograms"
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
280 }
10
47e953d9da82 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 49203f8a5271fa5e6bb889e907df71ebf7757309
lecorguille
parents: 8
diff changeset
281
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
282 adjusted <- "Raw"
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
283 if (hasAdjustedRtime(xdata)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
284 adjusted <- "Adjusted"
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
285 }
10
47e953d9da82 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 49203f8a5271fa5e6bb889e907df71ebf7757309
lecorguille
parents: 8
diff changeset
286
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
287 main <- paste(type, ":", adjusted, "data")
10
47e953d9da82 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 49203f8a5271fa5e6bb889e907df71ebf7757309
lecorguille
parents: 8
diff changeset
288
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
289 pdf(pdfname, width = 16, height = 10)
10
47e953d9da82 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 49203f8a5271fa5e6bb889e907df71ebf7757309
lecorguille
parents: 8
diff changeset
290
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
291 # Color by group
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
292 if (length(unique(xdata$sample_group)) < 10) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
293 group_colors <- brewer.pal(length(unique(xdata$sample_group)), "Set1")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
294 } else {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
295 group_colors <- hcl.colors(length(unique(xdata$sample_group)), palette = "Dark 3")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
296 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
297 if (length(group_colors) > 1) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
298 names(group_colors) <- unique(xdata$sample_group)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
299 plot(chrom, col = group_colors[chrom$sample_group], main = main, peakType = "none")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
300 legend("topright", legend = names(group_colors), col = group_colors, cex = 0.8, lty = 1)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
301 }
10
47e953d9da82 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 49203f8a5271fa5e6bb889e907df71ebf7757309
lecorguille
parents: 8
diff changeset
302
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
303 # Color by sample
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
304 plot(chrom, col = rainbow(length(xdata@phenoData@data$sample_name)), main = main, peakType = "none")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
305 legend("topright", legend = xdata@phenoData@data$sample_name, col = rainbow(length(xdata@phenoData@data$sample_name)), cex = 0.8, lty = 1)
10
47e953d9da82 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit 49203f8a5271fa5e6bb889e907df71ebf7757309
lecorguille
parents: 8
diff changeset
306
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
307 dev.off()
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
308 }
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
309
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
310
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
311 # Get the polarities from all the samples of a condition
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
312 # @author Misharl Monsoor misharl.monsoor@sb-roscoff.fr ABiMS TEAM
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
313 # @author Gildas Le Corguille lecorguille@sb-roscoff.fr ABiMS TEAM
23
2eb424218159 "planemo upload for repository https://github.com/workflow4metabolomics/xcms commit dcc90f9cf76e6980c0a7d9698c89fab826e7adae"
workflow4metabolomics
parents: 22
diff changeset
314 getSampleMetadata <- function(xdata = NULL, sampleMetadataOutput = "sampleMetadata.tsv") {
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
315 cat("Creating the sampleMetadata file...\n")
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
316
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
317 # Create the sampleMetada dataframe
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
318 sampleMetadata <- xdata@phenoData@data
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
319 rownames(sampleMetadata) <- NULL
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
320 colnames(sampleMetadata) <- c("sample_name", "class")
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
321
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
322 sampleNamesOrigin <- sampleMetadata$sample_name
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
323 sampleNamesMakeNames <- make.names(sampleNamesOrigin)
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
324
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
325 if (any(duplicated(sampleNamesMakeNames))) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
326 write("\n\nERROR: Usually, R has trouble to deal with special characters in its column names, so it rename them using make.names().\nIn your case, at least two columns after the renaming obtain the same name, thus XCMS will collapse those columns per name.", stderr())
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
327 for (sampleName in sampleNamesOrigin) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
328 write(paste(sampleName, "\t->\t", make.names(sampleName)), stderr())
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
329 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
330 stop("\n\nERROR: One or more of your files will not be import by xcmsSet. It may due to bad characters in their filenames.")
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
331 }
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
332
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
333 if (!all(sampleNamesOrigin == sampleNamesMakeNames)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
334 cat("\n\nWARNING: Usually, R has trouble to deal with special characters in its column names, so it rename them using make.names()\nIn your case, one or more sample names will be renamed in the sampleMetadata and dataMatrix files:\n")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
335 for (sampleName in sampleNamesOrigin) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
336 cat(paste(sampleName, "\t->\t", make.names(sampleName), "\n"))
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
337 }
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
338 }
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
339
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
340 sampleMetadata$sample_name <- sampleNamesMakeNames
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
341
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
342
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
343 # For each sample file, the following actions are done
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
344 for (fileIdx in seq_len(length(fileNames(xdata)))) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
345 # Check if the file is in the CDF format
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
346 if (!mzR:::netCDFIsFile(fileNames(xdata))) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
347 # If the column isn't exist, with add one filled with NA
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
348 if (is.null(sampleMetadata$polarity)) sampleMetadata$polarity <- NA
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
349
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
350 # Extract the polarity (a list of polarities)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
351 polarity <- fData(xdata)[fData(xdata)$fileIdx == fileIdx, "polarity"]
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
352 # Verify if all the scans have the same polarity
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
353 uniq_list <- unique(polarity)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
354 if (length(uniq_list) > 1) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
355 polarity <- "mixed"
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
356 } else {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
357 polarity <- as.character(uniq_list)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
358 }
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
359
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
360 # Set the polarity attribute
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
361 sampleMetadata$polarity[fileIdx] <- polarity
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
362 }
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
363 }
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
364
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
365 write.table(sampleMetadata, sep = "\t", quote = FALSE, row.names = FALSE, file = sampleMetadataOutput)
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
366
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
367 return(list("sampleNamesOrigin" = sampleNamesOrigin, "sampleNamesMakeNames" = sampleNamesMakeNames))
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
368 }
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
369
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
370
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
371 # This function will compute MD5 checksum to check the data integrity
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
372 # @author Gildas Le Corguille lecorguille@sb-roscoff.fr
23
2eb424218159 "planemo upload for repository https://github.com/workflow4metabolomics/xcms commit dcc90f9cf76e6980c0a7d9698c89fab826e7adae"
workflow4metabolomics
parents: 22
diff changeset
373 getMd5sum <- function(files) {
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
374 cat("Compute md5 checksum...\n")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
375 library(tools)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
376 return(as.matrix(md5sum(files)))
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
377 }
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
378
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
379 # This function retrieve the raw file in the working directory
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
380 # - if zipfile: unzip the file with its directory tree
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
381 # - if singlefiles: set symlink with the good filename
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
382 # @author Gildas Le Corguille lecorguille@sb-roscoff.fr
23
2eb424218159 "planemo upload for repository https://github.com/workflow4metabolomics/xcms commit dcc90f9cf76e6980c0a7d9698c89fab826e7adae"
workflow4metabolomics
parents: 22
diff changeset
383 retrieveRawfileInTheWorkingDir <- function(singlefile, zipfile, args, prefix = "") {
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
384 if (!(prefix %in% c("", "Positive", "Negative", "MS1", "MS2"))) stop("prefix must be either '', 'Positive', 'Negative', 'MS1' or 'MS2'")
22
83c00880b7c8 "planemo upload for repository https://github.com/workflow4metabolomics/xcms commit f1caf2a3bf23cf319a75dd12c86402555dd02617"
workflow4metabolomics
parents: 21
diff changeset
385
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
386 # single - if the file are passed in the command arguments -> refresh singlefile
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
387 if (!is.null(args[[paste0("singlefile_galaxyPath", prefix)]])) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
388 singlefile_galaxyPaths <- unlist(strsplit(args[[paste0("singlefile_galaxyPath", prefix)]], "\\|"))
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
389 singlefile_sampleNames <- unlist(strsplit(args[[paste0("singlefile_sampleName", prefix)]], "\\|"))
22
83c00880b7c8 "planemo upload for repository https://github.com/workflow4metabolomics/xcms commit f1caf2a3bf23cf319a75dd12c86402555dd02617"
workflow4metabolomics
parents: 21
diff changeset
390
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
391 singlefile <- NULL
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
392 for (singlefile_galaxyPath_i in seq_len(length(singlefile_galaxyPaths))) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
393 singlefile_galaxyPath <- singlefile_galaxyPaths[singlefile_galaxyPath_i]
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
394 singlefile_sampleName <- singlefile_sampleNames[singlefile_galaxyPath_i]
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
395 # In case, an url is used to import data within Galaxy
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
396 singlefile_sampleName <- tail(unlist(strsplit(singlefile_sampleName, "/")), n = 1)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
397 singlefile[[singlefile_sampleName]] <- singlefile_galaxyPath
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
398 }
24
bf452dc6e4b0 planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit eca29d4347fe2f4802091c4a06715232a6fd9253
workflow4metabolomics
parents: 23
diff changeset
399 }
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
400 # zipfile - if the file are passed in the command arguments -> refresh zipfile
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
401 if (!is.null(args[[paste0("zipfile", prefix)]])) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
402 zipfile <- args[[paste0("zipfile", prefix)]]
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
403 }
24
bf452dc6e4b0 planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit eca29d4347fe2f4802091c4a06715232a6fd9253
workflow4metabolomics
parents: 23
diff changeset
404
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
405 # single
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
406 if (!is.null(singlefile) && (length("singlefile") > 0)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
407 files <- vector()
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
408 for (singlefile_sampleName in names(singlefile)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
409 singlefile_galaxyPath <- singlefile[[singlefile_sampleName]]
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
410 if (!file.exists(singlefile_galaxyPath)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
411 error_message <- paste("Cannot access the sample:", singlefile_sampleName, "located:", singlefile_galaxyPath, ". Please, contact your administrator ... if you have one!")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
412 print(error_message)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
413 stop(error_message)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
414 }
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
415
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
416 if (!suppressWarnings(try(file.link(singlefile_galaxyPath, singlefile_sampleName), silent = TRUE))) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
417 file.copy(singlefile_galaxyPath, singlefile_sampleName)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
418 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
419 files <- c(files, singlefile_sampleName)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
420 }
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
421 }
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
422 # zipfile
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
423 if (!is.null(zipfile) && (zipfile != "")) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
424 if (!file.exists(zipfile)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
425 error_message <- paste("Cannot access the Zip file:", zipfile, ". Please, contact your administrator ... if you have one!")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
426 print(error_message)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
427 stop(error_message)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
428 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
429 suppressWarnings(unzip(zipfile, unzip = "unzip"))
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
430
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
431 # get the directory name
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
432 suppressWarnings(filesInZip <- unzip(zipfile, list = TRUE))
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
433 directories <- unique(unlist(lapply(strsplit(filesInZip$Name, "/"), function(x) x[1])))
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
434 directories <- directories[!(directories %in% c("__MACOSX")) & file.info(directories)$isdir]
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
435 directory <- "."
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
436 if (length(directories) == 1) directory <- directories
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
437
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
438 cat("files_root_directory\t", directory, "\n")
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
439
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
440 filepattern <- c("[Cc][Dd][Ff]", "[Nn][Cc]", "([Mm][Zz])?[Xx][Mm][Ll]", "[Mm][Zz][Dd][Aa][Tt][Aa]", "[Mm][Zz][Mm][Ll]")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
441 filepattern <- paste(paste("\\.", filepattern, "$", sep = ""), collapse = "|")
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
442 info <- file.info(directory)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
443 listed <- list.files(directory[info$isdir], pattern = filepattern, recursive = TRUE, full.names = TRUE)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
444 files <- c(directory[!info$isdir], listed)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
445 exists <- file.exists(files)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
446 files <- files[exists]
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
447 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
448 return(list(zipfile = zipfile, singlefile = singlefile, files = files))
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
449 }
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
450
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
451
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
452 # This function retrieve a xset like object
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
453 # @author Gildas Le Corguille lecorguille@sb-roscoff.fr
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
454 getxcmsSetObject <- function(xobject) {
25
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
455 # XCMS 1.x
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
456 if (class(xobject) == "xcmsSet") {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
457 return(xobject)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
458 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
459 # XCMS 3.x
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
460 if (class(xobject) == "XCMSnExp") {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
461 # Get the legacy xcmsSet object
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
462 suppressWarnings(xset <- as(xobject, "xcmsSet"))
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
463 if (!is.null(xset@phenoData$sample_group)) {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
464 sampclass(xset) <- xset@phenoData$sample_group
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
465 } else {
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
466 sampclass(xset) <- "."
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
467 }
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
468 return(xset)
7e2770b86a0e planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/ commit 95721ced8347c09e79340e6d67ecb41c5cc64163
workflow4metabolomics
parents: 24
diff changeset
469 }
7
dca722aecb67 planemo upload for repository https://github.com/workflow4metabolomics/xcms commit e384d6dd5f410799ec211f73bca0b5d5d7bc651e
lecorguille
parents:
diff changeset
470 }