过滤矢量

时间:2013-10-29 00:04:43

标签: matlab

我想以有效的方式'过滤'一个向量:

我的第一个向量M包含0到1之间的值以及一个'关联'向量V

我想创建一个新矩阵,其中包含V的元素M中的数字大于0.5。

我认为我可以创建一个像M>0.5这样的矩阵,它包含0和1并保留索引的索引,而不是创建filtered = V(indexes)

如何获取indexes向量? (没有for循环)

2 个答案:

答案 0 :(得分:5)

如果MV是相同大小的向量,那么

filteredV=V(M>0.5);

我认为应该工作。

答案 1 :(得分:3)

使用find()返回非零的索引。

M        = rand(1,5)
indexes  = find(M>0.5)
filtered = V(indexes)

BR 马格努斯

相关问题