フィルターのクリア

how to count the occurrences of a value for an matrix?

3 ビュー (過去 30 日間)
Anusha
Anusha 2014 年 3 月 4 日
回答済み: Image Analyst 2014 年 3 月 4 日
a= [ 3 4 5; 7 8 9; 3 6 8 ; 4 6 9; 3 6 5]
I expected the ans:
b=
[ 3 3
4 2
5 2
7 1
8 2
9 2
6 3]
all the values must displays the number of occurences

採用された回答

lvn
lvn 2014 年 3 月 4 日
c=unique(a);
b=[c, sum(bsxfun(@eq,a(:),c'))']
b =
3 3
4 2
5 2
6 3
7 1
8 2
9 2

その他の回答 (1 件)

Image Analyst
Image Analyst 2014 年 3 月 4 日
What you're describing is the histogram. You can use the histc() function to get the counts, and then stitch the bins and counts together to get the "b" variable you want.
a = [ 3 4 5; 7 8 9; 3 6 8 ; 4 6 9; 3 6 5]
bins = unique(a);
counts = histc(a(:), bins);
b = [bins, counts]

カテゴリ

Help Center および File ExchangeHistograms についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by