Matlab结构向量结构转换向量

问题描述:

如何将数组x(1:N),y(1:N)转换为具有字段.x和.y的结构S(1:N)没有for-loop? 我可以很容易地转换X,Y成阵列的一个结构:Matlab结构向量结构转换向量

S.x = x; S.y = y; 

由于我需要与各个组(XI,YI)的工作,如何可以将其转换为结构的阵列? 我已经找到了解决方案通过表类型要做到这一点,但我不喜欢这样的解决方案:

S = table2struct(struct2table(S)) 

你刚才应该直接后首先把xy细胞阵列使用struct。当传递到struct的值是单元阵列时,则会生成一个多维元素struct,其维数与该单元阵列的维数相同。

S = struct('x', num2cell(x), 'y', num2cell(y)); 
+0

谢谢,这需要大约0.2秒来创建一个结构向量从两个1000000x1向量与0.7秒table2struct-struct2table方法。 – Sairus