首页 > 解决方案 > 了解 Matlab histcounts 行为

问题描述

histcounts(1:100,'BinWidth',50)

返回

49    51

为什么不返回

50    50

反而?

标签: matlabhistogram

解决方案


直方图 1 到 100(包括)h = histogram(1:100, 'BinWidth', 50)给出:

在此处输入图像描述

让我们看看 bin 边缘:

h.BinEdges

ans =

     0    50   100

来自MATLAB 的帮助

每个 bin 包括左边缘,但不包括右边缘,除了最后一个 bin 包括两个边缘

这意味着值 1 到 100 以这种格式进行直方图:

Bin 1 => edges: [0 50) => Included values: [1, 2, 3, .., 49]         (n = 49)
Bin 2 => edges: [50 100] => Included values: [50, 51, 52, .., 100]   (n = 51)

histcount(X)分区X方式与histogram(X). 因此,结果是您应该期待的,实际上是非常合理的。


推荐阅读