2012-10-14 27 views
3

想象我有一個單元陣列中八度「列出的名單」:八度:適用於給定的映射到單元陣列

octave:6> a = {[1], [3,4], [5,6,7], [8,9,10,11]} 
a = 
{ 
    [1,1] = 1 
    [1,2] = 

    3 4 

    [1,3] = 

    5 6 7 

    [1,4] = 

     8 9 10 11 

} 

現在我想從每個嵌套行和索引中提取給定元素他們每個人都列在一個列表中。例如。 [1,2,2,3]意味着回報[1,4,6,10]。

什麼是最好的Octave-ish方式來做到這一點?我知道如何用循環做到這一點,但看起來很難看......

回答

2

看來我已經找到了對我來說很好的解決方案。我意識到cellfun()需要一些參數,所以我可以輕鬆地執行元素智能映射。

octave:31> cellfun(@(x,y) x(y), a, {1,2,2,3}) 
ans = 

    1 4 6 10 
+0

在這種情況下請隨時接受您的解決方案 –