How can I count the number of elements of a given value in a matrix?
显示 更早的评论
I have a matrix such as.
44.147231 ; 24.358619
44.461415 ; 24.118248
44.258173 ; 23.185014
43.166729 ; 24.100443
43.159002 ; 26.708013
42.954059 ; 27.338612
44.139759 ; 23.927882
44.424679 ; 25.301393
42.957588 ; 25.530434
44.615223 ; 24.200719
44.384409 ; 25.486735
43.965701 ; 28.454219
43.400971 ; 21.492123
42.068687 ; 22.303336
43.245372 ; 28.932286
44.593751 ; 23.635179
The first column is longitude , the second column is latitude.
So, I want to count the number of region.
In the above matrix,

But I don't know how make the code.
Please help me...
采纳的回答
更多回答(3 个)
Yona
2015-3-5
0 个投票
after this run double loop, one on latitude and the second on longitude, and by using length(find(A(:,1)==i & A(:,2)==j)) you will get the number of each combination.
puneet joshi
2015-3-5
0 个投票
well u can compare the complete matrix with the num u want to count .... and each time there is a match u can increase the count
Andrei Bobrov
2015-3-5
编辑:Andrei Bobrov
2015-3-5
n = floor(min(a));
m = ceil(max(a));
[~,~,lo] = histcounts(a(:,1),n(1):m(1));
[~,~,la] = histcounts(a(:,2),n(2):m(2));
out = flip(accumarray([la,lo],1),1)
2 个评论
Jos (10584)
2015-3-5
Did you mean
[~, lo] = histc(..)
histc has been deprecated in R2014b. The replacement is histcounts which uses a different syntax and of course behaves slightly differently while still not solving all the issues of histc.
The syntax for histcounts is indeed the one Andrei used in his answer.
类别
在 帮助中心 和 File Exchange 中查找有关 Lengths and Angles 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!