我有一个大型结构阵列。
我想对处理此数组的函数执行灵敏度分析。
所以,假设我的结构数组有名字's',10,000个元素,字段名'x'和'y'。
我想做以下事情:
xs = [s(:).x];
xs = xs + 5*randn(size(xs));
s(:).x = xs;
可悲的是,最后一步是无效的matlab。有什么想法吗?希望避免循环。
答案 0 :(得分:0)
From this answer并在玩完交易之后。我想我有你想要的东西,但它需要使用num2cell
将xs转换为单元格数组:
xs_cell = num2cell(xs); % convert matrix to cell array.
[S(:).X]=xs_cell{:}; % update the values in the field X