Count the number of times a value occurs in a specific of an array

330 次查看(过去 30 天)
Given a array, is there any way to count the number of times a value occurs within a specific row of that array?
For example, if I have a array:
A=[1,2,5,2,3,4,2; 4,2,1,5,3,2,3; 1,4,2,3,2,2,1];
I want to know how many times the value '2' occurs in the second row
Thanks

采纳的回答

Azzi Abdelmalek
Azzi Abdelmalek 2014-7-17
编辑:Azzi Abdelmalek 2014-7-17
A=[1,2,5,2,3,4,2; 4,2,1,5,3,2,3; 1,4,2,3,2,2,1]
sum(A(2,:)==2)
%or
nnz(A(2,:)==2)
  2 个评论
Tyler
Tyler 2014-7-29
Thanks Azzi!
If I had the same problem, but I wanted to determine how many values were between a certain range, (ie. between 2 and 4) how would I do that?

请先登录,再进行评论。

更多回答(2 个)

Image Analyst
Image Analyst 2014-7-17
In general, you can use histc() to find the counts for all of the numbers in one shot:
A=[1,2,5,2,3,4,2; 4,2,1,5,3,2,3; 1,4,2,3,2,2,1];
edges = unique(A)
counts = histc(A(:), edges)
In the command window:
edges =
1
2
3
4
5
counts =
4
8
4
3
2

Geoff Hayes
Geoff Hayes 2014-7-17
Try the following to find the number of times '2' occurs in the second row
length(find(A(2,:)==2))

类别

Help CenterFile Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by