This function empirically estimates the Mutual Information from a table of counts using the observed frequencies.
Usage
miData(freqs.table, method = c("mi.raw", "mi.raw.pc"))
Details
The mutual information estimation is computed from the observed frequencies through a plugin estimator based on entropy.
The plugin estimator is $$I(X, Y) = H (X) + H(Y) - H(X, Y)$$, where $$H()$$ is the entropy computed with entropyData
.
References
Cover, Thomas M, and Joy A Thomas. (2012). "Elements of Information Theory". John Wiley & Sons.
Examples
## Generate random variable
Y <- rnorm(n = 100, mean = 0, sd = 2)
X <- rnorm(n = 100, mean = 5, sd = 2)
dist <- list(Y="gaussian", X="gaussian")
miData(discretization(data.df = cbind(X,Y), data.dists = dist,
discretization.method = "fd", nb.states = FALSE),
method = "mi.raw")
#> [1] 0