我仍然是一個新手,我很可能有一個關於矩陣數組的非常簡單的問題。我有n
行類似以下矩陣:Matlab填充矩陣數組
>> matrix
1 678 543
2 676 541
3 543 987
4 543 98
1 433 54
2 908 32
3 457 54
4 235 21
如何創建大小相等的矩陣陣列? 即array{i,1}
這是問題的複製: Array of Matrices in MATLAB ,可能很多人的。
對我而言,不清楚的是如何填充我的固定維矩陣數組。這樣
>>array{1,1}
1 678 543
2 676 541
3 543 987
4 543 98
這裏是我的嘗試:
找到所有在matrix
1
柱和那些的matrix
的size
。 創建cell
數組,看看每一行,如果它等於1
創建一個array{i,1}
零等於我想創建的矩陣的大小(在我的例子中爲4x3
)。
如果不等於1
則向陣列中插入矩陣的前四個值。
有沒有更快的方式來做到沒有循環?
[這個答案](http://stackoverflow.com/q/466972#467199)展示瞭如何另一個矩陣添加到您的3-d矩陣集合。您也可以使用[單元格陣列](http://www.mathworks.com/help/matlab/cell-arrays.html),但效率較低。 –
我不知道這是你喜歡什麼,但如果你喜歡array = matrix(1,:),它會將第一行中的所有元素複製到一個數組中。 – Akatosh
@EitanT:謝謝,但我想使用單元格數組,以便能夠更改代碼,以防萬一我有不同的維矩陣。 – seli