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.

 Akzeptierte Antwort

Azzi Abdelmalek
Azzi Abdelmalek am 15 Jun. 2016
Bearbeitet: Azzi Abdelmalek am 15 Jun. 2016

0 Stimmen

c(logical(index),:)=repmat(Q,sum(index),1)

2 Kommentare

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

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Matrices and Arrays finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by