如何对具有不均匀截面的矢量进行矢量化循环?

时间:2019-06-03 11:29:22

标签: matlab vectorization

我正在尝试向量化以下循环:

a = [1 3 4 8];
b = [3 5 9 10];
n = [];
for k=1:numel(a)
n = [n a(k):b(k)];
end

向量ab的长度相同,但实际上它们很大。我尝试了arrayfun

n = arrayfun(@(x)x(1:numel(a)),a:b);

但这会导致以下错误:

  

索引超出矩阵尺寸

编辑:

刚发现我的错误:

  

n = arrayfun(@(x,y)[x:y],a,b,'UniformOutput',0);

运行。谢谢大家的支持。

0 个答案:

没有答案