How to efficiently create a vector?

I want create a matrix such that
A matrix mat_B = [ 1 2 3 4 5; 6 7 8 9 10; 11 12 13 14 15; 16 17 18 19 20].
Is there any other code that more efficient than the code I make below?
for i = 1:5 if i ==1 a (i,:)=1:4; else a (i,:) = (a (i-1,:))+4; end end

 采纳的回答

I would use the reshape function to avoid the explicit loops:
v = 1:20;
mat_B = reshape(v, 5, [])';

2 个评论

Yes, I agree with you, this indeed a more compact solution. Thanks

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Logical 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by