ある特定の数値のある行列の位置を検出
243 ビュー (過去 30 日間)
古いコメントを表示
例えば、列に1 3 5 7 2 3 5 9 4 6 11 4 12 2 13 などという数値がある中で、3 がある列の位置を検出するにはどうしたら良いですか?
0 件のコメント
採用された回答
Musashi Ito
2019 年 12 月 29 日
string 配列でテキスト表現に変換して 3 が含まれる列の位置が検出できそうですが、いかがでしょうか。
a = [1 3 5 7 2 3 5 9 4 6 11 4 12 2 13]
% string 配列に変換
a_str = string(a)
% contains 関数で 3 を含む列の位置を検出。 0,1 の論理インデックスとして取得できる。
idx_3 = contains(a_str,"3")
% 数値配列 a から 3 の列だけを抽出
a_3 = a(idx_3)
2 件のコメント
Kenta
2019 年 12 月 29 日
a=[1 3 5 7 2 3 5 9 4 6 11 4 12 2 13];
find(a==3)
こんにちは。こちらでもよさそうです。
Musashi Ito
2019 年 12 月 29 日
すみません、3 が含まれる数字(3,13 など) の列の位置を検出する場合は、最初のプログラムです。3 と等しい列の位置を検出する場合は、 Kenta さんがコメントしたプログラムです。
その他の回答 (1 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!