0

假设我有一个由整数组成的 9x9 矩阵 A。我有另一个矩阵 IDX,它是 2500x4,由 A 中的相同整数组成。我想在矩阵 A 中找到 IDX 中所有值的索引。

这是我所拥有的:

for ii=1:length(IDX)
     Mat_idx=ismember(A,IDX(ii,:));
     [StatIdxX StatIdxY] = find(Mat_idx);
end

现在对于每个 ii,StatIdxX 和 StatIdxY 是矩阵 A 中 IDX 的行和列索引。这很慢,罪魁祸首是ismember

有什么想法可以加快速度吗?

谢谢。

4

1 回答 1

3

首先用 展平AA=A(:)这将创建一个线性索引而不是 row,col。然后只需使用逻辑索引。例如:

B=zeros(size(IDX));
for n=1:numel(A)
B(IDX==A(n))=n;
end
于 2013-05-31T21:51:53.140 回答