How do I get identical results from the old hist and the new histcounts

1 view (last 30 days)
Jakob Havtorn
Jakob Havtorn on 8 Jul 2016
Answered: Al in St. Louis on 15 Nov 2017
I am trying to replace a use of the old hist function by the new histcounts which performs faster at binning and counting than hist. However, I am struggling to achieve the exact same results from histcounts that I got from hist.
I am aware that histcounts returns the bin edges rather than the binCenters. However, the counts should be identical and the bin edges should be convertible to bin centers, as far as I understand.
This small piece of code illustrates my problem.
A = randn(100,2);
[N1,binCenters1] = hist(A(:,1),10);
[N2,binEdges2] = histcounts(A(:,1),10);
binCenters2 = mean([binEdges2(1:end-1);binEdges2(2:end)]);
N = [N1;N2;abs(N1-N2)];
binCenters = [binCenters1;binCenters2;abs(binCenters1-binCenters2)];

Answers (1)

Al in St. Louis
Al in St. Louis on 15 Nov 2017
I just fall back on hist when I need its functionality.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!