标签: arrays matlab loops
我想要一个像这样的数组: 第二列,值从1到1000。 第一列,前1000个值为零,第二列为1000,直到1000。
[ 0 1 0 2 ... 0 1000 1 1 1 2 ... 1 1000 1000 1 1000 2 ... 1000 1000]
我尝试过的操作不会增加第一列的值。
z = ones (10000, 2); for i=1:1000 z(:,2)= (1:1:1000); end
答案 0 :(得分:1)
您可以以一种聪明的方式来完成它:),而无需循环。
尝试:
firstColumn = repmat(0:1000,1000,1); firstColumn = firstColumn(:); % Convert to a single column vector secondColumn = repmat([1:1000]', 1001, 1); M = [firstColumn secondColumn];
如果您想理解上面的代码,请阅读repmat和column, :。