在matlab 2-d矩阵中进行矢量化查找

时间:2016-05-25 03:15:01

标签: matlab vector vectorization

您好我在向量化以下Matlab代码段时遇到了麻烦

for i=1:n;
    vec(i) = mat(index(i),i);
end;

其中索引是1:n的排列。

这种形式的代码非常慢。我已经在Matlab中检查了一些关于矢量化技巧的注释,但是我可能会遗漏一些明显的东西。提前谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用index1:n获取mat的相关部分。

vec = mat(index, 1:n);

如果n实际上是mat中的列数,您只需执行以下操作:

vec = mat(index,:);