How do I repeat a row a certain number of times?

I have a vector of numbers. i.e [ 1 2 3 4] I want to repeat that specific vector a certain number of times, to make a matrix of x rows. It's just the first row repeating itself x times. So it would be [ 1 2 3 4; 1 2 3 4; 1 2 3 4] If x was 3. However I cannot use repmat nor use an iteration

1 Kommentar

jgg
jgg am 6 Apr. 2016
Bearbeitet: jgg am 6 Apr. 2016
Why can't you use those functions? Is this homework? The trick is pretty easy:
v = [1:5];
v = v(ones(1,1000),:);
where x = 1000 here.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

sam0037
sam0037 am 11 Apr. 2016

2 Stimmen

Hi,
This can be also done using the REPELEM command as follows:
v = [1:4];
repelem(v,[3],[1])
Follow the link below to know more about this function:

2 Kommentare

Madhav Malhotra
Madhav Malhotra am 20 Apr. 2021
Bearbeitet: Madhav Malhotra am 20 Apr. 2021
@sam0037Could you please explain how the second and third arguments in your function work?
The documentation doesn't provide an example of what happens when you put one-dimensional vectors as arguments to repelem.
They don't have to be vectors, simple ints accomplish the same goal. Not sure why they are bracketed in that example.

Melden Sie sich an, um zu kommentieren.

Kategorien

Gefragt:

am 6 Apr. 2016

Kommentiert:

am 26 Jul. 2023

Community Treasure Hunt

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

Start Hunting!

Translated by