How to assign the value of the index to the index position?

2 Ansichten (letzte 30 Tage)
Paul Hinze
Paul Hinze am 6 Dez. 2021
Kommentiert: KSSV am 6 Dez. 2021
Hello dear Matlab Community
I have a row vector with the size of 1x40000. The vector consists of zeros and ones.
How can i convert the value ones to the value of their corresponding indices?
Here is a small example
v = [0 0 0 1 1 1 0 0 0]; % This vector ones at positions 4,5, and 6, and I want that the ones get changed by the values 4,5, and 6.
Thank you in advance,
Paul

Akzeptierte Antwort

KSSV
KSSV am 6 Dez. 2021
Bearbeitet: KSSV am 6 Dez. 2021
v = [0 0 0 1 1 1 0 0 0];
idx = find(v)
idx = 1×3
4 5 6
v(v==1) = find(v)
v = 1×9
0 0 0 4 5 6 0 0 0

Weitere Antworten (0)

Kategorien

Mehr zu Resizing and Reshaping Matrices finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by