【发布时间】:2013-05-07 19:38:55
【问题描述】:
假设我们已经抽取了标准正态分布的n=10000 个样本。
现在我想用直方图计算它的熵来计算概率。
1) 计算概率(例如使用matlab)
[p,x] = hist(samples,binnumbers);
area = (x(2)-x(1))*sum(p);
p = p/area;
(binnumbers 是由某些规则决定的)
2) 估计熵
H = -sum(p.*log2(p))
给出 58.6488
现在当我使用直接公式计算正常数据的熵时
H = 0.5*log2(2*pi*exp(1)) = 2.0471
使用直方图+熵公式时我做错了什么? 非常感谢您的帮助!
【问题讨论】:
-
能否提供代码的完整代码?您是否使用了一些中心限制结果?
-
NB
hist()已贬值,请改用histogram()。
标签: matlab distribution histogram entropy