2013-07-09 71 views
1

我正在通過互聯網分析一些數據。結構Data有幾個元素。我對Data.Value感興趣Data(1,1).Value是雙向量[56,1]。轉移到第二個結構單元格Data(1,2).Value是一個雙向量[46,1]。將可變長度的Struct元素傳遞到矩陣Matlab

寫一個for循環得到整個Data(1,i).Value從1到500,當它來到的第二個元素,我收到以下錯誤返回:Subscripted assignment dimension mismatch.

雖然我理解的錯誤,我不能證明它,因此我無法解決問題。

我也試圖預先定義一個可變大小的矩陣來克服這個問題,而沒有結果。

任何人都可以想到的任何解決方案,以獲得整個Data(1,:).Value

感謝很多貢獻的傢伙。

+1

您可以顯示部分你想要解釋的代碼是什麼? – innoSPG

回答

2

您可以使用

vertcat(Data(1,:).Value) 

通過連接Data(1,1).ValueData(1,2).Value創造了一個列向量,... 或者,您可以使用通用連接符

cat(1, Data(1,:).Value) 
+0

非常感謝有興趣的人。偉大的命令知道。在應用'vertcat(Data(1,:)。Value)'的時候,我可以將所有的結構元素集合到一個單獨的向量中,當將結構元素'Data(1,i).Value'分配給一個矩陣,由於不同的結構元素具有不同的長度,我仍然得到相同的錯誤。難道我想在Matlab下不可能實現的是什麼? – QEx