Hi,
I need to replace multiple rows of a matrix by one array. For example,
c=[1 3 5 2 0]
5 2 9 1 4
2 1 0 6 7
1 2 3 4 5]
index=[0
1
0
1];
Q=[9 8 6 2 1]
Output should look this this:
c=[1 3 5 2 0]
9 8 6 2 1
2 1 0 6 7
9 8 6 2 1]
Any help is appreciated. Thanks in advance.

 Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 15 Juin 2016
Modifié(e) : Azzi Abdelmalek le 15 Juin 2016
c(logical(index),:)=repmat(Q,sum(index),1)

2 commentaires

Damith
Damith le 15 Juin 2016
Thanks.
nvmnghia
nvmnghia le 3 Mai 2020
Does repmat actually repeat Q sum(index) times in this case?

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by