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

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

Réponse acceptée

Kenta
Kenta le 21 Jan 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 commentaires
Kenta
Kenta le 21 Jan 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 le 21 Jan 2020
ありがとうございました。

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!