我有一個名爲AnalysisResults
的結構數組,它可能包含任何MATLAB數據類型,包括其他結構數組和單元數組。在分配數據到結構數組時避免評估
然後我有一個名爲IndexString
字符串,它是索引的StructArray
特定子場中,並且它可以包含多個索引到不同結構數組和單元陣列,例如: 'SubjectData(5).fmriSessions{2}.Stats'
或'SubjectData(14).TestResults.Test1.Factor{4}.Subfactor{3}'
。
然後我有一個名爲DataToBeEntered
的變量,它可以是任何MATLAB數據類型,通常是某種結構數組,矩陣或單元陣列。
使用eval
,很容易將數據輸入到現場或通過細胞索引IndexString
:
eval([ 'AnalysisResults.', IndexString, ' = DataToBeEntered;' ])
但有可能避免使用這個eval
? setfield
不適用於此。
謝謝:)
我認爲這是我正在尋找的。非常感謝你的出色答案! – nrz 2012-04-03 20:16:03