Mercurial > repos > ppericard > viscorvar
annotate mixomics_blocksplsda_additional_funct.R @ 5:88c1fd2ac110 draft default tip
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 21d09ff286a496ff475f32626d88dd42423ae663"
author | ppericard |
---|---|
date | Tue, 07 Sep 2021 10:40:08 +0000 |
parents | c8533e9298e5 |
children |
rev | line source |
---|---|
2
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
1 #' @title Determination of selected variables for all components |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
2 #' @description The function unionSelectBlockVariables determines, for each block, the selected block variables |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
3 #' for all components. |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
4 #' @param res_block_splsda type : sgccda. This parameter is the output of block.splsda function |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
5 #' mixOmics. |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
6 #' @details For each block, the function unionSelectBlockVariables returns 1 if the block variable is selected for |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
7 #' at least one component. Otherwise, this function returns 0. |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
8 #' @return type : list of matrix. For each block, if the block variable is selected, the value 1 is associated with |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
9 #' this block variable. Otherwise the value 0 is associated with this block variable. |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
10 #' @examples |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
11 #' data(res_data_integration) |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
12 #' list_union_selected_block_variables = unionSelectBlockVariables(res_data_integration) |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
13 #' @export |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
14 unionSelectBlockVariables <-function(res_block_splsda) |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
15 { |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
16 ncomp = res_block_splsda$ncomp[1] |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
17 |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
18 names_blocks = names(res_block_splsda$loadings) |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
19 index_Y = which(names_blocks == "Y") |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
20 names_blocks = names_blocks[ - index_Y] |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
21 list_select_block_variables = list() |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
22 |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
23 for(i in 1:length(names_blocks)) |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
24 { |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
25 mat_loadings_i = res_block_splsda$loadings[[i]] |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
26 index_i = c() |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
27 |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
28 for(j in 1:ncomp) |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
29 { |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
30 loadings_i_j = mat_loadings_i[, j] |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
31 index_i_j = which(loadings_i_j != 0) |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
32 |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
33 index_i = c(index_i, index_i_j) |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
34 |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
35 } # End for(j 1:ncomp). |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
36 |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
37 index_i = unique(index_i) |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
38 |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
39 mat_select_block_variables = matrix(0, |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
40 nrow = dim(mat_loadings_i)[1], |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
41 ncol = 1) |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
42 mat_select_block_variables[index_i, 1] = rep(1, length(index_i)) |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
43 rownames(mat_select_block_variables) = rownames(mat_loadings_i) |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
44 |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
45 list_select_block_variables[[i]] = mat_select_block_variables |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
46 |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
47 } # End for(i in 1:length(names_blocks)). |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
48 |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
49 names(list_select_block_variables) = names_blocks |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
50 |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
51 return(list_select_block_variables) |
c8533e9298e5
"planemo upload for repository https://gitlab.com/bilille/galaxy-viscorvar commit 8cb5630238352459037b3647eebfabb5554566f6-dirty"
ppericard
parents:
diff
changeset
|
52 } |