CMImat2matPermu {conMItion} | R Documentation |
Permuted Conditional Mutual Information Between Two Matrices
Description
Computes the normalized conditional mutual information (CMI) between vectors sampled from two matrices, conditioned on another vector, normalized by the individual information content. The sampling is done multiple times to generate a distribution.
Usage
CMImat2matPermu(
mat1,
mat2,
condi,
bin = 6,
sp_order = 2,
bulkIdx = 0,
permutationTimes = 1000,
seedNum = 99999999
)
Arguments
mat1 |
A numeric matrix. For example, each row represents a gene and each column represents a sample. |
mat2 |
Another numeric matrix to compare against. Must have the same dimensions as 'mat1'. |
condi |
A numeric condition vector, matching the number of columns in 'mat1'. |
bin |
An integer specifying the number of bins. Default is 6. |
sp_order |
An integer specifying the spline order. Must be less than 'bin'. Default is 2. |
bulkIdx |
Index to divide the task when processing many permutations. Default is 0. |
permutationTimes |
Number of permutations for sampling. Default is 1000. |
seedNum |
Seed for random number generation. Default is 99999999. |
Value
A numeric vector of normalized conditional mutual information (CMI) values for each permutation.
Examples
mat1 <- matrix(rnorm(10000), nrow = 100, ncol = 100)
mat2 <- matrix(rnorm(10000), nrow = 100, ncol = 100)
condi <- rnorm(100)
CMImat2matPermu(mat1, mat2, condi)