範囲を指定して最大値を求める方法
古いコメントを表示
2列の行列から、1列目において範囲を指定し、2列目の最大値とその時の1列目を求めたいのです。
例:
1 13
2 115
3 14
4 21
5 42
6 63
7 413
8 100
9 734
上のような2列9行の行列から、1列目で2から7までの範囲を指定し、"最大値413, その時の1列目は7"となるように求めたいです。
3 件のコメント
Atsushi Ueno
2023 年 1 月 22 日
1列目の値は単調増加ですか?
>1列目で2から7までの範囲を指定し
この文が如何様にも取れます。
匡彬 高橋
2023 年 1 月 22 日
Atsushi Ueno
2023 年 1 月 23 日
>一列目は単調増加ですが、行番号とは異なります
採用された回答
その他の回答 (1 件)
まずはデータを作成します
data = [1 13
2 115
3 14
4 21
5 42
6 63
7 413
8 100
9 734];
もし1列目が行番号なら以下のようにできます
data2 = data(2:7,2);
max_num = max(data2);
idx = data(:,2) == max_num
fprintf('2~7行目での最大値は%i(%i行目)',data(idx,2),data(idx,1))
カテゴリ
ヘルプ センター および File Exchange で 動的システム モデル についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!