list2imSigned | R Documentation |
convert list to directional incidence matrix
list2imSigned(x, emptyValue = NA, verbose = FALSE, ...)
x |
|
verbose |
logical indicating whether to print verbose output. |
... |
additional arguments are passed to |
This function extends list2im()
in that it stores the
value associated with each element in the list. As such, the input
format is a named vector, where the names of the vector are the items,
and the numeric values are the values to be stored in the
incidence matrix.
A common scenario is to generate a vector of genes, with values
c(-1, 0, 1)
indicating the direction of gene expression changes,
named by the gene symbol. Each vector in the list represents one
statistical test. Here, list2imSigned()
will convert this list
into a directional matrix representing the gene changes across the
comparisons.
Note that this function currently does not combine multiple values,
instead only the last occurring value is stored in the resulting
matrix. This decision is partly due to efficiency, and partly because
there are multiple possible methods to combine multiple values.
For example, taking the mean(x)
for a given gene, which has
a value 1
and -1
would result in 0
and might suggest the
gene is not a statistical hit. Instead, when multiple values
are anticipated per named vector entry, use functions in a
package like data.table
or dplyr
to apply a function to
combine values.
numeric matrix with rownames defined by vector names from each vector in the input list. The colnames are defined by names of the input list if they exist. list. Values in the matrix are values from each vector.
Other jam list functions:
colors_from_list()
,
im2list_dep()
,
im2list()
,
imSigned2list_dep()
,
imSigned2list()
,
list2concordance()
,
list2im()
L1 <- list(A=c("C","A","B","A"),
D=c("D","E","F","D"),
A123=c(1:8,3,5),
T=LETTERS[7:9]);
L1;
# Convert each vector to a signed vector
set.seed(123);
L2 <- lapply(L1, function(i){
i <- unique(i);
jamba::nameVector(sample(c(-1,1), size=length(i), replace=TRUE), i);
});
L2;
# Convert to signed incidence matrix
list2imSigned(L2);
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.