Combining two arrays by pointwise repeating the elements of A(i), B(i) times.

1 vue (au cours des 30 derniers jours)
Michel
Michel le 9 Oct 2014
Modifié(e) : Matt J le 9 Oct 2014
I want to combine two vectors (A and B) with the same length into a new vector (C) with length sum of B.
e.g.
A = [1,2,3,4]; B = [2,1,2,3];
C = [1,1,2,3,3,4,4,4]
Thus repeating the elements of A, B times.

Réponses (2)

Pierre Benoit
Pierre Benoit le 9 Oct 2014

Matt J
Matt J le 9 Oct 2014
Modifié(e) : Matt J le 9 Oct 2014
idx(cumsum([1,B]))=ones(length(A)+1,1);
C=A(cumsum(idx(1:end-1)))

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