2013-07-02 147 views
1

我試圖做到這一點與矩陣:在Matlab中爲單元格數組分配一行?

>> line_params{1,:} = {numberPatterns{i}, lw, iw}; 
The right hand side of this assignment has too few values to satisfy the left hand side. 

但得到上述錯誤。

類型是以下:

>> class(line_params) 
ans = 
cell 

>> size(line_params) 
ans = 
    21  3 

>> a={numberPatterns{i}, lw, iw}; 

>> class(a) 
ans = 
cell 

>> size(a) 
ans = 
    1  3 

回答

3

變化

line_params{1,:} = {numberPatterns{i}, lw, iw} 

line_params(1,:) = {numberPatterns{i}, lw, iw} 

(正常括號)。

如果使用花括號({}),則引用單個元素。也就是說,

line_params{1,:} 

將在細胞line_params它的第一行中返回一個逗號分隔的元素列表。您不能將單元格數組(單個項目)分配給以逗號分隔的列表(多個項目)。

如果使用括號(()),則引用單元格條目,即將返回單元格數組。而你可以分配一個單元格陣列(單個項目)到另一個單元格陣列(單個項目) - 只要它們具有相同的尺寸當然。

相關問題