How to repeat an array based on another array

3 vues (au cours des 30 derniers jours)
Mohammed  Alshehri
Mohammed Alshehri le 15 Jan 2017
Greetings
I am trying to repeat an array based on another array e.g
Repeat element of array A based on the elements of array B
A= [ 1 2 3 4 ]
B= [ 2 3 1 2]
the resulted array should be ( first element of A that is 1 repeated 2 times which is the first element of array B and so on )
C= [ 1 1 2 2 2 3 4 4 ]

Réponse acceptée

the cyclist
the cyclist le 15 Jan 2017
Use repelem.
C = repelem(A,B)

Plus de réponses (1)

Stephen23
Stephen23 le 15 Jan 2017
For MATLAB before R2015a:
>> A = [1,2,3,4];
>> B = [2,3,1,2];
>> cell2mat(arrayfun(@(a,b)repmat(a,1,b),A,B,'uni',0))
ans =
1 1 2 2 2 3 4 4

Catégories

En savoir plus sur Matrices and Arrays dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by