Azzera filtri
Azzera filtri

How can I generate a matrix with the same vector in all the lines?

43 visualizzazioni (ultimi 30 giorni)
Hello,
I'd like to generate a matrix with the same vector n times. What I can choose. For example:
A= [ 1 2 3; 1 2 3; 1 2 3; .....n times......; 1 2 3]
Thank You

Risposta accettata

Sean de Wolski
Sean de Wolski il 13 Nov 2012
A = repmat(1:3,n,1)
And to learn more:
doc repmat

Più risposte (3)

Evan
Evan il 13 Nov 2012
Modificato: Evan il 13 Nov 2012
Another option:
V = [1:3];
n = 4; % desired number of rows
M = ones(n,1) * V
Returns
M = [1 2 3
1 2 3
1 2 3
1 2 3]

Matt Fig
Matt Fig il 13 Nov 2012
I think this is what REPMAT probably is doing behind the scenes:
V = 1:3;
M = V(ones(1,4),:)

Walter Roberson
Walter Roberson il 13 Nov 2012
t = 1:3;
A = t(ones(n,1), :); %what repmat will do internally so faster than repmat
or
kron(1:3, ones(n,1)); %slower than repmat but kron() has some good uses

Categorie

Scopri di più su Multidimensional Arrays in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by