[讨论] 二维矩阵取值

楼主: andgitisaac (AndGiTiSaaC)   2016-09-02 23:00:07
小弟一直以来都有个问题没有解决,想来请教板上前辈。
假设有个矩阵
A = [ 16 2 3 13;
5 11 10 8;
9 7 6 12;
4 14 15 1]
欲取(1,2),(3,4),(2,4)的值
而手上有座标矩阵sub = [1, 2; 3, 4; 2, 4]
目前做法都是用sub2ind(sub)转成index
才所求B = [2; 12; 8]
但始终觉得有办法把sub直接丢进A里头求解
并且不使用循环
试过A( [sub(:,1), sub(:,2)] )之类的做法
但会出现意料之外的解
请前辈们解惑@@
作者: sunev (Veritas)   2016-09-03 01:11:00
如果size(A)=[n m],则A(sub(:,2)*(m-1)+sub(:,1)),就是你要的,但这正是sub2ind在做的事

Links booklink

Contact Us: admin [ a t ] ucptt.com