Solved – How to find P-value of Mutual Information Correlation (MIC) in R

correlationnonlinearp-value

With reference to the article.
I have a query regarding p-value calculation.
For example, I have MIC strength value 0.1643 with sample size 30 and the rest parameters are default. As authors given p-values here
How can we compute the p-value for the above MIC strength value 0.1643?

Best Answer

You can do it with $n$ Monte Carlo permutations: you permute the values in $X$ and in $Y$ to break their relationship and compute MIC, $n$ times. Then, you can then compute the $p$-value as: $$ \frac{1}{n}\sum_{i=1}^n I(\mbox{MIC}(X_{p_i},Y_{p_i}) > \mbox{MIC}(X,Y)) $$ where $I$ is the indicator function, and e.g. $X_{p_i}$ is the $i$th permuted version of $X$.

In practice you are counting how many times you can obtain MIC higher than your particular value just with a random relationship between $X$ and $Y$.


If you really want to use the tables at the link you propose, you have to download the table for your sample size (that is 30) and look up your MIC value 0.1643. Given that the last line in the table is

 MIC >= x   gives p <= y    +/- (with 95% confidence)
 0.38389    0.059979405     0.00008497

it means that your value would obtain $p$-value less than 0.05.

Related Question