通过Matlab中的“ ID”字段将具有相同字段名称的2个结构连接起来
我有2种结构:
s2010.name = 'fred';
s2010.wage = 8;
s2010(2).name = 'alice';
s2010(2).wage = 9;
s2010(3).name = 'frank';
s2010(3).wage = 10;
s2011.name = 'alice';
s2011.wage = 10;
s2011(2).name = 'frank';
s2011(2).wage = 11;
s2011(3).name = 'peter';
s2011(3).wage = 12;
我想通过它们的通用名称加入这两个结构,以获得以下内容:
s2years.name = 'alice';
s2years.wage2010 = 9;
s2years.wage2011 = 10;
s2years(2).name = 'frank';
s2years(2).wage2010 = 10;
s2years(2).wage2011 = 11;
请注意,fred和peter不会出现在结构中,我只想获得通用名称。我想将两年的工资保留在结果结构的不同字段中。
有什么办法吗?最好先将这两个集合转换为另一个对象(例如,数据集/表)?
似乎这个问题正在吸引。这是我的版本-
[name,ind2010,ind2011] = intersect({s2010.name},{s2011.name});
s2years = struct('name', name, ...
'wage2010', {s2010(ind2010).wage}, ...
'wage2011', {s2011(ind2011).wage});
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句