我正在尝试在Matlab中创建已创建和填充的数组的精确副本。我知道我可以使用循环来复制所有字段,但是不是更方便吗?
创建的数组是一个结构数组。到目前为止我的代码如下。
提前感谢您的帮助。
a = 1;
window = eye_record.x_pos_measured_deg; %zeros(length(eye_record));
disT = .50;
for i=1:length(eye_record)
%window(i) = eye_record(i).x_pos_measured_deg;
dis = (max(window(a:i)) - min(window(a:i)));
if (dis <= disT)
eye_record(i).xy_movement_EMD = 1;
fixation_counter = fixation_counter + 1;
else
eye_record(i).xy_movement_EMD = 2;
a = i;
saccade_counter = saccade_counter + 1;
end
end
答案 0 :(得分:2)
如果A
是您已经创建的数组,则可以通过将其分配给新变量来创建精确副本
>> B = A;
例如
>> A(1) = struct('Name', 'A');
>> A(2) = struct('Name', 'B');
>> B = A
B =
1x2 struct array with fields:
Name
>> B(1).Name
ans =
A
>> B(2).Name
ans =
B