我有一个8x18结构,每个cel包含一个事件发生的列向量。我想从单个数组中连接的一些字段中获取数据,而不必循环遍历它。我似乎找不到一种方法来在一个数组中垂直连接我感兴趣的字段。
作为一个例子,我创建了以下结构,每个单元格出现1到5次:
s(62).vector(8,18).heading.occurrences=[1;2;3];
for i=1:62
for j=1:8
for k=1:18
y=ceil(rand(1)*5);
s(i).vector(j,k).heading.occurrences=rand(y,1);
end
end
end
现在我想获得几个单元格中的所有出现,同时保持i恒定为瞬间i = 1。我试过的是:
%fields of interest
a=[1 26 45];
x=[s(1).vector(a).heading.occurrences];
然而,这会产生错误: 期望从大括号或点索引表达式输出一个,但有3个结果。
有没有人如何做到这一点而不必遍历整个结构?
答案 0 :(得分:1)
你走了:
ss=s(1).vector([1 26 45]);
h=[ss.heading];
cell2mat({h.occurrences}')