2012-03-01 136 views
1

我有一个长度为2000的元素的整数数组。例如matlab搜索匹配元素

x = [2, 4, 5, 6, 5,6,7,5......]; 

现在在这个数组中,我需要找到一个重复出现的元素。因为我需要知道一个数字'5'发生了多少次。在上面的例子中它是三次。

有什么方法可以搜索匹配的元素并返回matlab中的计数?

回答

2

你知道号码吗?

如果是的话,制定出有多少次出现在x你可以这样做:

sum(x==5) 

x==5创建的[FALSE FALSE TRUE FALSE TRUE FALSE FALSE TRUE ...]载体,是TRUE每当x是5

sum然后将该矢量相加,其中FALSE映射到0并且TRUE变为1.

+1

nnz(x == 5),numel(find(x == 5))也是有效的选项。恕我直言,他们更清楚的读者,因为你不想总结,但在元素的数量。 – 2012-03-01 08:27:52

2

快速获得公式UNT是

sum(x == 5) 

如果你需要匹配元素的indicies:

find(x == 5) 

通知,次数也length(find(x == 5))。 标准注意事项适用于使用==和浮点数。