% method 1 - for loop
numx = rand(10, 9);
numy = rand(10, 9);
out = struct('numx', [], 'numy', []);
for i = 1:10
for j = 1:9
out(i,j).numx = numx(i,j);
out(i,j).numx = numy(i,j);
end
end
out(5,6).numx
% method 2 - arrayfun
numx = rand(10, 9);
numy = rand(10, 9);
out = arrayfun(@(x, y) struct('numx', x, 'numy', y), numx, numy);
out(5,6).numx
※ 引述《Fugacious (Fugacious)》之铭言:
: 目前有两个变量空间,内各自有9*10的值
: 假设名字为 numx numy
: 想要做一个阵列Newstruct把 numx 跟 numy 存进去
: 本来是想用for一个一个存
: 使得Newstruct(5,6).numx = numx(5,6)
: 但是结果不如预期
: for i = 1:10
: for j = 1:9
: Newstruct.numx(j,i) = numx(j,i);
: end
: end
: 出来之后的 Newstruct 变成一个有numx numy的东西
: 如果输入Newstruct(5,6).numx
: 就会显示超界
: 请问我要怎么修改程式呢?