2011-11-23 84 views
1

MATLAB保存迭代地为结构 1)运行的功能 2)每个输出[vectorA,vectorB],它具有不同的尺寸的载体时,应保存在每个迭代i在结构MATLAB保存迭代地为结构

但这种语法时才doesn't工作:

for i=1:n 
    [vectorA, vectorB] = anyfunction(i) 
    myStruct(i).vectorA = {[vectorA]}; 
    myStruct(i).vectorB = {[vectorB]}; 
end 
+2

你能后的语法错误MES圣人,还是说出你的期望? – cyborg

+1

@Cyborg:感谢您的编辑! Synatax的作品,它只是一个读出问题:最好不要在矢量周围放置{[]}。就这样离开他们。谢谢 – alex

+0

@alex:我添加了一个答案,但后来认识到你的语法实际上有效,无论有没有{[]},所以我删除了它。那么问题是什么?告诉我们你得到了什么错误信息。 – yuk

回答

1

简单:

n=5; 
[email protected](x) eig(magic(x)); 

for i=1:n 
    [vectorA, vectorB] = anyfunction(i); 
    myStruct(i).vectorA = vectorA; 
    myStruct(i).vectorB = vectorB; 
end 

myStruct = 

1x5 struct array with fields: 
    vectorA 
    vectorB