] 2试图测试此程序包以从数据集中计算条件互信息。程序包名称-“ dit”
我的代码:
from __future__ import division
import numpy as np
import dit
from dit import Distribution as D
from dit.multivariate import coinformation as I
from dit.example_dists import Xor
d=Xor()
d.set_rv_names(['X','Y','Z'])
X=111010
Y=101101
Z=001011
a=dit.multivariate.coinformation(d,'XY','Z')
print(a)
在运行该程序时,我总是得到的结果是“ 1.0”。
结果为负值或正值,例如“ -0.0023”或“ 0.120”
基本上,我想这样做
https://stats.stackexchange.com/questions/147401/estimating-mutual-information-using-r
在Python中。
一点帮助将不胜感激
最佳答案
告诉我这是否是您的解决方案:set_rv_names
到d
:
d=Xor()
## ADD THIS LINE OF CODE BELOW
d.set_rv_names(['X', 'Y', 'Z'])
X=0.052290766
Y=0.004951425
Z=0.000246642
a=dit.multivariate.coinformation(d,'XY','Z')
print(a)