CMIBiCondimat2matPermu {conMItion}R Documentation

Permuted Conditional Mutual Information Between Two Matrices Given Two Conditions

Description

Computes the normalized conditional mutual information (CMI) between vectors sampled from two matrices, conditioned on two vectors, normalized by the individual information content. The sampling is done multiple times to generate a distribution.

Usage

CMIBiCondimat2matPermu(
  mat1,
  mat2,
  condi1,
  condi2,
  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'.

condi1

A numeric condition vector, matching the number of columns in 'mat1'.

condi2

Another numeric condition vector, matching the number of columns in 'mat'.

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)
condi1 <- rnorm(100)
condi2 <- rnorm(100)
CMIBiCondimat2matPermu(mat1, mat2, condi1, condi2)


[Package conMItion version 0.2.0 Index]