我在解释熵包中的 mi.plugin()
(或 mi.empirical()
)函数的结果时遇到问题。据我了解,MI=0 表明您正在比较的两个变量是完全独立的;随着 MI 的增加,两个变量之间的关联变得越来越非随机。
那么,为什么在 R 中运行以下代码时(使用 {entropy}
包)我得到的值为 0:
mi.plugin( rbind( c(1, 2, 3), c(1, 2, 3) ) )
当我比较两个完全相同的向量时?
我认为我的困惑是基于我的理论误解,有人可以告诉我哪里出了问题吗?
提前致谢。
最佳答案
使用 infotheo 包中的 mutinformation(x,y)
。
> mutinformation(c(1, 2, 3), c(1, 2, 3) )
[1] 1.098612
> mutinformation(seq(1:5),seq(1:5))
[1] 1.609438
标准化互信息将为 1。
关于r - R中互信息的计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25790925/