1
細胞的我寫在哪裏存儲3點矩陣(a
,b
,c
)的小區(D
)的內部的簡單的matlab測試代碼。然後我創建了一個索引向量(idx
),所以我只能選擇出第一個和第三個矩陣。該代碼介紹如下:串聯矩陣出在Matlab
% Begin code %
a = [0 1; 2 3]; % matrix a
b = [4 5]; % matrix b
c = [5 6; 7 8; 9 10]; % matrix c
D = cell(3,1); % Initialize cell D
D{1,1} = a; D{2,1} = b; D{3,1} = c; % Copy matrices inside cell
idx = [1 3]'; % Indexes vector
D = D(idx); % select matrix a and c from D
% End code (Solution should start from here...) %
如果我顯示D{:,1}
我所得到的是
ans =
0 1
2 3
ans =
5 6
7 8
9 10
我的目標是連接2點矩陣(A,B)從細胞d的一聰明的方式(使用一些特定的內置matlab函數),並可能避免for循環; 這就是我想要的東西:
E = [0 1
2 3
5 6
7 8
9 10];
的解決方案應該是最優雅的可能,但我願意接受任何建議。唯一的約束應該不是改變我提出的代碼,因爲解決方案應該是我寫的內容的延續。
注意:因爲我所要做的應該矩陣的不確定數量的工作(在這個例子中,我只有3個,但可能是還1000),像E = [D{1,:};D{2,1}]
解決方案是不能接受的。
Puoi anche usare'vertcat(d {:})':-) –