annotate xcms_differential_analysis.r @ 9:31ec089d20a4 default tip

r
author pieter.lukasse@wur.nl
date Fri, 06 Feb 2015 15:50:06 +0100
parents ddef5534c294
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
1 ## read args:
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
2 args <- commandArgs(TRUE)
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
3 #cat("args <- \"\"\n")
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
4 ## a xcms xset saved as .RData
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
5 args.xsetData <- args[1]
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
6 #cat(paste("args.xsetData <- \"", args[1], "\"\n", sep=""))
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
7
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
8 args.class1 <- args[2]
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
9 args.class2 <- args[3]
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
10 #cat(paste("args.class1 <- \"", args[2], "\"\n", sep=""))
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
11 #cat(paste("args.class2 <- \"", args[3], "\"\n", sep=""))
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
12
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
13 args.topcount <- strtoi(args[4])
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
14 #cat(paste("args.topcount <- ", args[4], "\n", sep=""))
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
15
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
16 args.outTable <- args[5]
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
17 args.outLogFile <- args[6]
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
18 #cat(paste("args.outLogFile <- \"", args[6], "\"\n", sep=""))
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
19
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
20 ## report files
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
21 args.htmlReportFile <- args[7]
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
22 args.htmlReportFile.files_path <- args[8]
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
23 #cat(paste("args.htmlReportFile <- \"", args[7], "\"\n", sep=""))
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
24 #cat(paste("args.htmlReportFile.files_path <- \"", args[8], "\"\n", sep=""))
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
25
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
26 # Send all STDERR to STDOUT using sink() see http://mazamascience.com/WorkingWithData/?p=888
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
27 msg <- file(args.outLogFile, open="wt")
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
28 sink(msg, type="message")
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
29 sink(msg, type="output")
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
30
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
31 tryCatch(
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
32 {
2
627ddbd15823 using tool_dependencies file
pieter.lukasse@wur.nl
parents: 1
diff changeset
33 library(metaMS)
1
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
34 library(xcms)
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
35 #library("R2HTML")
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
36
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
37 ## load the constructed DB :
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
38 xcmsSet <- readRDS(args.xsetData)
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
39
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
40 # info: levels(xcmsSet@phenoData$class) also gives access to the class names
8
ddef5534c294 new tool diffreport
pieter.lukasse@wur.nl
parents: 2
diff changeset
41 dir.create(file.path(args.htmlReportFile.files_path), showWarnings = FALSE)
ddef5534c294 new tool diffreport
pieter.lukasse@wur.nl
parents: 2
diff changeset
42 reporttab <- diffreport(xcmsSet, args.class1, args.class2, paste(args.htmlReportFile.files_path,"/fig", sep=""), args.topcount, metlin = 0.15, h=480, w=640)
1
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
43
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
44 # write out tsv table:
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
45 write.table(reporttab, args.outTable, sep="\t", row.names=FALSE)
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
46
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
47 message("\nGenerating report.........")
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
48
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
49 cat("<html><body><h1>Differential analysis report</h1>", file= args.htmlReportFile)
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
50 #HTML(reporttab[1:args.topcount,], file= args.htmlReportFile)
8
ddef5534c294 new tool diffreport
pieter.lukasse@wur.nl
parents: 2
diff changeset
51 figuresPath <- paste(args.htmlReportFile.files_path, "/fig_eic", sep="")
1
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
52 message(figuresPath)
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
53 listOfFiles <- list.files(path = figuresPath)
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
54 for (i in 1:length(listOfFiles))
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
55 {
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
56 figureName <- listOfFiles[i]
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
57 # maybe we still need to copy the figures to the args.htmlReportFile.files_path
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
58 cat(paste("<img src='fig_eic/", figureName,"' />", sep=""), file= args.htmlReportFile, append=TRUE)
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
59 }
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
60
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
61 message("finished generating report")
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
62 cat("\nWarnings================:\n")
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
63 str( warnings() )
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
64 },
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
65 error=function(cond) {
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
66 sink(NULL, type="message") # default setting
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
67 sink(stderr(), type="output")
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
68 message("\nERROR: ===========\n")
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
69 print(cond)
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
70 }
071a185c2ced new tools
pieter.lukasse@wur.nl
parents:
diff changeset
71 )