2

我有什么方法可以访问连接中的特定矩阵吗?
例如:

a = [1,2,3,4:5,6,7,8:9,0,1,2];
b = [3,2,1:4,2,1:5,6,7];
c = [a b];

我希望bc..访问矩阵

很明显,我无法通过c(2); 因为它指向 c 中的第二个元素。

听说可以在header中保存matrixa和matrix的信息。b

然后我可以在以后检索它。但它是如何工作的?

4

1 回答 1

0

您可以将ab数组的大小保存在单独的长度la向量中,以后可以将其用作索引范围以访问c. 这有点像您对标头的想法,除了标头存储为单独的变量la

% first matrix starts at index 1
la = 1;
a = [1,2,3,4:5,6,7,8:9,0,1,2]; 
% append number of elements in a
la = [la numel(a)];

b = [3,2,1:4,2,1:5,6,7];       
% append number of elements in b
la = [la numel(b)];

c = [a b];
% use cumsum to compute indexes of sub-matrices in c
la = cumsum(la);

% this is your matrix a
c(la(1):la(2)-1)-a
% and this is your matrix b
c(la(2):la(3)-1)-b
于 2012-11-21T10:37:32.797 回答