histc removed by matlab
2 次查看(过去 30 天)
显示 更早的评论
Hi,
it seems that matlab decided to remove histc and suggests to use histcounts instead. I am often usin histc as follows : [bincounts,ind]= histc(___); It seems, that histcounts does not give indices ind as outputs. I use ind from histc in many codes for various applications, e.g. with accumarray.
Is there any function which would replace histc and give ind as output?
thanks
ina
0 个评论
采纳的回答
Steven Lord
2016-10-20
The histc function still exists, but we recommend you use histcounts and/or histogram instead.
The third output from histcounts is the equivalent of the second output from histc, assuming you've modified how you specify your bins from bin centers (used by histc) into bin edges (used by histcounts) as described in the "Convert Bin Centers to Bin Edges" example on this page in the documentation.
更多回答(1 个)
John D'Errico
2016-10-20
编辑:John D'Errico
2016-10-20
Why do people never read the help? The MATLAB gods put it there for a reason, of this I am sure. :)
[N,EDGES,BIN] = histcounts(...) also returns an index array BIN, using
any of the previous syntaxes. BIN is an array of the same size as X
whose elements are the bin indices for the corresponding elements in X.
The number of elements in the kth bin is NNZ(BIN==k), which is the same
as N(k). A value of 0 in BIN indicates an element which does not belong
to any of the bins (for example, a NaN value).
Look at the THIRD output from histcounts. It does what you want. You can always discard the first and second return arguments if you only want the third.
[~,~,bins] = histcounts(stuff);
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Distribution Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!