単一のインデックスによる、複数のインデックス付け

17 visualizzazioni (ultimi 30 giorni)
Jun
Jun il 21 Gen 2020
Commentato: Jun il 21 Gen 2020
配列の中から任意の複数の要素へアクセスしたいと思っています。
A = [12 36 91; 45 29 48; 33 25 11]
A(6) = 25
ですが、例えば、A(1)とA(6)、A(9)へアクセスしたいときは、どのようにしたら良いでしょうか。
実際はかなり多くの要素を持つ配列から、規則性なく複数の要素へアクセスしたいと思っています。
基本的な質問で恐縮ですが、お教えください。

Risposta accettata

Kenta
Kenta il 21 Gen 2020
A = [12 36 91; 45 29 48; 33 25 11];
A(3)
A(7)
A(9)
idx=[3 7 9];
A(idx)
idx2=find(mod(A,3)==0);
A(idx2)
こんにちは、かっこの中に、指定する値をもつ行列を入力すればできます。
今後は複数の要素にアクセスしたいとのことですが、例えば、Aの中で3の倍数のみを取り出したい場合、
下の2行になります。
  6 Commenti
Kenta
Kenta il 21 Gen 2020
A = [12 36 91; 45 29 48; 33 25 11]
sub=[1 2;
2 2;
3 1];
A(sub2ind(size(A),sub(:,1), sub(:,2)))
これでできます!
Jun
Jun il 21 Gen 2020
ありがとうございました。

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Matrix Indexing 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!