矢量均匀分布的随机数在一个foor循环,Matlab

时间:2017-05-16 14:49:43

标签: matlab for-loop

有人可以帮助我如何在for循环中创建一个均匀分布的随机数的向量 u ,这样 u 将具有不同的大小for循环中的每次迭代。我的意思是这样的:

b=[100, 200, ....]; % 1x10 vector

for j=1:10

    u(j)=rand(b(j),100);

end

我在Matlab中得到的错误是:订阅的分配维度不匹配。

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以在没有for-loop并使用arrayfun的情况下执行此操作。

b = 100:100:400;
u = arrayfun(@(x) rand(x, 100), b, 'UniformOutput', false);