嵌套For循环以构建结构

时间:2015-11-26 12:05:06

标签: matlab

我想使用嵌套for循环构建嵌套结构。我想要的结构首先根据方向(8个方向之一)分割,然后每个方向将有两个字段。我尝试过类似的东西:

for i=1:8
    data(i).direction=i;
    for j=1:numTrials
         data(i).direction(j).sp_time=spikeTimes
         data(i).direction(j).sm_time=smoothedTimes
    end
end

我收到错误提示“对非结构数组对象的字段分配”。我需要使用嵌套for循环,因为在for循环中发生了其他数据操作,以便为spikeTimes和smoothedTimes提供值。我已经阅读了创建结构的文档,但无法弄清楚如何在for循环中构造这个嵌套结构。

1 个答案:

答案 0 :(得分:3)

这个怎么样:

for i=1:8
    % initialize to empty struct, rather than number
    data(i).direction = struct();
    for j=1:numTrials
         data(i).direction(j).sp_time=spikeTimes
         data(i).direction(j).sm_time=smoothedTimes
    end
end