Mercurial > repos > ethevenot > multivariate
comparison multivariate_wrapper.R @ 4:5526f8258e8a draft default tip
planemo upload for repository https://github.com/workflow4metabolomics/multivariate.git commit 0f382a5296aae9bfc77df06b0a5ad493eb3c01f3
| author | ethevenot |
|---|---|
| date | Wed, 28 Feb 2018 09:59:25 -0500 |
| parents | e91de3b04320 |
| children |
comparison
equal
deleted
inserted
replaced
| 3:e91de3b04320 | 4:5526f8258e8a |
|---|---|
| 1 #!/usr/bin/env Rscript | 1 #!/usr/bin/env Rscript |
| 2 | 2 |
| 3 library(batch) ## parseCommandArgs | 3 library(batch) ## parseCommandArgs |
| 4 | |
| 5 # Constants | |
| 6 argv <- commandArgs(trailingOnly = FALSE) | |
| 7 script.path <- sub("--file=","",argv[grep("--file=",argv)]) | |
| 8 prog.name <- basename(script.path) | |
| 9 | |
| 10 # Print help | |
| 11 if (length(grep('-h', argv)) >0) { | |
| 12 cat("Usage:", prog.name, | |
| 13 "dataMatrix_in myDataMatrix.tsv", | |
| 14 "sampleMetadata_in mySampleData.tsv", | |
| 15 "variableMetadata_in myVariableMetadata.tsv", | |
| 16 "respC ...", | |
| 17 "predI ...", | |
| 18 "orthoI ...", | |
| 19 "testL ...", | |
| 20 "typeC ...", | |
| 21 "parAsColC ...", | |
| 22 "parCexN ...", | |
| 23 "parPc1I ...", | |
| 24 "parPc2I ...", | |
| 25 "parMahalC ...", | |
| 26 "parLabVc ...", | |
| 27 "algoC ...", | |
| 28 "crossvalI ...", | |
| 29 "log10L ...", | |
| 30 "permI ...", | |
| 31 "scaleC ...", | |
| 32 "sampleMetadata_out mySampleMetadata_out.tsv", | |
| 33 "variableMetadata_out myVariableMetadata_out.tsv", | |
| 34 "figure figure.pdf", | |
| 35 "information information.txt", | |
| 36 "\n") | |
| 37 quit(status = 0) | |
| 38 } | |
| 4 | 39 |
| 5 ######## | 40 ######## |
| 6 # MAIN # | 41 # MAIN # |
| 7 ######## | 42 ######## |
| 8 | 43 |
| 43 | 78 |
| 44 tesL <- eval(parse(text = tesC), envir = envC) | 79 tesL <- eval(parse(text = tesC), envir = envC) |
| 45 | 80 |
| 46 if(!tesL) { | 81 if(!tesL) { |
| 47 | 82 |
| 48 sink(NULL) | 83 sink() |
| 49 stpTxtC <- ifelse(is.na(txtC), | 84 stpTxtC <- ifelse(is.na(txtC), |
| 50 paste0(tesC, " is FALSE"), | 85 paste0(tesC, " is FALSE"), |
| 51 txtC) | 86 txtC) |
| 52 | 87 |
| 53 stop(stpTxtC, | 88 stop(stpTxtC, |
| 72 | 107 |
| 73 xMN <- t(as.matrix(read.table(argVc["dataMatrix_in"], | 108 xMN <- t(as.matrix(read.table(argVc["dataMatrix_in"], |
| 74 check.names = FALSE, | 109 check.names = FALSE, |
| 75 header = TRUE, | 110 header = TRUE, |
| 76 row.names = 1, | 111 row.names = 1, |
| 77 sep = "\t"))) | 112 sep = "\t", |
| 113 comment.char = ""))) | |
| 78 | 114 |
| 79 samDF <- read.table(argVc["sampleMetadata_in"], | 115 samDF <- read.table(argVc["sampleMetadata_in"], |
| 80 check.names = FALSE, | 116 check.names = FALSE, |
| 81 header = TRUE, | 117 header = TRUE, |
| 82 row.names = 1, | 118 row.names = 1, |
| 83 sep = "\t") | 119 sep = "\t", |
| 120 comment.char = "") | |
| 84 flgF("identical(rownames(xMN), rownames(samDF))", txtC = "Sample names (or number) in the data matrix (first row) and sample metadata (first column) are not identical; use the 'Check Format' module in the 'Quality Control' section") | 121 flgF("identical(rownames(xMN), rownames(samDF))", txtC = "Sample names (or number) in the data matrix (first row) and sample metadata (first column) are not identical; use the 'Check Format' module in the 'Quality Control' section") |
| 85 | 122 |
| 86 varDF <- read.table(argVc["variableMetadata_in"], | 123 varDF <- read.table(argVc["variableMetadata_in"], |
| 87 check.names = FALSE, | 124 check.names = FALSE, |
| 88 header = TRUE, | 125 header = TRUE, |
| 89 row.names = 1, | 126 row.names = 1, |
| 90 sep = "\t") | 127 sep = "\t", |
| 128 comment.char = "") | |
| 91 flgF("identical(colnames(xMN), rownames(varDF))", txtC = "Variable names (or number) in the data matrix (first column) and sample metadata (first column) are not identical; use the 'Check Format' module in the 'Quality Control' section") | 129 flgF("identical(colnames(xMN), rownames(varDF))", txtC = "Variable names (or number) in the data matrix (first column) and sample metadata (first column) are not identical; use the 'Check Format' module in the 'Quality Control' section") |
| 92 | 130 |
| 93 flgF("argVc['respC'] == 'none' || (argVc['respC'] %in% colnames(samDF))", | 131 flgF("argVc['respC'] == 'none' || (argVc['respC'] %in% colnames(samDF))", |
| 94 txtC = paste0("Y Response argument (", argVc['respC'], ") must be either none or one of the column names (first row) of your sample metadata")) | 132 txtC = paste0("Y Response argument (", argVc['respC'], ") must be either none or one of the column names (first row) of your sample metadata")) |
| 95 if(argVc["respC"] != "none") { | 133 if(argVc["respC"] != "none") { |
| 425 quote = FALSE, | 463 quote = FALSE, |
| 426 row.names = FALSE, | 464 row.names = FALSE, |
| 427 sep = "\t") | 465 sep = "\t") |
| 428 | 466 |
| 429 # Output ropLs | 467 # Output ropLs |
| 430 if ( ! is.null(argVc['ropls_out'])) | 468 if (!is.null(argVc['ropls_out']) && !is.na(argVc['ropls_out'])) |
| 431 save(ropLs, file = argVc['ropls_out']) | 469 save(ropLs, file = argVc['ropls_out']) |
| 432 | 470 |
| 433 ## Closing | 471 ## Closing |
| 434 ##-------- | 472 ##-------- |
| 435 | 473 |
| 436 cat("\nEnd of '", modNamC, "' Galaxy module call: ", | 474 cat("\nEnd of '", modNamC, "' Galaxy module call: ", |
| 437 as.character(Sys.time()), "\n", sep = "") | 475 as.character(Sys.time()), "\n", sep = "") |
| 438 | 476 |
| 477 cat("\n\n\n============================================================================") | |
| 478 cat("\nAdditional information about the call:\n") | |
| 479 cat("\n1) Parameters:\n") | |
| 480 print(cbind(value = argVc)) | |
| 481 | |
| 482 cat("\n2) Session Info:\n") | |
| 483 sessioninfo <- sessionInfo() | |
| 484 cat(sessioninfo$R.version$version.string,"\n") | |
| 485 cat("Main packages:\n") | |
| 486 for (pkg in names(sessioninfo$otherPkgs)) { cat(paste(pkg,packageVersion(pkg)),"\t") }; cat("\n") | |
| 487 cat("Other loaded packages:\n") | |
| 488 for (pkg in names(sessioninfo$loadedOnly)) { cat(paste(pkg,packageVersion(pkg)),"\t") }; cat("\n") | |
| 489 | |
| 490 cat("============================================================================\n") | |
| 491 | |
| 439 sink() | 492 sink() |
| 440 | 493 |
| 441 options(stringsAsFactors = strAsFacL) | 494 options(stringsAsFactors = strAsFacL) |
| 442 | 495 |
| 443 rm(list = ls()) | 496 rm(list = ls()) |
