我正在尝试矢量化或使以下代码更有效:
[Y,k] = min(abs(dxcp-X));
X = dxcp(k);
代码的目的是将值 X 与 x (dxcp) 的可接受值数组进行比较,并将 X 分配给数组 dxcp 中最接近的值。例如:
X 等于 9,dxcp 数组为:[ 1, 2, 3, 6, 10, 20]。第二行会将 X 更改为等于 10。
我正在尝试更改我的脚本,以便可以将 X 作为数字数组输入,并且想知道使上述代码适用于这种情况的最有效方法是什么。当然我可以使用:
for i = 1:numel(X)
[Y,k] = min(abs(dxcp-X(i)));
X(i) = dxcp(k);
end
但我有一种感觉,必须有一种方法可以更有效地完成这项工作。干杯,nzbru。