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

2 ビュー (過去 30 日間)
Paul Hinze
Paul Hinze 2021 年 12 月 6 日
コメント済み: KSSV 2021 年 12 月 6 日
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

採用された回答

KSSV
KSSV 2021 年 12 月 6 日
編集済み: KSSV 2021 年 12 月 6 日
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
  2 件のコメント
Paul Hinze
Paul Hinze 2021 年 12 月 6 日
Perfect, thank you
KSSV
KSSV 2021 年 12 月 6 日
Thanks is accepting the answer .. :)

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeResizing and Reshaping Matrices についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by