matlab循环或内置函数用于行和列坐标

时间:2012-07-31 03:32:01

标签: matlab row coordinates

我需要找到矩阵{a}< 259x1>的行和列坐标。来自另一个矩阵{data}< 259x31878>。我尝试使用for循环,但不确定如何使用矩阵列表{a}实现for循环。 请帮助任何人。 谢谢。

更新: 对困惑感到抱歉。 是的,矩阵{a}是矩阵{data}的子集。或者,矩阵{data}是矩阵{a}的超集。我需要在矩阵{data}中找到矩阵{a}的值的行和列位置。如您所见,矩阵{data}如此之大,单独搜索每个数据点是不切实际的。 再次感谢。

3 个答案:

答案 0 :(得分:2)

a(:,ones(1,size(data,2)))==data

这会产生您可以使用的逻辑索引,或者您可以使用find:

转换它们
[r c]=find(a(:,ones(1,size(data,2)))==data)

答案 1 :(得分:1)

检查matlab ismemeber函数。

答案 2 :(得分:1)

ismember的第二个输出怎么样?它为您提供位置而不是逻辑索引矩阵。看看这个问题: Find index of all (non-unique) elements in a cell array as they appear in a second (sorted and unique) cell array