2014-05-08 269 views
0

我在MATLAB這樣的2x2x1 3D矩陣(VAL):Matlab的3D矩陣擴展

val(:,:,1) = 

    195 1386 
    27 10 

val(:,:,2) = 

    196 138 
    217 102 

,我想補充

val(:,:,3) = 

    196 138 
    217 102 
    217 102. 

像往常一樣,MATLAB提供了尺寸不匹配錯誤。在添加第3(3x2)矩陣之前,我應該怎樣做我的val矩陣?

+0

原始2x2x2矩陣應該發生什麼?如何填補缺失的行?由0s還是由NaNs? – yuk

+0

這種大小的矩陣根本不可能。每個切片必須具有相同的大小。也許一個2d矩陣的單元格是一個解決方案?你能指望什麼? – Daniel

+0

Okey如果它不可能與調整大小矩陣,我嘗試與單元格。 – ekrem777

回答

1

鑑於你原來的數組:

val(:,:,1) = [ 
    195 1386 
    27 10 ]; 
val(:,:,2) = [ 
    196 138 
    217 102 ]; 

您需要定義一個第三排。東西與NaN填充它,例如:

val(end+1,:,:) = NaN; 

這樣,尺寸將匹配當你添加新的切片:

val(:,:,3) = [ 
    196 138 
    217 102 
    217 102 ]; 
0

您的陣列不能有空白點。

對於更改尺寸,您應該考慮使用結構或單元格。