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

 Akzeptierte Antwort

Roger Stafford
Roger Stafford am 8 Feb. 2015

1 Stimme

y = repmat(x,10,1);
y(:,1:2) = y(:,1:2) + repmat(5*floor((0:29).'/3),1,2);

3 Kommentare

Ace_ventura
Ace_ventura am 8 Feb. 2015
It shows an error in marix dimensions
Roger Stafford
Roger Stafford am 8 Feb. 2015
It worked for me. Did you start with x as a 3-by-4 array?
Ace_ventura
Ace_ventura am 8 Feb. 2015
yeah i got it..A typing error on my part.Thanks a lot Roger _

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Operators and Elementary Operations finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by