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

2 visualizzazioni (ultimi 30 giorni)
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

Risposta accettata

KSSV
KSSV il 6 Dic 2021
Modificato: KSSV il 6 Dic 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

Più risposte (0)

Categorie

Scopri di più su Resizing and Reshaping Matrices in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by