annotate w4mcorcov_calc.R @ 12:ddaf84e15d06 draft

planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
author eschen42
date Thu, 08 Nov 2018 23:06:09 -0500
parents ddcc33ff3205
children 2ae2d26e3270
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
1 # center with 'colMeans()' - ref: http://gastonsanchez.com/visually-enforced/how-to/2014/01/15/Center-data-in-R/
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
2 center_colmeans <- function(x) {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
3 xcenter = colMeans(x)
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
4 x - rep(xcenter, rep.int(nrow(x), ncol(x)))
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
5 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
6
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
7 #### OPLS-DA
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
8 algoC <- "nipals"
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
9
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
10 do_detail_plot <- function(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
11 x_dataMatrix
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
12 , x_predictor
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
13 , x_is_match
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
14 , x_algorithm
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
15 , x_prefix
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
16 , x_show_labels
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
17 , x_progress = print
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
18 , x_env
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
19 , x_crossval_i
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
20 ) {
2
e03582f26617 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 7682e8e7ae2bfb926d94b414b9a1649389f33582
eschen42
parents: 1
diff changeset
21 off <- function(x) if (x_show_labels == "0") 0 else x
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
22 if ( x_is_match
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
23 && ncol(x_dataMatrix) > 0
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
24 && length(unique(x_predictor))> 1
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
25 && x_crossval_i < nrow(x_dataMatrix)
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
26 ) {
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
27 my_oplsda <- opls(
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
28 x = x_dataMatrix
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
29 , y = x_predictor
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
30 , algoC = x_algorithm
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
31 , predI = 1
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
32 , orthoI = if (ncol(x_dataMatrix) > 1) 1 else 0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
33 , printL = FALSE
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
34 , plotL = FALSE
3
5aaab36bc523 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 88004a3cf8868d68da1ec5bd2c1be53746350367
eschen42
parents: 2
diff changeset
35 , crossvalI = x_crossval_i
7
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
36 , scaleC = "pareto" # data centered and pareto scaled here only. This line fixes issue #2.
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
37 )
7
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
38 # strip out variables having negligible variance
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
39 x_dataMatrix <- x_dataMatrix[,names(my_oplsda@vipVn), drop = FALSE]
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
40 my_oplsda_suppLs_y_levels <- levels(as.factor(my_oplsda@suppLs$y))
12
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
41
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
42 fctr_lvl_1 <- my_oplsda_suppLs_y_levels[1]
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
43 fctr_lvl_2 <- my_oplsda_suppLs_y_levels[2]
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
44 do_s_plot <- function(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
45 x_env
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
46 , predictor_projection_x = TRUE
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
47 , cplot_x = FALSE
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
48 , cor_vs_cov_x = NULL
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
49 )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
50 {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
51 if (cplot_x) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
52 cplot_y_correlation <- (x_env$cplot_y == "correlation")
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
53 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
54 if (is.null(cor_vs_cov_x)) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
55 my_cor_vs_cov <- cor_vs_cov(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
56 matrix_x = x_dataMatrix
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
57 , ropls_x = my_oplsda
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
58 , predictor_projection_x = predictor_projection_x
7
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
59 , x_progress
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
60 )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
61 } else {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
62 my_cor_vs_cov <- cor_vs_cov_x
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
63 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
64 # str(my_cor_vs_cov)
7
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
65 if (is.null(my_cor_vs_cov) || sum(!is.na(my_cor_vs_cov$tsv1$covariance)) < 2) {
11
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
66 if (is.null(cor_vs_cov_x)) {
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
67 x_progress("No cor_vs_cov data produced")
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
68 }
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
69 plot(x=1, y=1, xaxt="n", yaxt="n", xlab="", ylab="", type="n")
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
70 text(x=1, y=1, labels="too few covariance data")
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
71 return(my_cor_vs_cov)
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
72 }
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
73 with(
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
74 my_cor_vs_cov
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
75 , {
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
76 min_x <- min(covariance, na.rm = TRUE)
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
77 max_x <- max(covariance, na.rm = TRUE)
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
78 lim_x <- max(sapply(X=c(min_x, max_x), FUN=abs))
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
79 covariance <- covariance / lim_x
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
80 lim_x <- 1.2
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
81 # "It is generally accepted that a variable should be selected if vj>1, [27–29],
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
82 # but a proper threshold between 0.83 and 1.21 can yield more relevant variables according to [28]."
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
83 # (Mehmood 2012 doi:10.1186/1748-7188-6-27)
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
84 plus_cor <- correlation
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
85 plus_cov <- covariance
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
86 cex <- 0.65
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
87 which_projection <- if (projection == 1) "t1" else "o1"
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
88 which_loading <- if (projection == 1) "parallel" else "orthogonal"
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
89 if (projection == 1) { # predictor-projection
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
90 vipcp <- pmax(0, pmin(1,(vip4p-0.83)/(1.21-0.83)))
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
91 if (!cplot_x) { # S-plot predictor-projection
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
92 my_xlab <- "relative covariance(feature,t1)"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
93 my_x <- plus_cov
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
94 my_ylab <- "correlation(feature,t1)"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
95 my_y <- plus_cor
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
96 } else { # C-plot predictor-projection
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
97 my_xlab <- "variable importance in predictor-projection"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
98 my_x <- vip4p
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
99 if (cplot_y_correlation) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
100 my_ylab <- "correlation(feature,t1)"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
101 my_y <- plus_cor
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
102 } else {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
103 my_ylab <- "relative covariance(feature,t1)"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
104 my_y <- plus_cov
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
105 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
106 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
107 if (cplot_x) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
108 lim_x <- max(my_x, na.rm = TRUE) * 1.1
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
109 my_xlim <- c( 0, lim_x + off(0.2) )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
110 } else {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
111 my_xlim <- c( -lim_x - off(0.2), lim_x + off(0.2) )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
112 }
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
113 my_ylim <- c( -1.0 - off(0.2), 1.0 + off(0.2) )
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
114 my_load_distal <- loadp
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
115 my_load_proximal <- loado
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
116 red <- as.numeric(correlation > 0) * vipcp
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
117 blue <- as.numeric(correlation < 0) * vipcp
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
118 alpha <- 0.1 + 0.4 * vipcp
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
119 red[is.na(red)] <- 0
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
120 blue[is.na(blue)] <- 0
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
121 alpha[is.na(alpha)] <- 0
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
122 my_col <- rgb(blue = blue, red = red, green = 0, alpha = alpha)
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
123 main_label <- sprintf("%s for level %s versus %s"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
124 , x_prefix, fctr_lvl_1, fctr_lvl_2)
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
125 } else { # orthogonal projection
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
126 vipco <- pmax(0, pmin(1,(vip4o-0.83)/(1.21-0.83)))
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
127 if (!cplot_x) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
128 my_xlab <- "relative covariance(feature,to1)"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
129 my_x <- -plus_cov
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
130 } else {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
131 my_xlab <- "variable importance in orthogonal projection"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
132 my_x <- vip4o
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
133 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
134 if (!cplot_x) { # S-plot orthogonal projection
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
135 my_xlim <- c( -lim_x - off(0.2), lim_x + off(0.2) )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
136 my_ylab <- "correlation(feature,to1)"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
137 my_y <- plus_cor
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
138 } else { # C-plot orthogonal projection
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
139 lim_x <- max(my_x, na.rm = TRUE) * 1.1
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
140 my_xlim <- c( 0, lim_x + off(0.2) )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
141 if (cplot_y_correlation) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
142 my_ylab <- "correlation(feature,to1)"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
143 my_y <- plus_cor
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
144 } else {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
145 my_ylab <- "relative covariance(feature,to1)"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
146 my_y <- plus_cov
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
147 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
148 }
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
149 my_ylim <- c( -1.0 - off(0.2), 1.0 + off(0.2) )
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
150 my_load_distal <- loado
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
151 my_load_proximal <- loadp
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
152 alpha <- 0.1 + 0.4 * vipco
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
153 alpha[is.na(alpha)] <- 0
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
154 my_col <- rgb(blue = 0, red = 0, green = 0, alpha = alpha)
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
155 main_label <- sprintf(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
156 "Features influencing orthogonal projection for %s versus %s"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
157 , fctr_lvl_1, fctr_lvl_2)
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
158 }
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
159 main_cex <- min(1.0, 46.0/nchar(main_label))
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
160 my_feature_label_slant <- -30 # slant feature labels 30 degrees downward
12
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
161 my_pch <- sapply(X = cor_p_value, function(x) if (x < 0.01) 16 else if (x < 0.05) 17 else 18)
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
162 plot(
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
163 y = my_y
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
164 , x = my_x
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
165 , type = "p"
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
166 , xlim = my_xlim
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
167 , ylim = my_ylim
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
168 , xlab = my_xlab
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
169 , ylab = my_ylab
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
170 , main = main_label
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
171 , cex.main = main_cex
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
172 , cex = cex
12
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
173 , pch = my_pch
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
174 , col = my_col
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
175 )
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
176 low_x <- -0.7 * lim_x
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
177 high_x <- 0.7 * lim_x
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
178 if (projection == 1 && !cplot_x) {
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
179 text(x = low_x, y = -0.05, labels = fctr_lvl_1, col = "blue")
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
180 text(x = high_x, y = 0.05, labels = fctr_lvl_2, col = "red")
2
e03582f26617 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 7682e8e7ae2bfb926d94b414b9a1649389f33582
eschen42
parents: 1
diff changeset
181 }
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
182 if ( x_show_labels != "0" ) {
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
183 names(my_load_distal) <- tsv1$featureID
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
184 names(my_load_proximal) <- tsv1$featureID
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
185 if ( x_show_labels == "ALL" ) {
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
186 n_labels <- length(my_load_distal)
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
187 } else {
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
188 n_labels <- as.numeric(x_show_labels)
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
189 }
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
190 n_labels <- min( n_labels, (1 + length(my_load_distal)) / 2 )
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
191 labels_to_show <- c(
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
192 names(head(sort(my_load_distal),n = n_labels))
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
193 , names(tail(sort(my_load_distal),n = n_labels))
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
194 )
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
195 labels <- unname(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
196 sapply(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
197 X = tsv1$featureID
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
198 , FUN = function(x) if( x %in% labels_to_show ) x else ""
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
199 )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
200 )
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
201 x_text_offset <- 0.024
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
202 y_text_off <- 0.017
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
203 if (!cplot_x) { # S-plot
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
204 y_text_offset <- if (projection == 1) -y_text_off else y_text_off
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
205 } else { # C-plot
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
206 y_text_offset <-
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
207 sapply(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
208 X = (my_y > 0)
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
209 , FUN = function(x) { if (x) y_text_off else -y_text_off }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
210 )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
211 }
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
212 label_features <- function(x_arg, y_arg, labels_arg, slant_arg) {
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
213 if (length(labels_arg) > 0) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
214 unique_slant <- unique(slant_arg)
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
215 if (length(unique_slant) == 1) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
216 text(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
217 y = y_arg
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
218 , x = x_arg + x_text_offset
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
219 , cex = 0.4
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
220 , labels = labels_arg
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
221 , col = rgb(blue = 0, red = 0, green = 0, alpha = 0.5) # grey semi-transparent labels
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
222 , srt = slant_arg
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
223 , adj = 0 # left-justified
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
224 )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
225 } else {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
226 for (slant in unique_slant) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
227 text(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
228 y = y_arg[slant_arg == slant]
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
229 , x = x_arg[slant_arg == slant] + x_text_offset
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
230 , cex = 0.4
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
231 , labels = labels_arg[slant_arg == slant]
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
232 , col = rgb(blue = 0, red = 0, green = 0, alpha = 0.5) # grey semi-transparent labels
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
233 , srt = slant
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
234 , adj = 0 # left-justified
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
235 )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
236 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
237 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
238 }
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
239 }
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
240 if (!cplot_x) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
241 my_slant <- (if (projection == 1) 1 else -1) * my_feature_label_slant
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
242 } else {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
243 my_slant <- sapply(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
244 X = (my_y > 0)
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
245 , FUN = function(x) if (x) 2 else -2
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
246 ) * my_feature_label_slant
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
247 }
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
248 if (length(my_x) > 1) {
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
249 label_features(
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
250 x_arg = my_x [my_x > 0]
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
251 , y_arg = my_y [my_x > 0] - y_text_offset
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
252 , labels_arg = labels[my_x > 0]
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
253 , slant_arg = (if (!cplot_x) -my_slant else (my_slant))
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
254 )
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
255 if (!cplot_x) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
256 label_features(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
257 x_arg = my_x [my_x < 0]
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
258 , y_arg = my_y [my_x < 0] + y_text_offset
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
259 , labels_arg = labels[my_x < 0]
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
260 , slant_arg = my_slant
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
261 )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
262 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
263 } else {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
264 if (!cplot_x) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
265 my_slant <- (if (my_x > 1) -1 else 1) * my_slant
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
266 my_y_arg = my_y + (if (my_x > 1) -1 else 1) * y_text_offset
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
267 } else {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
268 my_slant <- (if (my_y > 1) -1 else 1) * my_slant
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
269 my_y_arg = my_y + (if (my_y > 1) -1 else 1) * y_text_offset
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
270 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
271 label_features(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
272 x_arg = my_x
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
273 , y_arg = my_y_arg
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
274 , labels_arg = labels
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
275 , slant_arg = my_slant
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
276 )
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
277 }
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
278 }
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
279 }
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
280 )
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
281 return (my_cor_vs_cov)
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
282 }
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
283 my_cor_vs_cov <- do_s_plot(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
284 x_env = x_env
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
285 , predictor_projection_x = TRUE
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
286 , cplot_x = FALSE
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
287 )
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
288 typeVc <- c("correlation", # 1
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
289 "outlier", # 2
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
290 "overview", # 3
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
291 "permutation", # 4
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
292 "predict-train", # 5
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
293 "predict-test", # 6
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
294 "summary", # 7 = c(2,3,4,9)
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
295 "x-loading", # 8
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
296 "x-score", # 9
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
297 "x-variance", # 10
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
298 "xy-score", # 11
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
299 "xy-weight" # 12
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
300 ) # [c(3,8,9)] # [c(4,3,8,9)]
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
301 if ( length(my_oplsda@orthoVipVn) > 0 ) {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
302 my_typevc <- typeVc[c(9,3,8)]
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
303 } else {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
304 my_typevc <- c("(dummy)","overview","(dummy)")
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
305 }
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
306 my_ortho_cor_vs_cov_exists <- FALSE
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
307 for (my_type in my_typevc) {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
308 if (my_type %in% typeVc) {
4
8bba31f628da planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 8f2dc8b66666340275cd8967e09c504720528462
eschen42
parents: 3
diff changeset
309 tryCatch({
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
310 if ( my_type != "x-loading" ) {
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
311 plot(
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
312 x = my_oplsda
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
313 , typeVc = my_type
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
314 , parCexN = 0.4
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
315 , parDevNewL = FALSE
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
316 , parLayL = TRUE
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
317 , parEllipsesL = TRUE
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
318 )
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
319 if (my_type == "overview") {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
320 sub_label <- sprintf("%s versus %s", fctr_lvl_1, fctr_lvl_2)
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
321 title(sub = sub_label)
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
322 }
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
323 } else {
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
324 my_ortho_cor_vs_cov <- do_s_plot(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
325 x_env = x_env
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
326 , predictor_projection_x = FALSE
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
327 , cplot_x = FALSE
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
328 )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
329 my_ortho_cor_vs_cov_exists <- TRUE
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
330 }
4
8bba31f628da planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 8f2dc8b66666340275cd8967e09c504720528462
eschen42
parents: 3
diff changeset
331 }, error = function(e) {
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
332 x_progress(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
333 sprintf(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
334 "factor level %s or %s may have only one sample - %s"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
335 , fctr_lvl_1
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
336 , fctr_lvl_2
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
337 , e$message
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
338 )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
339 )
4
8bba31f628da planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 8f2dc8b66666340275cd8967e09c504720528462
eschen42
parents: 3
diff changeset
340 })
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
341 } else {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
342 plot(x=1, y=1, xaxt="n", yaxt="n", xlab="", ylab="", type="n")
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
343 text(x=1, y=1, labels="no orthogonal projection is possible")
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
344 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
345 }
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
346 cplot_p <- x_env$cplot_p
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
347 cplot_o <- x_env$cplot_o
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
348 if (cplot_p || cplot_o) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
349 if (cplot_p) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
350 do_s_plot(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
351 x_env = x_env
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
352 , predictor_projection_x = TRUE
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
353 , cplot_x = TRUE
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
354 , cor_vs_cov_x = my_cor_vs_cov
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
355 )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
356 did_plots <- 1
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
357 } else {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
358 did_plots <- 0
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
359 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
360 if (cplot_o) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
361 if (my_ortho_cor_vs_cov_exists) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
362 do_s_plot(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
363 x_env = x_env
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
364 , predictor_projection_x = FALSE
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
365 , cplot_x = TRUE
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
366 , cor_vs_cov_x = my_ortho_cor_vs_cov
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
367 )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
368 } else {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
369 plot(x=1, y=1, xaxt="n", yaxt="n", xlab="", ylab="", type="n")
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
370 text(x=1, y=1, labels="no orthogonal projection is possible")
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
371 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
372 did_plots <- 1 + did_plots
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
373 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
374 if (did_plots == 1) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
375 plot(x=1, y=1, xaxt="n", yaxt="n", xlab="", ylab="", type="n", fg = "white")
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
376 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
377 }
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
378 return (my_cor_vs_cov)
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
379 } else {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
380 return (NULL)
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
381 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
382 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
383
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
384 # S-PLOT and OPLS reference: Wiklund_2008 doi:10.1021/ac0713510
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
385 corcov_calc <- function(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
386 calc_env
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
387 , failure_action = stop
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
388 , progress_action = function(x) { }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
389 , corcov_tsv_action = function(t) { }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
390 , salience_tsv_action = function(t) { }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
391 , extra_plots = c()
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
392 ) {
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
393 if ( ! is.environment(calc_env) ) {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
394 failure_action("corcov_calc: fatal error - 'calc_env' is not an environment")
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
395 return ( FALSE )
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
396 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
397 if ( ! is.function(corcov_tsv_action) ) {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
398 failure_action("corcov_calc: fatal error - 'corcov_tsv_action' is not a function")
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
399 return ( FALSE )
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
400 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
401 if ( ! is.function(salience_tsv_action) ) {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
402 failure_action("salience_calc: fatal error - 'salience_tsv_action' is not a function")
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
403 return ( FALSE )
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
404 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
405
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
406 # extract parameters from the environment
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
407 vrbl_metadata <- calc_env$vrbl_metadata
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
408 vrbl_metadata_names <- vrbl_metadata[,1]
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
409 smpl_metadata <- calc_env$smpl_metadata
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
410 data_matrix <- calc_env$data_matrix
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
411 pairSigFeatOnly <- calc_env$pairSigFeatOnly
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
412 facC <- calc_env$facC
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
413 tesC <- calc_env$tesC
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
414 # extract the levels from the environment
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
415 originalLevCSV <- levCSV <- calc_env$levCSV
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
416 # matchingC is one of { "none", "wildcard", "regex" }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
417 matchingC <- calc_env$matchingC
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
418 labelFeatures <- calc_env$labelFeatures
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
419
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
420 # arg/env checking
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
421 if (!(facC %in% names(smpl_metadata))) {
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
422 failure_action(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
423 sprintf("bad parameter! Factor name '%s' not found in sampleMetadata"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
424 , facC))
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
425 return ( FALSE )
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
426 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
427
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
428 mz <- vrbl_metadata$mz
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
429 names(mz) <- vrbl_metadata$variableMetadata
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
430 mz_lookup <- function(feature) unname(mz[feature])
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
431
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
432 rt <- vrbl_metadata$rt
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
433 names(rt) <- vrbl_metadata$variableMetadata
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
434 rt_lookup <- function(feature) unname(rt[feature])
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
435
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
436 # calculate salience_df as data.frame(feature, max_level, max_median, max_rcv, mean_median, salience, salient_rcv)
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
437 salience_df <- calc_env$salience_df <- w4msalience(
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
438 data_matrix = data_matrix
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
439 , sample_class = smpl_metadata[,facC]
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
440 , failure_action = failure_action
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
441 )
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
442 salience_tsv_action({
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
443 my_df <- data.frame(
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
444 featureID = salience_df$feature
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
445 , salientLevel = salience_df$max_level
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
446 , salientRCV = salience_df$salient_rcv
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
447 , salience = salience_df$salience
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
448 , mz = mz_lookup(salience_df$feature)
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
449 , rt = rt_lookup(salience_df$feature)
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
450 )
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
451 my_df[order(-my_df$salience),]
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
452 })
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
453
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
454 # transform wildcards to regexen
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
455 if (matchingC == "wildcard") {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
456 # strsplit(x = "hello,wild,world", split = ",")
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
457 levCSV <- gsub("[.]", "[.]", levCSV)
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
458 levCSV <- strsplit(x = levCSV, split = ",")
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
459 levCSV <- sapply(levCSV, utils::glob2rx, trim.tail = FALSE)
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
460 levCSV <- paste(levCSV, collapse = ",")
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
461 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
462 # function to determine whether level is a member of levCSV
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
463 isLevelSelected <- function(lvl) {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
464 matchFun <- if (matchingC != "none") grepl else `==`
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
465 return(
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
466 Reduce(
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
467 f = "||"
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
468 , x = sapply(
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
469 X = strsplit(
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
470 x = levCSV
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
471 , split = ","
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
472 , fixed = TRUE
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
473 )[[1]]
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
474 , FUN = matchFun
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
475 , lvl
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
476 )
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
477 )
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
478 )
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
479 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
480
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
481 # transpose matrix because ropls matrix is the transpose of XCMS matrix
7
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
482 tdm <- t(data_matrix)
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
483 # Wiklund_2008 centers and pareto-scales data before OPLS-DA S-plot
7
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
484 # However, data should be neither centered nor pareto scaled here because ropls::opls does that; this fixes issue #2.
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
485
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
486 # pattern to match column names like k10_kruskal_k4.k3_sig
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
487 col_pattern <- sprintf('^%s_%s_(.*)[.](.*)_sig$', facC, tesC)
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
488 # column name like k10_kruskal_sig
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
489 intersample_sig_col <- sprintf('%s_%s_sig', facC, tesC)
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
490 # get the facC column from sampleMetadata, dropping to one dimension
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
491 smpl_metadata_facC <- smpl_metadata[,facC]
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
492
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
493 # allocate a slot in the environment for the contrast_list, each element of which will be a data.frame with this structure:
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
494 # - feature ID
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
495 # - value1
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
496 # - value2
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
497 # - Wiklund_2008 correlation
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
498 # - Wiklund_2008 covariance
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
499 # - Wiklund_2008 VIP
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
500 calc_env$contrast_list <- list()
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
501
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
502
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
503 did_plot <- FALSE
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
504 if (tesC != "none") {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
505 # for each column name, extract the parts of the name matched by 'col_pattern', if any
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
506 the_colnames <- colnames(vrbl_metadata)
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
507 if ( ! Reduce( f = "||", x = grepl(tesC, the_colnames) ) ) {
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
508 failure_action(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
509 sprintf(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
510 "bad parameter! variableMetadata must contain results of W4M Univariate test '%s'."
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
511 , tesC))
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
512 return ( FALSE )
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
513 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
514 col_matches <- lapply(
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
515 X = the_colnames,
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
516 FUN = function(x) {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
517 regmatches( x, regexec(col_pattern, x) )[[1]]
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
518 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
519 )
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
520 ## first contrast each selected level with all other levels combined into one "super-level" ##
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
521 # process columns matching the pattern
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
522 level_union <- c()
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
523 for (i in 1:length(col_matches)) {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
524 col_match <- col_matches[[i]]
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
525 if (length(col_match) > 0) {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
526 # it's an actual match; extract the pieces, e.g., k10_kruskal_k4.k3_sig
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
527 vrbl_metadata_col <- col_match[1] # ^^^^^^^^^^^^^^^^^^^^^ # Column name
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
528 fctr_lvl_1 <- col_match[2] # ^^ # Factor-level 1
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
529 fctr_lvl_2 <- col_match[3] # ^^ # Factor-level 2
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
530 # only process this column if both factors are members of lvlCSV
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
531 is_match <- isLevelSelected(fctr_lvl_1) && isLevelSelected(fctr_lvl_2)
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
532 if (is_match) {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
533 level_union <- c(level_union, col_match[2], col_match[3])
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
534 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
535 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
536 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
537 level_union <- unique(sort(level_union))
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
538 overall_significant <- 1 == (
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
539 if (intersample_sig_col %in% colnames(vrbl_metadata)) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
540 vrbl_metadata[,intersample_sig_col]
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
541 } else {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
542 1
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
543 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
544 )
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
545 if ( length(level_union) > 2 ) {
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
546 chosen_samples <- smpl_metadata_facC %in% level_union
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
547 chosen_facC <- as.character(smpl_metadata_facC[chosen_samples])
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
548 col_selector <- vrbl_metadata_names[ overall_significant ]
7
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
549 my_matrix <- tdm[ chosen_samples, col_selector, drop = FALSE ]
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
550 plot_action <- function(fctr_lvl_1, fctr_lvl_2) {
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
551 progress_action(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
552 sprintf("calculating/plotting contrast of %s vs. %s"
11
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
553 , fctr_lvl_1, fctr_lvl_2)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
554 )
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
555 predictor <- sapply(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
556 X = chosen_facC
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
557 , FUN = function(fac) if ( fac == fctr_lvl_1 ) fctr_lvl_1 else fctr_lvl_2
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
558 )
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
559 my_cor_cov <- do_detail_plot(
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
560 x_dataMatrix = my_matrix
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
561 , x_predictor = predictor
11
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
562 , x_is_match = TRUE
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
563 , x_algorithm = algoC
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
564 , x_prefix = if (pairSigFeatOnly) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
565 "Significantly contrasting features"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
566 } else {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
567 "Significant features"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
568 }
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
569 , x_show_labels = labelFeatures
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
570 , x_progress = progress_action
4
8bba31f628da planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 8f2dc8b66666340275cd8967e09c504720528462
eschen42
parents: 3
diff changeset
571 , x_crossval_i = min(7, length(chosen_samples))
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
572 , x_env = calc_env
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
573 )
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
574 if ( is.null(my_cor_cov) ) {
11
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
575 progress_action("NOTHING TO PLOT")
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
576 } else {
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
577 my_tsv <- my_cor_cov$tsv1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
578 my_tsv$mz <- mz_lookup(my_tsv$featureID)
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
579 my_tsv$rt <- rt_lookup(my_tsv$featureID)
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
580 my_tsv["level1Level2Sig"] <- vrbl_metadata[
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
581 match(my_tsv$featureID, vrbl_metadata_names)
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
582 , vrbl_metadata_col
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
583 ]
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
584 tsv <<- my_tsv
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
585 corcov_tsv_action(tsv)
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
586 did_plot <<- TRUE
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
587 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
588 }
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
589 if ( length(level_union) != 2 ) {
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
590 fctr_lvl_2 <- "other"
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
591 for ( fctr_lvl_1 in level_union[1:length(level_union)] ) {
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
592 plot_action(fctr_lvl_1, fctr_lvl_2)
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
593 }
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
594 } else {
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
595 plot_action(fctr_lvl_1 = level_union[1], fctr_lvl_2 = level_union[2])
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
596 }
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
597 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
598
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
599 if ( length(level_union) > 1 ) {
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
600 ## next, contrast each selected level with each of the other levels individually ##
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
601 # process columns matching the pattern
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
602 for (i in 1:length(col_matches)) {
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
603 # for each potential match of the pattern
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
604 col_match <- col_matches[[i]]
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
605 if (length(col_match) > 0) {
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
606 # it's an actual match; extract the pieces, e.g., k10_kruskal_k4.k3_sig
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
607 vrbl_metadata_col <- col_match[1] # ^^^^^^^^^^^^^^^^^^^^^ # Column name
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
608 fctr_lvl_1 <- col_match[2] # ^^ # Factor-level 1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
609 fctr_lvl_2 <- col_match[3] # ^^ # Factor-level 2
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
610 # only process this column if both factors are members of lvlCSV
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
611 is_match <- isLevelSelected(fctr_lvl_1) && isLevelSelected(fctr_lvl_2)
11
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
612 if (is_match) {
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
613 progress_action(
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
614 sprintf("calculating/plotting contrast of %s vs. %s."
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
615 , fctr_lvl_1, fctr_lvl_2
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
616 )
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
617 )
11
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
618 # choose only samples with one of the two factors for this column
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
619 chosen_samples <- smpl_metadata_facC %in% c(fctr_lvl_1, fctr_lvl_2)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
620 predictor <- smpl_metadata_facC[chosen_samples]
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
621 # extract only the significantly-varying features and the chosen samples
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
622 fully_significant <- 1 == vrbl_metadata[,vrbl_metadata_col] *
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
623 ( if (intersample_sig_col %in% colnames(vrbl_metadata)) {
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
624 vrbl_metadata[,intersample_sig_col]
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
625 } else {
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
626 1
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
627 }
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
628 )
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
629 col_selector <- vrbl_metadata_names[
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
630 if ( pairSigFeatOnly ) fully_significant else overall_significant
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
631 ]
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
632 my_matrix <- tdm[ chosen_samples, col_selector, drop = FALSE ]
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
633 my_cor_cov <- do_detail_plot(
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
634 x_dataMatrix = my_matrix
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
635 , x_predictor = predictor
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
636 , x_is_match = is_match
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
637 , x_algorithm = algoC
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
638 , x_prefix = if (pairSigFeatOnly) {
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
639 "Significantly contrasting features"
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
640 } else {
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
641 "Significant features"
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
642 }
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
643 , x_show_labels = labelFeatures
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
644 , x_progress = progress_action
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
645 , x_crossval_i = min(7, length(chosen_samples))
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
646 , x_env = calc_env
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
647 )
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
648 if ( is.null(my_cor_cov) ) {
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
649 progress_action("NOTHING TO PLOT.")
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
650 } else {
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
651 tsv <- my_cor_cov$tsv1
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
652 tsv$mz <- mz_lookup(tsv$featureID)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
653 tsv$rt <- rt_lookup(tsv$featureID)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
654 tsv["level1Level2Sig"] <- vrbl_metadata[
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
655 match(tsv$featureID, vrbl_metadata_names)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
656 , vrbl_metadata_col
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
657 ]
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
658 corcov_tsv_action(tsv)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
659 did_plot <- TRUE
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
660 }
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
661 } else {
11
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
662 progress_action(
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
663 sprintf("skipping contrast of %s vs. %s."
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
664 , fctr_lvl_1, fctr_lvl_2
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
665 )
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
666 )
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
667 }
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
668 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
669 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
670 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
671 } else { # tesC == "none"
11
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
672 # find all the levels for factor facC in sampleMetadata
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
673 level_union <- unique(sort(smpl_metadata_facC))
11
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
674 # identify the selected levels for factor facC from sampleMetadata
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
675 level_include <- sapply(X = level_union, FUN = isLevelSelected)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
676 # discard the non-selected levels for factor facC
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
677 level_union <- level_union[level_include]
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
678 if ( length(level_union) > 1 ) {
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
679 if ( length(level_union) > 2 ) {
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
680 ## pass 1 - contrast each selected level with all other levels combined into one "super-level" ##
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
681 completed <- c()
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
682 lapply(
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
683 X = level_union
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
684 , FUN = function(x) {
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
685 fctr_lvl_1 <- x[1]
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
686 fctr_lvl_2 <- {
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
687 if ( fctr_lvl_1 %in% completed )
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
688 return("DUMMY")
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
689 # strF(completed)
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
690 completed <<- c(completed, fctr_lvl_1)
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
691 setdiff(level_union, fctr_lvl_1)
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
692 }
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
693 chosen_samples <- smpl_metadata_facC %in% c(fctr_lvl_1, fctr_lvl_2)
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
694 fctr_lvl_2 <- "other"
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
695 if (length(unique(chosen_samples)) < 1) {
11
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
696 progress_action(
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
697 sprintf("Skipping contrast of %s vs. %s; there are no chosen samples."
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
698 , fctr_lvl_1, fctr_lvl_2)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
699 )
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
700 } else {
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
701 chosen_facC <- as.character(smpl_metadata_facC[chosen_samples])
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
702 predictor <- sapply(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
703 X = chosen_facC
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
704 , FUN = function(fac) {
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
705 if ( fac == fctr_lvl_1 ) fctr_lvl_1 else fctr_lvl_2
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
706 }
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
707 )
7
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
708 my_matrix <- tdm[ chosen_samples, , drop = FALSE ]
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
709 # only process this column if both factors are members of lvlCSV
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
710 is_match <- isLevelSelected(fctr_lvl_1)
11
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
711 if (is_match) {
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
712 progress_action(
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
713 sprintf("Calculating/plotting contrast of %s vs. %s"
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
714 , fctr_lvl_1, fctr_lvl_2)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
715 )
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
716 my_cor_cov <- do_detail_plot(
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
717 x_dataMatrix = my_matrix
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
718 , x_predictor = predictor
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
719 , x_is_match = is_match
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
720 , x_algorithm = algoC
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
721 , x_prefix = "Features"
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
722 , x_show_labels = labelFeatures
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
723 , x_progress = progress_action
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
724 , x_crossval_i = min(7, length(chosen_samples))
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
725 , x_env = calc_env
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
726 )
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
727 if ( is.null(my_cor_cov) ) {
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
728 progress_action("NOTHING TO PLOT...")
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
729 } else {
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
730 tsv <- my_cor_cov$tsv1
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
731 tsv$mz <- mz_lookup(tsv$featureID)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
732 tsv$rt <- rt_lookup(tsv$featureID)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
733 corcov_tsv_action(tsv)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
734 did_plot <<- TRUE
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
735 }
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
736 } else {
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
737 }
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
738 }
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
739 "dummy" # need to return a value; otherwise combn fails with an error
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
740 }
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
741 )
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
742 }
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
743 ## pass 2 - contrast each selected level with each of the other levels individually ##
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
744 completed <- c()
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
745 utils::combn(
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
746 x = level_union
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
747 , m = 2
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
748 , FUN = function(x) {
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
749 fctr_lvl_1 <- x[1]
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
750 fctr_lvl_2 <- x[2]
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
751 chosen_samples <- smpl_metadata_facC %in% c(fctr_lvl_1, fctr_lvl_2)
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
752 if (length(unique(chosen_samples)) < 1) {
11
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
753 progress_action(
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
754 sprintf("Skipping contrast of %s vs. %s. - There are no chosen samples."
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
755 , fctr_lvl_1, fctr_lvl_2
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
756 )
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
757 )
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
758 } else {
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
759 chosen_facC <- as.character(smpl_metadata_facC[chosen_samples])
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
760 predictor <- chosen_facC
7
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
761 my_matrix <- tdm[ chosen_samples, , drop = FALSE ]
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
762 # only process this column if both factors are members of lvlCSV
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
763 is_match <- isLevelSelected(fctr_lvl_1) && isLevelSelected(fctr_lvl_2)
11
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
764 if (is_match) {
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
765 progress_action(
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
766 sprintf("Calculating/plotting contrast of %s vs. %s."
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
767 , fctr_lvl_1, fctr_lvl_2)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
768 )
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
769 my_cor_cov <- do_detail_plot(
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
770 x_dataMatrix = my_matrix
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
771 , x_predictor = predictor
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
772 , x_is_match = is_match
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
773 , x_algorithm = algoC
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
774 , x_prefix = "Features"
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
775 , x_show_labels = labelFeatures
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
776 , x_progress = progress_action
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
777 , x_crossval_i = min(7, length(chosen_samples))
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
778 , x_env = calc_env
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
779 )
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
780 if ( is.null(my_cor_cov) ) {
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
781 progress_action("NOTHING TO PLOT.....")
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
782 } else {
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
783 tsv <- my_cor_cov$tsv1
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
784 tsv$mz <- mz_lookup(tsv$featureID)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
785 tsv$rt <- rt_lookup(tsv$featureID)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
786 corcov_tsv_action(tsv)
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
787 did_plot <<- TRUE
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
788 }
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
789 } else {
11
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
790 progress_action(
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
791 sprintf("Skipping contrast of %s vs. %s."
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
792 , fctr_lvl_1, fctr_lvl_2
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
793 )
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
794 )
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
795 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
796 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
797 "dummy" # need to return a value; otherwise combn fails with an error
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
798 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
799 )
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
800 } else {
11
ddcc33ff3205 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 4428e3252d54c8a8e0e5d85e8eaaeb13e9b21de7
eschen42
parents: 7
diff changeset
801 progress_action("NOTHING TO PLOT......")
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
802 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
803 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
804 if (!did_plot) {
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
805 failure_action(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
806 sprintf(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
807 "bad parameter! sampleMetadata must have at least two levels of factor '%s' matching '%s'"
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
808 , facC, originalLevCSV))
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
809 return ( FALSE )
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
810 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
811 return ( TRUE )
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
812 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
813
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
814 # Calculate data for correlation-versus-covariance plot
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
815 # Adapted from:
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
816 # Wiklund_2008 doi:10.1021/ac0713510
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
817 # Galindo_Prieto_2014 doi:10.1002/cem.2627
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
818 # https://github.com/HegemanLab/extra_tools/blob/master/generic_PCA.R
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
819 cor_vs_cov <- function(
7
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
820 matrix_x
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
821 , ropls_x
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
822 , predictor_projection_x = TRUE
7
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
823 , x_progress = print
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
824 ) {
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
825 tryCatch({
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
826 return(
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
827 cor_vs_cov_try( matrix_x, ropls_x, predictor_projection_x, x_progress)
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
828 )
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
829 }, error = function(e) {
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
830 x_progress(
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
831 sprintf(
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
832 "cor_vs_cov fatal error - %s"
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
833 , as.character(e) # e$message
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
834 )
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
835 )
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
836 return ( NULL )
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
837 })
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
838 }
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
839
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
840 cor_vs_cov_try <- function(
12
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
841 matrix_x # rows are samples; columns, features
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
842 , ropls_x # an instance of ropls::opls
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
843 , predictor_projection_x = TRUE # TRUE for predictor projection; FALSE for orthogonal projection
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
844 , x_progress = print # function to produce progress and error messages
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
845 ) {
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
846 x_class <- class(ropls_x)
12
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
847 if ( !( as.character(x_class) == "opls" ) ) {
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
848 stop(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
849 paste(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
850 "cor_vs_cov: Expected ropls_x to be of class ropls::opls but instead it was of class "
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
851 , as.character(x_class)
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
852 )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
853 )
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
854 }
12
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
855 if ( !ropls_x@suppLs$algoC == "nipals" ) {
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
856 # suppLs$algoC - Character: algorithm used - "svd" for singular value decomposition; "nipals" for NIPALS
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
857 stop(
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
858 paste(
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
859 "cor_vs_cov: Expected ropls::opls instance to have been computed by the NIPALS algorithm rather than "
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
860 , ropls_x@suppLs$algoC
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
861 )
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
862 )
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
863 }
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
864 result <- list()
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
865 result$projection <- projection <- if (predictor_projection_x) 1 else 2
12
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
866
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
867 # I used equations (1) and (2) from Wiklund 2008, doi:10.1021/ac0713510
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
868 # (and not from the supplement despite the statement that, for the NIPALS algorithm,
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
869 # the equations from the supplement should be used) because of the definition of the
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
870 # Pearson/Galton coefficient of correlation is defined as
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
871 # $$
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
872 # \rho_{X,Y}= \frac{\operatorname{cov}(X,Y)}{\sigma_X \sigma_Y}
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
873 # $$
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
874 # as described (among other places) on Wikipedia at
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
875 # https://en.wikipedia.org/wiki/Pearson_correlation_coefficient#For_a_population
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
876 # The equations in the supplement said to use, for the predictive component t1,
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
877 # \rho_{t1,X_i}= \frac{\operatorname{cov}(t1,X_i)}{(\operatorname{mag}(t1))(\operatorname{mag}(X_i))}
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
878 # but the results that I got were dramatically different from published results for S-PLOTs;
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
879 # perhaps my data are not centered exactly the same way that theirs were.
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
880 # The correlations calculated here are in agreement with those calculated with the code from
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
881 # page 22 of https://cran.r-project.org/web/packages/muma/muma.pdf
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
882 # I did transform covariance to "relative covariance" (relative to the maximum value)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
883 # to keep the figures consistent with one another.
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
884
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
885 # count the features (one column for each sample)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
886 Nfeatures <- ncol(matrix_x)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
887 # count the samples (one row for each sample)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
888 Nobservations <- nrow(matrix_x)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
889 # a one-dimensional magnitude function (i.e., take the vector norm)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
890 vector_norm <- function(one_dimensional) sqrt(sum(one_dimensional * one_dimensional))
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
891 # calculate the standard deviation for each feature
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
892 sd_xi <- sapply(X = 1:Nfeatures, FUN = function(x) sd(matrix_x[,x]))
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
893 # choose whether to plot the predictive score vector or orthogonal score vector
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
894 if (predictor_projection_x)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
895 score_matrix <- ropls_x@scoreMN
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
896 else
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
897 score_matrix <- ropls_x@orthoScoreMN
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
898 # transpose the score (or orthoscore) vector for use as a premultiplier in covariance calculation
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
899 score_matrix_transposed <- t(score_matrix)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
900 # compute the norm of the vector (i.e., the magnitude)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
901 score_matrix_magnitude <- vector_norm(score_matrix)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
902 # compute the standard deviation of the vector
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
903 score_matrix_sd <- sd(score_matrix)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
904 # compute the relative covariance of each feature with the score vector
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
905 result$covariance <-
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
906 score_matrix_transposed %*% matrix_x / ( score_matrix_magnitude * score_matrix_magnitude )
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
907 # compute the correlation of each feature with the score vector
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
908 result$correlation <-
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
909 score_matrix_transposed %*% matrix_x / ( (Nobservations - 1) * ( score_matrix_sd * sd_xi ) )
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
910
12
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
911 # convert covariance and correlation from one-dimensional matrices to arrays of values,
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
912 # which are accessed by feature name below
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
913 p1 <- result$covariance <- result$covariance [ 1, , drop = TRUE ]
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
914 # x_progress("strF(p1)")
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
915 # x_progress(strF(p1))
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
916
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
917 pcorr1 <- result$correlation <- result$correlation[ 1, , drop = TRUE ]
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
918 # x_progress("pearson strF(pcorr1)")
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
919 # x_progress(strF(pcorr1))
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
920 # x_progress(typeof(pcorr1))
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
921 # x_progress(str(pcorr1))
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
922
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
923 # # this is how to use Spearman correlation instead of pearson
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
924 # result$spearcor <- sapply(
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
925 # X = 1:Nfeatures
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
926 # , FUN = function(i) {
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
927 # stats::cor(
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
928 # x = as.vector(score_matrix)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
929 # , y = as.vector(matrix_x[,i])
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
930 # # , method = "spearman"
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
931 # , method = "pearson"
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
932 # )
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
933 # }
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
934 # )
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
935 # names(result$spearcor) <- names(p1)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
936 # pcorr1 <- result$spearcor
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
937 # x_progress("spearman strF(pcorr1)")
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
938 # x_progress(strF(pcorr1))
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
939 # x_progress(typeof(pcorr1))
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
940 # x_progress(str(pcorr1))
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
941 # pcorr1 <- result$correlation <- result$spearcor
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
942
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
943 # correl.ci(r, n, a = 0.05, rho = 0)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
944 correl_pci <- lapply(
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
945 X = 1:Nfeatures
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
946 , FUN = function(i) correl.ci(r = pcorr1[i], n = Nobservations)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
947 )
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
948 result$p_value_raw <- sapply(
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
949 X = 1:Nfeatures
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
950 , FUN = function(i) correl_pci[[i]]$p.value
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
951 )
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
952 result$p_value_raw[is.na(result$p_value_raw)] <- 0.0
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
953 result$ci_lower <- sapply(
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
954 X = 1:Nfeatures
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
955 , FUN = function(i) correl_pci[[i]]$CI['lower']
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
956 )
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
957 result$ci_upper <- sapply(
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
958 X = 1:Nfeatures
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
959 , FUN = function(i) correl_pci[[i]]$CI['upper']
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
960 )
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
961
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
962
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
963 # extract "variant 4 of Variable Influence on Projection for OPLS" (see Galindo_Prieto_2014, DOI 10.1002/cem.2627)
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
964 # Length = number of features; labels = feature identifiers. (The same is true for $correlation and $covariance.)
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
965 result$vip4p <- as.numeric(ropls_x@vipVn)
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
966 result$vip4o <- as.numeric(ropls_x@orthoVipVn)
12
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
967 if (length(result$vip4o) == 0) result$vip4o <- NA
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
968 # extract the loadings
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
969 result$loadp <- as.numeric(ropls_x@loadingMN)
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
970 result$loado <- as.numeric(ropls_x@orthoLoadingMN)
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
971 # get the level names
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
972 level_names <- sort(levels(as.factor(ropls_x@suppLs$y)))
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
973 fctr_lvl_1 <- level_names[1]
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
974 fctr_lvl_2 <- level_names[2]
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
975 feature_count <- length(ropls_x@vipVn)
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
976 result$level1 <- rep.int(x = fctr_lvl_1, times = feature_count)
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
977 result$level2 <- rep.int(x = fctr_lvl_2, times = feature_count)
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
978 greaterLevel <- sapply(
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
979 X = result$correlation
7
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
980 , FUN = function(my_corr)
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
981 tryCatch({
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
982 if ( is.nan( my_corr ) ) {
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
983 NA
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
984 } else {
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
985 if ( my_corr < 0 ) fctr_lvl_1 else fctr_lvl_2
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
986 }
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
987 }, error = function(e) {
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
988 x_progress(
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
989 sprintf(
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
990 "cor_vs_cov -> sapply: error - substituting NA - %s"
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
991 , as.character(e)
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
992 )
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
993 )
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
994 NA
066b1f409e9f planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit e73fabe1b3c871abbcb2e89914c181149c8e2066
eschen42
parents: 6
diff changeset
995 })
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
996 )
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
997
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
998 # begin fixes for https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/issues/1
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
999 featureID <- names(ropls_x@vipVn)
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
1000 greaterLevel <- greaterLevel[featureID]
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
1001 result$correlation <- result$correlation[featureID]
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
1002 result$covariance <- result$covariance[featureID]
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
1003 # end fixes for https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/issues/1
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
1004
12
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1005 # build a data frame to hold the content for the tab-separated values file
6
7bd523ca1f9a planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit cafda5095a79ce2376325b57337302f95137195d
eschen42
parents: 5
diff changeset
1006 tsv1 <- data.frame(
12
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1007 featureID = featureID
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1008 , factorLevel1 = result$level1
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1009 , factorLevel2 = result$level2
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1010 , greaterLevel = greaterLevel
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1011 , projection = result$projection
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1012 , correlation = result$correlation
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1013 , covariance = result$covariance
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1014 , vip4p = result$vip4p
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1015 , vip4o = result$vip4o
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1016 , loadp = result$loadp
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1017 , loado = result$loado
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1018 , cor_p_val_raw = result$p_value_raw
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1019 , cor_p_value = p.adjust(p = result$p_value_raw, method = "BY")
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1020 , cor_ci_lower = result$ci_lower
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1021 , cor_ci_upper = result$ci_upper
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
1022 )
12
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1023 rownames(tsv1) <- tsv1$featureID
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1024
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1025 # build the superresult, i.e., the result returned by this function
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1026 superresult <- list()
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
1027 superresult$projection <- result$projection
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
1028 superresult$covariance <- result$covariance
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
1029 superresult$correlation <- result$correlation
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
1030 superresult$vip4p <- result$vip4p
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
1031 superresult$vip4o <- result$vip4o
1
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
1032 superresult$loadp <- result$loadp
0c2ad44b6c9c planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
eschen42
parents: 0
diff changeset
1033 superresult$loado <- result$loado
12
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1034 superresult$cor_p_value <- tsv1$cor_p_value
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
1035 superresult$details <- result
12
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1036
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1037 # remove any rows having NA for covariance or correlation
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1038 tsv1 <- tsv1[!is.na(tsv1$correlation),]
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1039 tsv1 <- tsv1[!is.na(tsv1$covariance),]
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1040 superresult$tsv1 <- tsv1
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1041
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1042 # # I did not include these but left them commentd out in case future
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1043 # # consumers of this routine want to use it in currently unanticipated ways
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1044 # result$superresult <- superresult
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1045 # result$oplsda <- ropls_x
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1046 # result$predictor <- ropls_x@suppLs$y
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1047
0
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
1048 return (superresult)
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
1049 }
23f9fad4edfc planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit bd26542b811de06c1a877337a2840a9f899c2b94
eschen42
parents:
diff changeset
1050
12
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1051 # Code for correl.ci was adapted from correl function from:
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1052 # @book{
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1053 # Tsagris_2018,
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1054 # author = {Tsagris, Michail},
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1055 # year = {2018},
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1056 # link = {https://www.researchgate.net/publication/324363311_Multivariate_data_analysis_in_R},
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1057 # title = {Multivariate data analysis in R}
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1058 # }
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1059 # which follows
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1060 # https://en.wikipedia.org/wiki/Fisher_transformation#Definition
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1061
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1062 correl.ci <- function(r, n, a = 0.05, rho = 0) {
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1063 ## r is the calculated correlation coefficient for n pairs
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1064 ## a is the significance level
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1065 ## rho is the hypothesised correlation
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1066 zh0 <- atanh(rho) # 0.5*log((1+rho)/(1-rho)), i.e., Fisher's z-transformation for Ho
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1067 zh1 <- atanh(r) # 0.5*log((1+r)/(1-r)), i.e., Fisher's z-transformation for H1
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1068 se <- (1 - r^2)/sqrt(n - 3) ## standard error for Fisher's z-transformation of Ho
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1069 test <- (zh1 - zh0)/se ### test statistic
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1070 pvalue <- 2*(1 - pnorm(abs(test))) ## p-value
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1071 zL <- zh1 - qnorm(1 - a/2)*se
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1072 zH <- zh1 + qnorm(1 - a/2)*se
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1073 fishL <- tanh(zL) # (exp(2*zL)-1)/(exp(2*zL)+1), i.e., lower confidence limit
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1074 fishH <- tanh(zH) # (exp(2*zH)-1)/(exp(2*zH)+1), i.e., upper confidence limit
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1075 CI <- c(fishL, fishH)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1076 names(CI) <- c('lower', 'upper')
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1077 list(correlation = r, p.value = pvalue, CI = CI)
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1078 }
ddaf84e15d06 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 6775c83b89d9d903c81a2229cdc200fc93538dfe-dirty
eschen42
parents: 11
diff changeset
1079
5
50f60f94c034 planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit aff1790e25523d038a1e9528de748191c096132f
eschen42
parents: 4
diff changeset
1080 # vim: sw=2 ts=2 et :