How to generate the following matrix

2 views (last 30 days)
I have x=[1 2 1 1; 4 5 1 1 ; 7 8 1 1]. I want a matrix in which this matrix repeats itself 10 times using repmat function and with each repetition the first and second columns of the basic matrix ,that is x, increase by 5. Thus my fourth, fifth and sixth row (first repetition) will be [6 7 1 1 ; 9 10 1 1 ; 12 13 1 1] .In second repetition ,that is 7th,8th and 9th row, it would be [11 12 1 1 ; 14 15 1 1 ; 17 18 1 1 ] and so on till 10 repetitions are performed

Accepted Answer

Roger Stafford
Roger Stafford on 8 Feb 2015
y = repmat(x,10,1);
y(:,1:2) = y(:,1:2) + repmat(5*floor((0:29).'/3),1,2);
  3 Comments
Roger Stafford
Roger Stafford on 8 Feb 2015
It worked for me. Did you start with x as a 3-by-4 array?
Ace_ventura
Ace_ventura on 8 Feb 2015
yeah i got it..A typing error on my part.Thanks a lot Roger _

Sign in to comment.

More Answers (0)

Categories

Find more on Resizing and Reshaping Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!