Mercurial > repos > eschen42 > w4mcorcov
annotate w4mcorcov_calc.R @ 4:d3bb34e764fe draft
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 7a0b65df47977b9c7a62de7dc1587e5fb3e5abc1
| author | eschen42 | 
|---|---|
| date | Mon, 15 Jan 2018 14:08:59 -0500 | 
| parents | 61935618f92c | 
| children | 1d046f648b47 | 
| rev | line source | 
|---|---|
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 1 # center with 'colMeans()' - ref: http://gastonsanchez.com/visually-enforced/how-to/2014/01/15/Center-data-in-R/ | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 2 center_colmeans <- function(x) { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 3 xcenter = colMeans(x) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 4 x - rep(xcenter, rep.int(nrow(x), ncol(x))) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 5 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 6 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 7 #### OPLS-DA | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 8 algoC <- "nipals" | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 9 | 
| 4 
d3bb34e764fe
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 7a0b65df47977b9c7a62de7dc1587e5fb3e5abc1
 eschen42 parents: 
3diff
changeset | 10 do_detail_plot <- function(x_dataMatrix, x_predictor, x_is_match, x_algorithm, x_prefix, x_show_labels, x_show_loado_labels, x_progress = print, x_env, x_crossval_i) { | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 11 off <- function(x) if (x_show_labels == "0") 0 else x | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 12 if (x_is_match && ncol(x_dataMatrix) > 0 && length(unique(x_predictor))> 1) { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 13 my_oplsda <- opls( | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 14 x = x_dataMatrix | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 15 , y = x_predictor | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 16 , algoC = x_algorithm | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 17 , predI = 1 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 18 , orthoI = if (ncol(x_dataMatrix) > 1) 1 else 0 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 19 , printL = FALSE | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 20 , plotL = FALSE | 
| 4 
d3bb34e764fe
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 7a0b65df47977b9c7a62de7dc1587e5fb3e5abc1
 eschen42 parents: 
3diff
changeset | 21 , crossvalI = x_crossval_i | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 22 ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 23 my_oplsda_suppLs_y_levels <- levels(as.factor(my_oplsda@suppLs$y)) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 24 fctr_lvl_1 <- my_oplsda_suppLs_y_levels[1] | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 25 fctr_lvl_2 <- my_oplsda_suppLs_y_levels[2] | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 26 my_cor_vs_cov <- cor_vs_cov( | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 27 matrix_x = x_dataMatrix | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 28 , ropls_x = my_oplsda | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 29 ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 30 with( | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 31 my_cor_vs_cov | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 32 , { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 33 min_x <- min(covariance) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 34 max_x <- max(covariance) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 35 lim_x <- max(sapply(X=c(min_x, max_x), FUN=abs)) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 36 covariance <- covariance / lim_x | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 37 lim_x <- 1.2 | 
| 3 
61935618f92c
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 7682e8e7ae2bfb926d94b414b9a1649389f33582
 eschen42 parents: 
2diff
changeset | 38 main_label <- sprintf("%s for level %s versus %s", x_prefix, fctr_lvl_1, fctr_lvl_2) | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 39 main_cex <- min(1.0, 46.0/nchar(main_label)) | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 40 # "It is generally accepted that a variable should be selected if vj>1, [27–29], | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 41 # but a proper threshold between 0.83 and 1.21 can yield more relevant variables according to [28]." | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 42 # (Mehmood 2012 doi:10.1186/1748-7188-6-27) | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 43 vipco <- pmax(0, pmin(1,(vip4p-0.83)/(1.21-0.83))) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 44 alpha <- 0.1 + 0.4 * vipco | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 45 red <- as.numeric(correlation > 0) * vipco | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 46 blue <- as.numeric(correlation < 0) * vipco | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 47 plus_cor <- correlation | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 48 plus_cov <- covariance | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 49 cex <- 0.75 | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 50 plot( | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 51 y = plus_cor | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 52 , x = plus_cov | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 53 , type="p" | 
| 3 
61935618f92c
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 7682e8e7ae2bfb926d94b414b9a1649389f33582
 eschen42 parents: 
2diff
changeset | 54 , xlim=c( -lim_x - off(0.2), lim_x + off(0.2) ) | 
| 
61935618f92c
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 7682e8e7ae2bfb926d94b414b9a1649389f33582
 eschen42 parents: 
2diff
changeset | 55 , ylim=c( -1.0 - off(0.2), 1.0 + off(0.2) ) | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 56 , xlab = sprintf("relative covariance(feature,t1)") | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 57 , ylab = sprintf("correlation(feature,t1)") | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 58 , main = main_label | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 59 , cex.main = main_cex | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 60 , cex = cex | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 61 , pch = 16 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 62 , col = rgb(blue = blue, red = red, green = 0, alpha = alpha) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 63 ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 64 low_x <- -0.7 * lim_x | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 65 high_x <- 0.7 * lim_x | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 66 text(x = low_x, y = -0.05, labels = fctr_lvl_1, col = "blue") | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 67 text(x = high_x, y = 0.05, labels = fctr_lvl_2, col = "red") | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 68 if ( x_show_labels != "0" ) { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 69 my_loadp <- loadp | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 70 my_loado <- loado | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 71 names(my_loadp) <- tsv1$featureID | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 72 names(my_loado) <- tsv1$featureID | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 73 if ( x_show_labels == "ALL" ) { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 74 n_labels <- length(loadp) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 75 } else { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 76 n_labels <- as.numeric(x_show_labels) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 77 } | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 78 n_labels <- min( n_labels, (1 + length(loadp)) / 2 ) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 79 labels_to_show <- c( | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 80 names(head(sort(my_loadp),n = n_labels)) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 81 , names(tail(sort(my_loadp),n = n_labels)) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 82 ) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 83 if ( x_show_loado_labels ) { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 84 labels_to_show <- c( | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 85 labels_to_show | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 86 , names(head(sort(my_loado),n = n_labels)) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 87 , names(tail(sort(my_loado),n = n_labels)) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 88 ) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 89 } | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 90 labels <- unname(sapply( X = tsv1$featureID, FUN = function(x) if( x %in% labels_to_show ) x else "" )) | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 91 text( | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 92 y = plus_cor - 0.013 | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 93 , x = plus_cov + 0.020 | 
| 3 
61935618f92c
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 7682e8e7ae2bfb926d94b414b9a1649389f33582
 eschen42 parents: 
2diff
changeset | 94 , cex = 0.4 | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 95 , labels = labels | 
| 3 
61935618f92c
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 7682e8e7ae2bfb926d94b414b9a1649389f33582
 eschen42 parents: 
2diff
changeset | 96 , col = rgb(blue = 0, red = 0, green = 0, alpha = 0.5) # rgb(blue = blue, red = red, green = 0, alpha = 0.2 + 0.8 * alpha) | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 97 , srt = -30 # slant 30 degrees downward | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 98 , adj = 0 # left-justified | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 99 ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 100 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 101 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 102 ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 103 typeVc <- c("correlation", # 1 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 104 "outlier", # 2 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 105 "overview", # 3 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 106 "permutation", # 4 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 107 "predict-train", # 5 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 108 "predict-test", # 6 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 109 "summary", # 7 = c(2,3,4,9) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 110 "x-loading", # 8 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 111 "x-score", # 9 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 112 "x-variance", # 10 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 113 "xy-score", # 11 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 114 "xy-weight" # 12 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 115 ) # [c(3,8,9)] # [c(4,3,8,9)] | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 116 if ( length(my_oplsda@orthoVipVn) > 0 ) { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 117 my_typevc <- typeVc[c(9,3,8)] | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 118 } else { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 119 my_typevc <- c("(dummy)","overview","(dummy)") | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 120 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 121 for (my_type in my_typevc) { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 122 if (my_type %in% typeVc) { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 123 # print(sprintf("plotting type %s", my_type)) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 124 plot( | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 125 x = my_oplsda | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 126 , typeVc = my_type | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 127 , parCexN = 0.4 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 128 , parDevNewL = FALSE | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 129 , parLayL = TRUE | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 130 , parEllipsesL = TRUE | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 131 ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 132 } else { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 133 # print("plotting dummy graph") | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 134 plot(x=1, y=1, xaxt="n", yaxt="n", xlab="", ylab="", type="n") | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 135 text(x=1, y=1, labels="no orthogonal projection is possible") | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 136 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 137 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 138 return (my_cor_vs_cov) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 139 } else { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 140 # x_progress(sprintf("x_is_match = %s, ncol(x_dataMatrix) = %d, length(unique(x_predictor)) = %d",x_is_match, ncol(x_dataMatrix), length(unique(x_predictor)))) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 141 return (NULL) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 142 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 143 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 144 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 145 # S-PLOT and OPLS reference: Wiklund_2008 doi:10.1021/ac0713510 | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 146 corcov_calc <- function(calc_env, failure_action = stop, progress_action = function(x){}, corcov_tsv_action = function(t){}, salience_tsv_action = function(t){}) { | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 147 if ( ! is.environment(calc_env) ) { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 148 failure_action("corcov_calc: fatal error - 'calc_env' is not an environment") | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 149 return ( FALSE ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 150 } | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 151 if ( ! is.function(corcov_tsv_action) ) { | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 152 failure_action("corcov_calc: fatal error - 'corcov_tsv_action' is not a function") | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 153 return ( FALSE ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 154 } | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 155 if ( ! is.function(salience_tsv_action) ) { | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 156 failure_action("salience_calc: fatal error - 'salience_tsv_action' is not a function") | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 157 return ( FALSE ) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 158 } | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 159 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 160 # extract parameters from the environment | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 161 vrbl_metadata <- calc_env$vrbl_metadata | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 162 vrbl_metadata_names <- vrbl_metadata[,1] | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 163 smpl_metadata <- calc_env$smpl_metadata | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 164 data_matrix <- calc_env$data_matrix | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 165 pairSigFeatOnly <- calc_env$pairSigFeatOnly | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 166 facC <- calc_env$facC | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 167 tesC <- calc_env$tesC | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 168 # extract the levels from the environment | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 169 originalLevCSV <- levCSV <- calc_env$levCSV | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 170 # matchingC is one of { "none", "wildcard", "regex" } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 171 matchingC <- calc_env$matchingC | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 172 labelFeatures <- calc_env$labelFeatures | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 173 labelOrthoFeatures <- calc_env$labelOrthoFeatures | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 174 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 175 # arg/env checking | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 176 if (!(facC %in% names(smpl_metadata))) { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 177 failure_action(sprintf("bad parameter! Factor name '%s' not found in sampleMetadata", facC)) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 178 return ( FALSE ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 179 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 180 | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 181 mz <- vrbl_metadata$mz | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 182 names(mz) <- vrbl_metadata$variableMetadata | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 183 mz_lookup <- function(feature) unname(mz[feature]) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 184 | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 185 rt <- vrbl_metadata$rt | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 186 names(rt) <- vrbl_metadata$variableMetadata | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 187 rt_lookup <- function(feature) unname(rt[feature]) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 188 | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 189 # calculate salience_df as data.frame(feature, max_level, max_median, max_rcv, mean_median, salience, salient_rcv) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 190 salience_df <- calc_env$salience_df <- w4msalience( | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 191 data_matrix = data_matrix | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 192 , sample_class = smpl_metadata[,facC] | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 193 , failure_action = failure_action | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 194 ) | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 195 salience_tsv_action({ | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 196 my_df <- data.frame( | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 197 featureID = salience_df$feature | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 198 , salientLevel = salience_df$max_level | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 199 , salientRCV = salience_df$salient_rcv | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 200 , salience = salience_df$salience | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 201 , mz = mz_lookup(salience_df$feature) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 202 , rt = rt_lookup(salience_df$feature) | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 203 ) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 204 my_df[order(-my_df$salience),] | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 205 }) | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 206 | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 207 # transform wildcards to regexen | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 208 if (matchingC == "wildcard") { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 209 # strsplit(x = "hello,wild,world", split = ",") | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 210 levCSV <- gsub("[.]", "[.]", levCSV) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 211 levCSV <- strsplit(x = levCSV, split = ",") | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 212 levCSV <- sapply(levCSV, utils::glob2rx, trim.tail = FALSE) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 213 levCSV <- paste(levCSV, collapse = ",") | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 214 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 215 # function to determine whether level is a member of levCSV | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 216 isLevelSelected <- function(lvl) { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 217 matchFun <- if (matchingC != "none") grepl else `==` | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 218 return( | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 219 Reduce( | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 220 f = "||" | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 221 , x = sapply( | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 222 X = strsplit( | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 223 x = levCSV | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 224 , split = "," | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 225 , fixed = TRUE | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 226 )[[1]] | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 227 , FUN = matchFun | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 228 , lvl | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 229 ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 230 ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 231 ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 232 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 233 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 234 # transpose matrix because ropls matrix is the transpose of XCMS matrix | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 235 # Wiklund_2008 centers and pareto-scales data before OPLS-DA S-plot | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 236 # center | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 237 cdm <- center_colmeans(t(data_matrix)) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 238 # pareto-scale | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 239 my_scale <- sqrt(apply(cdm, 2, sd, na.rm=TRUE)) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 240 scdm <- sweep(cdm, 2, my_scale, "/") | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 241 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 242 # pattern to match column names like k10_kruskal_k4.k3_sig | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 243 col_pattern <- sprintf('^%s_%s_(.*)[.](.*)_sig$', facC, tesC) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 244 # column name like k10_kruskal_sig | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 245 intersample_sig_col <- sprintf('%s_%s_sig', facC, tesC) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 246 # get the facC column from sampleMetadata, dropping to one dimension | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 247 smpl_metadata_facC <- smpl_metadata[,facC] | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 248 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 249 # allocate a slot in the environment for the contrast_list, each element of which will be a data.frame with this structure: | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 250 # - feature ID | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 251 # - value1 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 252 # - value2 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 253 # - Wiklund_2008 correlation | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 254 # - Wiklund_2008 covariance | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 255 # - Wiklund_2008 VIP | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 256 calc_env$contrast_list <- list() | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 257 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 258 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 259 did_plot <- FALSE | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 260 if (tesC != "none") { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 261 # for each column name, extract the parts of the name matched by 'col_pattern', if any | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 262 the_colnames <- colnames(vrbl_metadata) | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 263 if ( ! Reduce( f = "||", x = grepl(tesC, the_colnames) ) ) { | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 264 failure_action(sprintf("bad parameter! variableMetadata must contain results of W4M Univariate test '%s'.", tesC)) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 265 return ( FALSE ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 266 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 267 col_matches <- lapply( | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 268 X = the_colnames, | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 269 FUN = function(x) { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 270 regmatches( x, regexec(col_pattern, x) )[[1]] | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 271 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 272 ) | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 273 ## first contrast each selected level with all other levels combined into one "super-level" ## | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 274 # process columns matching the pattern | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 275 level_union <- c() | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 276 for (i in 1:length(col_matches)) { | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 277 col_match <- col_matches[[i]] | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 278 if (length(col_match) > 0) { | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 279 # it's an actual match; extract the pieces, e.g., k10_kruskal_k4.k3_sig | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 280 vrbl_metadata_col <- col_match[1] # ^^^^^^^^^^^^^^^^^^^^^ # Column name | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 281 fctr_lvl_1 <- col_match[2] # ^^ # Factor-level 1 | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 282 fctr_lvl_2 <- col_match[3] # ^^ # Factor-level 2 | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 283 # only process this column if both factors are members of lvlCSV | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 284 is_match <- isLevelSelected(fctr_lvl_1) && isLevelSelected(fctr_lvl_2) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 285 if (is_match) { | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 286 level_union <- c(level_union, col_match[2], col_match[3]) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 287 } | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 288 } | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 289 } | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 290 level_union <- unique(sort(level_union)) | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 291 overall_significant <- 1 == ( if (intersample_sig_col %in% colnames(vrbl_metadata)) vrbl_metadata[,intersample_sig_col] else TRUE ) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 292 if ( length(level_union) > 2 ) { | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 293 chosen_samples <- smpl_metadata_facC %in% level_union | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 294 chosen_facC <- as.character(smpl_metadata_facC[chosen_samples]) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 295 col_selector <- vrbl_metadata_names[ overall_significant ] | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 296 my_matrix <- scdm[ chosen_samples, col_selector, drop = FALSE ] | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 297 plot_action <- function(fctr_lvl_1, fctr_lvl_2) { | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 298 progress_action(sprintf("calculating/plotting contrast of %s vs. %s", fctr_lvl_1, fctr_lvl_2)) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 299 predictor <- sapply( X = chosen_facC, FUN = function(fac) if ( fac == fctr_lvl_1 ) fctr_lvl_1 else fctr_lvl_2 ) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 300 my_cor_cov <- do_detail_plot( | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 301 x_dataMatrix = my_matrix | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 302 , x_predictor = predictor | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 303 , x_is_match = is_match | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 304 , x_algorithm = algoC | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 305 , x_prefix = if (pairSigFeatOnly) "Significantly contrasting features" else "Significant features" | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 306 , x_show_labels = labelFeatures | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 307 , x_show_loado_labels = labelOrthoFeatures | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 308 , x_progress = progress_action | 
| 4 
d3bb34e764fe
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 7a0b65df47977b9c7a62de7dc1587e5fb3e5abc1
 eschen42 parents: 
3diff
changeset | 309 , x_crossval_i = min(7, length(chosen_samples)) | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 310 , x_env = calc_env | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 311 ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 312 if ( is.null(my_cor_cov) ) { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 313 progress_action("NOTHING TO PLOT.") | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 314 } else { | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 315 my_tsv <- my_cor_cov$tsv1 | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 316 my_tsv$mz <- mz_lookup(my_tsv$featureID) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 317 my_tsv$rt <- rt_lookup(my_tsv$featureID) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 318 my_tsv["level1Level2Sig"] <- vrbl_metadata[ match(my_tsv$featureID, vrbl_metadata_names), vrbl_metadata_col ] | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 319 tsv <<- my_tsv | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 320 corcov_tsv_action(tsv) | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 321 did_plot <<- TRUE | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 322 } | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 323 } | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 324 if ( length(level_union) != 2 ) { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 325 fctr_lvl_2 <- "other" | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 326 for ( fctr_lvl_1 in level_union[1:length(level_union)] ) { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 327 plot_action(fctr_lvl_1, fctr_lvl_2) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 328 } | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 329 } else { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 330 plot_action(fctr_lvl_1 = level_union[1], fctr_lvl_2 = level_union[2]) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 331 } | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 332 } | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 333 | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 334 if ( length(level_union) > 1 ) { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 335 ## next, contrast each selected level with each of the other levels individually ## | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 336 # process columns matching the pattern | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 337 for (i in 1:length(col_matches)) { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 338 # for each potential match of the pattern | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 339 col_match <- col_matches[[i]] | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 340 if (length(col_match) > 0) { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 341 # it's an actual match; extract the pieces, e.g., k10_kruskal_k4.k3_sig | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 342 vrbl_metadata_col <- col_match[1] # ^^^^^^^^^^^^^^^^^^^^^ # Column name | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 343 fctr_lvl_1 <- col_match[2] # ^^ # Factor-level 1 | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 344 fctr_lvl_2 <- col_match[3] # ^^ # Factor-level 2 | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 345 # only process this column if both factors are members of lvlCSV | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 346 is_match <- isLevelSelected(fctr_lvl_1) && isLevelSelected(fctr_lvl_2) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 347 progress_action(sprintf("calculating/plotting contrast of %s vs. %s", fctr_lvl_1, fctr_lvl_2)) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 348 # TODO delete next line displaying currently-processed column | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 349 # cat(sprintf("%s %s %s %s\n", vrbl_metadata_col, fctr_lvl_1, fctr_lvl_2, is_match)) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 350 # choose only samples with one of the two factors for this column | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 351 chosen_samples <- smpl_metadata_facC %in% c(fctr_lvl_1, fctr_lvl_2) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 352 predictor <- smpl_metadata_facC[chosen_samples] | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 353 # extract only the significantly-varying features and the chosen samples | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 354 fully_significant <- 1 == vrbl_metadata[,vrbl_metadata_col] * ( if (intersample_sig_col %in% colnames(vrbl_metadata)) vrbl_metadata[,intersample_sig_col] else TRUE ) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 355 col_selector <- vrbl_metadata_names[ if ( pairSigFeatOnly ) fully_significant else overall_significant ] | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 356 my_matrix <- scdm[ chosen_samples, col_selector, drop = FALSE ] | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 357 my_cor_cov <- do_detail_plot( | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 358 x_dataMatrix = my_matrix | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 359 , x_predictor = predictor | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 360 , x_is_match = is_match | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 361 , x_algorithm = algoC | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 362 , x_prefix = if (pairSigFeatOnly) "Significantly contrasting features" else "Significant features" | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 363 , x_show_labels = labelFeatures | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 364 , x_show_loado_labels = labelOrthoFeatures | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 365 , x_progress = progress_action | 
| 4 
d3bb34e764fe
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 7a0b65df47977b9c7a62de7dc1587e5fb3e5abc1
 eschen42 parents: 
3diff
changeset | 366 , x_crossval_i = min(7, length(chosen_samples)) | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 367 , x_env = calc_env | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 368 ) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 369 if ( is.null(my_cor_cov) ) { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 370 progress_action("NOTHING TO PLOT.") | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 371 } else { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 372 tsv <- my_cor_cov$tsv1 | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 373 tsv$mz <- mz_lookup(tsv$featureID) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 374 tsv$rt <- rt_lookup(tsv$featureID) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 375 tsv["level1Level2Sig"] <- vrbl_metadata[ match(tsv$featureID, vrbl_metadata_names), vrbl_metadata_col ] | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 376 corcov_tsv_action(tsv) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 377 did_plot <- TRUE | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 378 } | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 379 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 380 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 381 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 382 } else { # tesC == "none" | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 383 level_union <- unique(sort(smpl_metadata_facC)) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 384 if ( length(level_union) > 1 ) { | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 385 if ( length(level_union) > 2 ) { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 386 ## pass 1 - contrast each selected level with all other levels combined into one "super-level" ## | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 387 completed <- c() | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 388 lapply( | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 389 X = level_union | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 390 , FUN = function(x) { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 391 fctr_lvl_1 <- x[1] | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 392 fctr_lvl_2 <- { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 393 if ( fctr_lvl_1 %in% completed ) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 394 return("DUMMY") | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 395 # strF(completed) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 396 completed <<- c(completed, fctr_lvl_1) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 397 setdiff(level_union, fctr_lvl_1) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 398 } | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 399 chosen_samples <- smpl_metadata_facC %in% c(fctr_lvl_1, fctr_lvl_2) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 400 fctr_lvl_2 <- "other" | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 401 # print( sprintf("sum(chosen_samples) %d, factor_level_2 %s", sum(chosen_samples), fctr_lvl_2) ) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 402 progress_action(sprintf("calculating/plotting contrast of %s vs. %s", fctr_lvl_1, fctr_lvl_2)) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 403 if (length(unique(chosen_samples)) < 1) { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 404 progress_action("NOTHING TO PLOT...") | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 405 } else { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 406 chosen_facC <- as.character(smpl_metadata_facC[chosen_samples]) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 407 predictor <- sapply( X = chosen_facC, FUN = function(fac) if ( fac == fctr_lvl_1 ) fctr_lvl_1 else fctr_lvl_2 ) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 408 my_matrix <- scdm[ chosen_samples, , drop = FALSE ] | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 409 # only process this column if both factors are members of lvlCSV | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 410 is_match <- isLevelSelected(fctr_lvl_1) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 411 my_cor_cov <- do_detail_plot( | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 412 x_dataMatrix = my_matrix | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 413 , x_predictor = predictor | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 414 , x_is_match = is_match | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 415 , x_algorithm = algoC | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 416 , x_prefix = "Features" | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 417 , x_show_labels = labelFeatures | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 418 , x_show_loado_labels = labelOrthoFeatures | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 419 , x_progress = progress_action | 
| 4 
d3bb34e764fe
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 7a0b65df47977b9c7a62de7dc1587e5fb3e5abc1
 eschen42 parents: 
3diff
changeset | 420 , x_crossval_i = min(7, length(chosen_samples)) | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 421 , x_env = calc_env | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 422 ) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 423 if ( is.null(my_cor_cov) ) { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 424 progress_action("NOTHING TO PLOT") | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 425 } else { | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 426 tsv <- my_cor_cov$tsv1 | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 427 tsv$mz <- mz_lookup(tsv$featureID) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 428 tsv$rt <- rt_lookup(tsv$featureID) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 429 corcov_tsv_action(tsv) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 430 did_plot <<- TRUE | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 431 } | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 432 } | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 433 #print("baz") | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 434 "dummy" # need to return a value; otherwise combn fails with an error | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 435 } | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 436 ) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 437 } | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 438 ## pass 2 - contrast each selected level with each of the other levels individually ## | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 439 completed <- c() | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 440 utils::combn( | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 441 x = level_union | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 442 , m = 2 | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 443 , FUN = function(x) { | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 444 fctr_lvl_1 <- x[1] | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 445 fctr_lvl_2 <- x[2] | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 446 chosen_samples <- smpl_metadata_facC %in% c(fctr_lvl_1, fctr_lvl_2) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 447 # print( sprintf("sum(chosen_samples) %d, factor_level_2 %s", sum(chosen_samples), fctr_lvl_2) ) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 448 progress_action(sprintf("calculating/plotting contrast of %s vs. %s", fctr_lvl_1, fctr_lvl_2)) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 449 if (length(unique(chosen_samples)) < 1) { | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 450 progress_action("NOTHING TO PLOT...") | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 451 } else { | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 452 chosen_facC <- as.character(smpl_metadata_facC[chosen_samples]) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 453 predictor <- chosen_facC | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 454 my_matrix <- scdm[ chosen_samples, , drop = FALSE ] | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 455 # only process this column if both factors are members of lvlCSV | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 456 is_match <- isLevelSelected(fctr_lvl_1) && isLevelSelected(fctr_lvl_2) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 457 my_cor_cov <- do_detail_plot( | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 458 x_dataMatrix = my_matrix | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 459 , x_predictor = predictor | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 460 , x_is_match = is_match | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 461 , x_algorithm = algoC | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 462 , x_prefix = "Features" | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 463 , x_show_labels = labelFeatures | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 464 , x_show_loado_labels = labelOrthoFeatures | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 465 , x_progress = progress_action | 
| 4 
d3bb34e764fe
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 7a0b65df47977b9c7a62de7dc1587e5fb3e5abc1
 eschen42 parents: 
3diff
changeset | 466 , x_crossval_i = min(7, length(chosen_samples)) | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 467 , x_env = calc_env | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 468 ) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 469 if ( is.null(my_cor_cov) ) { | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 470 progress_action("NOTHING TO PLOT") | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 471 } else { | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 472 tsv <- my_cor_cov$tsv1 | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 473 tsv$mz <- mz_lookup(tsv$featureID) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 474 tsv$rt <- rt_lookup(tsv$featureID) | 
| 1 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 475 corcov_tsv_action(tsv) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 476 did_plot <<- TRUE | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 477 } | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 478 } | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 479 #print("baz") | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 480 "dummy" # need to return a value; otherwise combn fails with an error | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 481 } | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 482 ) | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 483 } else { | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 484 progress_action("NOTHING TO PLOT....") | 
| 
e25fd8a13665
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
 eschen42 parents: 
0diff
changeset | 485 } | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 486 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 487 if (!did_plot) { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 488 failure_action(sprintf("bad parameter! sampleMetadata must have at least two levels of factor '%s' matching '%s'", facC, originalLevCSV)) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 489 return ( FALSE ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 490 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 491 return ( TRUE ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 492 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 493 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 494 # Calculate data for correlation-versus-covariance plot | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 495 # Adapted from: | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 496 # Wiklund_2008 doi:10.1021/ac0713510 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 497 # Galindo_Prieto_2014 doi:10.1002/cem.2627 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 498 # https://github.com/HegemanLab/extra_tools/blob/master/generic_PCA.R | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 499 cor_vs_cov <- function(matrix_x, ropls_x) { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 500 x_class <- class(ropls_x) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 501 if ( !( as.character(x_class) == "opls" ) ) { # || !( attr(class(x_class),"package") == "ropls" ) ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 502 stop( "cor_vs_cov: Expected ropls_x to be of class ropls::opls but instead it was of class ", as.character(x_class) ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 503 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 504 result <- list() | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 505 # suppLs$algoC - Character: algorithm used - "svd" for singular value decomposition; "nipals" for NIPALS | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 506 if ( ropls_x@suppLs$algoC == "nipals") { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 507 # Equations (1) and (2) from *Supplement to* Wiklund 2008, doi:10.1021/ac0713510 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 508 mag <- function(one_dimensional) sqrt(sum(one_dimensional * one_dimensional)) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 509 mag_xi <- sapply(X = 1:ncol(matrix_x), FUN = function(x) mag(matrix_x[,x])) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 510 score_matrix <- ropls_x@scoreMN | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 511 score_matrix_transposed <- t(score_matrix) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 512 score_matrix_magnitude <- mag(score_matrix) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 513 result$covariance <- score_matrix_transposed %*% matrix_x / ( score_matrix_magnitude * score_matrix_magnitude ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 514 result$correlation <- score_matrix_transposed %*% matrix_x / ( score_matrix_magnitude * mag_xi ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 515 } else { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 516 # WARNING - untested code - I don't have test data to exercise this branch | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 517 # Equations (1) and (2) from Wiklund 2008, doi:10.1021/ac0713510 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 518 # scoreMN - Numerical matrix of x scores (T; dimensions: nrow(x) x predI) X = TP' + E; Y = TC' + F | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 519 score_matrix <- ropls_x@scoreMN | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 520 score_matrix_transposed <- t(score_matrix) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 521 cov_divisor <- nrow(matrix_x) - 1 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 522 result$covariance <- sapply( | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 523 X = 1:ncol(matrix_x) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 524 , FUN = function(x) score_matrix_transposed %*% matrix_x[,x] / cov_divisor | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 525 ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 526 score_sd <- sapply( | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 527 X = 1:ncol(score_matrix) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 528 , FUN = function(x) sd(score_matrix[,x]) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 529 ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 530 # xSdVn - Numerical vector: variable standard deviations of the 'x' matrix | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 531 xSdVn <- ropls_x@xSdVn | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 532 result$correlation <- sapply( | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 533 X = 1:ncol(matrix_x) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 534 , FUN = function(x) { | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 535 ( score_matrix_transposed / score_sd ) %*% ( matrix_x[,x] / (xSdVn[x] * cov_divisor) ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 536 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 537 ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 538 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 539 result$correlation <- result$correlation[1,,drop = TRUE] | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 540 result$covariance <- result$covariance[1,,drop = TRUE] | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 541 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 542 # Variant 4 of Variable Influence on Projection for OPLS from Galindo_Prieto_2014 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 543 # Length = number of features; labels = feature identifiers. (The same is true for $correlation and $covariance.) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 544 result$vip4p <- as.numeric(ropls_x@vipVn) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 545 result$vip4o <- as.numeric(ropls_x@orthoVipVn) | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 546 result$loadp <- as.numeric(ropls_x@loadingMN) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 547 result$loado <- as.numeric(ropls_x@orthoLoadingMN) | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 548 # get the level names | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 549 level_names <- sort(levels(as.factor(ropls_x@suppLs$y))) | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 550 fctr_lvl_1 <- level_names[1] | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 551 fctr_lvl_2 <- level_names[2] | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 552 feature_count <- length(ropls_x@vipVn) | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 553 result$level1 <- rep.int(x = fctr_lvl_1, times = feature_count) | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 554 result$level2 <- rep.int(x = fctr_lvl_2, times = feature_count) | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 555 # print(sprintf("sd(covariance) = %f; sd(correlation) = %f", sd(result$covariance), sd(result$correlation))) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 556 superresult <- list() | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 557 if (length(result$vip4o) == 0) result$vip4o <- NA | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 558 greaterLevel <- sapply( X = result$correlation, FUN = function(my_corr) if ( my_corr < 0 ) fctr_lvl_1 else fctr_lvl_2 ) | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 559 superresult$tsv1 <- data.frame( | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 560 featureID = names(ropls_x@vipVn) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 561 , factorLevel1 = result$level1 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 562 , factorLevel2 = result$level2 | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 563 , greaterLevel = greaterLevel | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 564 , correlation = result$correlation | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 565 , covariance = result$covariance | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 566 , vip4p = result$vip4p | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 567 , vip4o = result$vip4o | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 568 , loadp = result$loadp | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 569 , loado = result$loado | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 570 , row.names = NULL | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 571 ) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 572 rownames(superresult$tsv1) <- superresult$tsv1$featureID | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 573 superresult$covariance <- result$covariance | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 574 superresult$correlation <- result$correlation | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 575 superresult$vip4p <- result$vip4p | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 576 superresult$vip4o <- result$vip4o | 
| 2 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 577 superresult$loadp <- result$loadp | 
| 
a06344808ffc
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit ce5178ce51b80f242d24db555044e6afc530ac99
 eschen42 parents: 
1diff
changeset | 578 superresult$loado <- result$loado | 
| 0 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 579 superresult$details <- result | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 580 # #print(superresult$tsv1) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 581 result$superresult <- superresult | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 582 # Include thise in case future consumers of this routine want to use it in currently unanticipated ways | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 583 result$oplsda <- ropls_x | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 584 result$predictor <- ropls_x@suppLs$y # in case future consumers of this routine want to use it in currently unanticipated ways | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 585 return (superresult) | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 586 } | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 587 | 
| 
50a07adddfbd
planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
 eschen42 parents: diff
changeset | 588 | 
