【问题标题】:Find repeated elements occuring more than Once查找多次出现的重复元素
【发布时间】:2020-06-15 11:26:20
【问题描述】:

我有一个数组A,如下:

A = [7 7 10 10 10 15 1 1 15 15 7 16 17 1 18]. ';

如何获取数组中出现多次的所有数字?在这个例子中,答案应该是1 7 10 15

【问题讨论】:

  • 不清楚。为什么 1 不存在而 7 存在?
  • 抱歉打错了

标签: arrays matlab find-occurrences


【解决方案1】:

这是另一种方法,只是为了多样化:

[~, ind] = unique(A);
result = A;
result(ind) = [];
result = unique(result);

【讨论】:

  • 啊,你改变了你的问题。请立即查看
【解决方案2】:

用下面的代码解决了

[ii,jj,kk]=unique(A);
repeated=ii(histc(kk,1:numel(ii))>1);

【讨论】:

  • 这会计算多次出现的元素,不超过两次。您可能需要将最后一个1 更改为2
  • @AdupaVasista 所以你应该编辑你的问题,因为它与你的答案不匹配。你已经指定了“超过两次”,所以> 2
  • 此外,如果我使用2 而不是1,我会得到与您发布的结果相同的结果。
  • 您可能想用波浪号替换不需要的输出jj
猜你喜欢
  • 1970-01-01
  • 2017-09-13
  • 2011-04-17
  • 1970-01-01
  • 2020-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多