【发布时间】:2015-05-15 05:39:38
【问题描述】:
我想合并结构字段以防我进行部分计算,以便稍后填充整个结构字段单元格。
将结果根据索引放入单元格中,如下所示:
for i=3:4;
results1.index{i}=i;
results1.sqr{i}=i*i;
end
for i=1;
results2.index{i}=i;
results2.sqr{i}=i*i;
end
分别给予:
results1 =
index: {[] [] [3] [4]}
sqr: {[] [] [9] [16]}
results2 =
index: {[1]}
sqr: {[1]}
有没有办法合并得到的结构以获得
allresults.index={[1] [] [3] [4]}
allresults.sqr={[1] [] [9] [16]}
我可以避免结果重叠,因此在值冲突的情况下不解决冲突或覆盖(例如,没有一个单元格为空)就可以了。 请注意,在较大的数据集中,单元格不仅限于标量,还可能包含单元格或其他类型。
【问题讨论】:
-
您是否总是事先知道单元格所在位置的索引?例如,您是否知道
results1将填充单元格3 和4,而results2将填充单元格1?如果没有这些信息,如果您将两个字段的内容用于两个结构,那么如何将单元格连接在一起会很模糊。 -
是的,正如我提到的,结果是根据索引放入单元格中的,因此 3:4 上的循环将分别填充单元格 3 和 4。这就是为什么
results1有两个空的前导单元格。
标签: matlab merge structure field