我想要這個(數組=向量):如何在Matlab中創建載體中包含的結構域的投影?
array.Select(elem => elem.my_field).ToArray(); // C# + Linq
array map _.my_field // Scala, I believe
在普通的英語,我有載體。每個元素都是結構。每個結構都有字段(任何類型)。現在,我不想擁有這個,我想擁有「領域」的矢量。
例子:
所以,如果一開始我有姓名+年齡結構(參見下面的更新)的載體,我想創建投影,所以我最終隨着年齡的載體(年齡的順序) 。
我試過arrayfun
功能,但是這給了我錯誤:
error: cellfun: all values must be scalars when UniformOutput = true
我懷疑這是環境設置,但我不能切換的,因爲我的代碼將在陌生的環境中運行。
更新:我簡化了這個例子,我很抱歉 - 年齡是一個數字,但不時它是一對數字。所以在一般情況下,我必須假設它可以是任意長度的數字的向量(正如我在Matlab中理解的,一個數字是vector.length = 1)。
問題
如何讓這樣的 「組合拳」 投影在Matlab?
謝謝,我恐怕我簡化了我的問題太多了,因爲當我運行你的代碼時,它在我的情況下不起作用,因爲我不時只是數字(年齡)而不是數字(年齡)的數字)。如何處理這種情況? – greenoldman 2012-03-18 13:24:02
@macias:或者沿着不同的維度鏈接,或者創建一個單元格數組。看我的編輯。 – Jonas 2012-03-18 13:36:53
Yuppi !!! :-)它工作非常好,非常感謝你,並再次抱歉,這種簡化。 – greenoldman 2012-03-18 13:56:15