2010-10-15 54 views
1

我已經構造一個簡單的Matlab的單元陣列:簡單的索引

d1 = 
1 
2 
3 
4 
5 

d2 = 
2 
3 
4 
5 
6 

d3 = 
3 
4 
5 
6 
7 

d = 
[5x1 double] 
[5x1 double] 
[5x1 double] 

clear d1 d2 d3; 

如何訪問單元陣列d內原有的陣列數據D1,D1被清除後?如果我做的:

>> d(1,:) 
ans = 
[5x1 double] 

但我想要做的是發出以下命令:

d(what indexing goes here?) 

,並使其返回:

1 2 3 4 5 
+2

這裏有一個相關的問題,你可能會感興趣:[如何拼接和索引不同的單元格和數組在MATLAB中?](http://stackoverflow.com/questions/2662964/how-do-concatenation-and- indexing-different-for-cells-and-arrays-in-matlab) – gnovice 2010-10-15 18:17:11

回答

5

沒關係,我想通了:

d{1,1,:} 

返回原來的d1信息。

+9

'd {1}'可能會工作得很好。 'd'是一個1x5單元陣列,所以'd {n}'是其中一個單元的內容。 ('d(n)'是一個單獨的單元格,又名1x1單元格數組,而不是你想要得到的數組數組)。你甚至可以使用多個下標:'d {2}(3)'得到第二個單元格中的數組。 – aschepler 2010-10-15 18:02:28

+0

完美!!!!感謝aschepler – ggkmath 2010-10-15 20:48:36