我有一个向量v的值和一个索引向量r。我想将值存储在矩阵m中,如下所示:
for i = 1:length(v)
m(i, r(i)) = v(i);
end
以矢量化方式执行此操作的最快方法是什么?
答案 0 :(得分:2)
我不知道它是否更快,我想是这样,但差异可能很小,但这是一种方式:
m(sub2ind(size(m),1:length(v),r(1:length(v))))=v;
如果r
是列向量,那么sub2ind
会抱怨向量大小,你只需要进行转置就可以解决这个问题。