不能使用“直方图”来计算熵

14日视图(30天)
z8080
z8080 2021年9月9日
我想计算不同的熵向量。我要使用类似:
X = randn (1100);
h1 =直方图(X,“归一化”,“概率”);
概率= h1.Values;
熵=总和(概率。* log2(概率))
然而第二个命令给了错误:
未定义的MATLAB函数的c: \ Program Files \ \ R2019b \ MATLAB工具箱\ \ specgraph \直方图。m为输入参数的类型的“双”。
但这正是标准的Matlab函数“直方图”预计? !做一个
哪一个柱状图
事实上返回
C:\Program Files\MATLAB\R2019b\toolbox\matlab\specgraph\ histogram.m
这是最新的文件(通过修改日期)从几个的名字(不幸的是)存在于我的Matlab文件夹。我相信这 应该 是标准的Matlab函数“直方图”。
如果另一方面在上面的例子中,我使用“嘘”而不是“直方图”,我得到我希望的标量值熵。然而,我知道“嘘”是不可取的,尤其是因为不能指定规范化类型。
所以,我的问题是:使用“嘘”计算概率好,或者我应该试试别的东西能够使用“直方图”呢?
13个评论
沃尔特·罗伯森
沃尔特·罗伯森 2021年9月10日
根据你的知识分布,它是有意义的询问,并采取马克斯(1项)来代替一个名义冲击对于每一个本,然后计算概率,adjusted_counts。/总和(adjusted_counts)。
样品越少,越扭曲的概率;样本越多,你就越有可能需要它。
但我推荐自己找出的比特数 在某种程度上 否则你将继续其非法的方法选择的摆布垃圾箱的数量。

登录置评。

答案(0)

s manbetx 845


释放

R2019b

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!