在Matlab中我有这个矩阵:
尺寸为Grid
的 [x,y]
我已将其重新塑造为单行矩阵
尺寸为Row
的 [1,x*y]
。
我如何知道在矩阵Grid(x,y)
中找到坐标Row(1,?)
的位置,反之亦然?在Matlab中是否有这个功能?
答案 0 :(得分:3)
是的,功能sub2ind
和ind2sub
正是您所寻找的。我想。
答案 1 :(得分:3)
答案 2 :(得分:0)
您能否提供更多有关“转换矩阵”的信息?
标准方法是使用B = reshape(A,m,n)
,可以在Matlab文档中看到http://www.mathworks.com/help/techdoc/ref/reshape.html
整形:
返回m-by-n矩阵B,其元素从列中取出 A.如果A没有m * n个元素,则会产生错误。
例如,
a = [1,2,3;4,5,6;7,8,9]
1 2 3
4 5 6
7 8 9
reshape(a,9,1)
1
4
7
2
5
8
3
6
9
因此,可以使用sub2ind(matrixSize,rowSub,colSub) 即。
sub2ind([3,3], 2, 3)
如预期的那样,将产生8