使用矩阵的行索引作为新矩阵的元素?

时间:2014-08-03 04:46:53

标签: matlab vectorization

我有一个3020X1860矩阵srtloc,如下所示:

  1     2   3  . . . 1860 
______________
1|31    77  88
2|88    213 235
3|213   235 304
4|235   304 327
.
.
.
3020

我想创建一个具有

的新矩阵

第一行:第31列为1,第77列为2,第88列为3 ......

第二行:第88列为1,第213列为2,第235列为3 ......

第三行:第235列1个,第304列2个,第327列3个......

等等。要立即执行此操作,我正在使用嵌套for循环,并且存在速度问题:

pctrank  = NaN(3020,1860)
for rkix1 = 1:3020
    for rkix2 = 1:1860
        rowz = srtloc(rkix1,:);
        pctrank(rkix1,rowz(rkix2)) = rkix2;
    end
end

有没有矢量化的方法来做到这一点?

0 个答案:

没有答案