【问题标题】:Find the indices of occurence of an ordered array in a vector - Matlab查找向量中有序数组的出现索引 - Matlab
【发布时间】:2014-06-24 09:00:30
【问题描述】:

我有两个数组a = [1,-1,0,0,1,-1,1,-1,0];b = [1,-1];

我想找到 b 在 a 中的出现(不是 b 在 a 中的任何值)。 我想要 1 后跟 -1 出现索引。

预期的输出将是 [1,5,7]。

我已经尝试在 Matlab 中使用 ismemberfind 函数。 没有得到我想要的结果。

【问题讨论】:

  • 预期的输出是什么?
  • 对我来说看起来像 conv 解决方案...
  • @Divakar 更新了预期输出的问题。

标签: arrays matlab find


【解决方案1】:

Strfind 完全符合您的要求:strfind(a,b) 文档没有提及,但您可以将它与双精度数和字符一起使用。

【讨论】:

  • 精湛的答案@Daniel。你可以写一篇关于“无证 matlab”的文章。
【解决方案2】:

这是一种方法:

 find(conv(a,b,'same')==-2)

【讨论】:

  • 可能值得一提的是,如果向量a中允许其他数字(-1、0 和 1 除外),这可能会失败。
  • 是的,我猜你刚刚做了......我只是准确地回答了这个问题,没有概括。
猜你喜欢
  • 2019-04-13
  • 1970-01-01
  • 2015-05-27
  • 1970-01-01
  • 1970-01-01
  • 2014-03-14
  • 2021-11-25
  • 1970-01-01
  • 2016-05-02
相关资源
最近更新 更多