私は、数値の2次元配列の最小値の位置を見つけるスクリプトをMATLABに書き込もうとしています。私はこの配列には最小値が1つしかないことを確信しています。したがって、同じ最小値を持つ配列内に複数の場所を持つことは問題になりません。 Iは、アレイの最小値を見つけることができるが、30×30アレイでは、Iは最小値であることをどの行と列知りたい。min機能の説明に2D配列の最小値のインデックスをMATLABに表示させる方法は?
答えて
、最小値を取得し、あなたはすでに見つけ使うだけで、最小を計算した場合、インデックスを返すように見つけるために、分を兼ね備えています。
>> a=magic(30);
>> [r,c]=find(a==min(min(a)))
r =
1
c =
8
それとも、論理アドレッシングがあなたに真理値表を与えるために使用することができ、その場合には、あなたが代わりに論理配列でそれを定義したいことがあり、位置情報を、どのように使用するかによって異なります。
>> a=magic(30);
>> locn=(a==min(min(a)));
ルック。最小値とインデックスを返すことができます。 2次元配列の場合、2回呼び出すだけです。
A = rand(30); % some matrix
[minColVal, minColIdx] = min(A);
[minRowVal, minRowIdx] = min(minColVal);
minVal = minRowVal;
minValIdx = [minColIdx(minRowIdx), minRowIdx];
編集:B3のソリューション@おそらく、計算よりエレガントである(より速く、より少ない一時的なスペースを必要とする)
あなたは、ベクトルに行列を作り変えるMINを使用して、最小のインデックスを検索し、これを変換することができ行列インデックスへの線形インデックス:代替バージョンとして
>> x = randi(5, 5) x = 5 4 4 2 4 4 2 4 5 5 3 1 3 4 3 3 4 2 5 1 2 4 5 3 5 >> [value, index] = min(reshape(x, numel(x), 1)); >> [i,j] = ind2sub(size(x), index) i = 3 j = 2
+1優雅な解決策! – groovingandi
いくつかの文字を保存するには、reshape()の代わりにx(:)を使用することができます。 – zellus
@zellus:私に思い出させてくれてありがとう!私は、これをやる別の方法があると感じていました。 –
は、ベクターの一部でminまたはmaxを検索するには - Aがベクトルと「下界」と「は、UpperBound」である場合は、最大を見つける必要があり、その中のベクトルの境界がある(もしくは分)値は、このコマンドを使用 -
[Value,Index]=min(A(lowerBound:upperBound));
これはオフセットとして「下界」と同様minまたはmax値(下界間)及び(uppedBound)と 「インデックス」と「値」を返します。したがって、絶対インデックスを見つけるには、 "lowerBound"をインデックスに追加する必要があります。
インライン関数を使用する別の解決方法が機能します。
>> min_index = @(matrix) find(matrix == min(reshape(matrix, [1,numel(matrix)])));
>> a=magic(30);
>> [r,c]=min_index(a)
r =
1
c =
8
- 1. C言語。最大限の最小値を見つける方法。 (2D配列)
- 2. c# - LINQは、2Dジグザグ配列最小値を返し、インデックスを返します。
- 3. Java:2D配列の最小値と最大値
- 4. 2d配列の特定のインデックスのインデックスを調べる最も良い方法
- 5. 2D配列の最小値は斜めにですか? [Java]
- 6. 2D配列の数値の平均値、最小値、最大値の取得
- 7. 配列に最大値を表示する方法は?
- 8. 配列の配列2D最大値
- 9. 2D配列の要素のインデックスを取得する方法は?
- 10. 配列内の最小値のインデックス番号を見つける
- 11. 2D配列の行インデックスを取得する方法は?
- 12. 最大値を配列に表示する方法
- 13. matlabの8ビット2d配列
- 14. AngularJSでhtmlページに2d配列を表示する方法
- 15. オブジェクト配列のインデックスを要求し、値を表示する方法は?
- 16. 配列要素、表示のみ最小値
- 17. Chartjs:Y軸に最大値と最小値のみを表示する方法
- 18. phpに配列の2番目の値を表示させる方法
- 19. Python、最小値インデックスのインデックス
- 20. 1D配列インデックスを2D配列インデックスに変換する
- 21. アセンブラ(SPARC)のint配列の最小値と最大値の検索方法は?
- 22. ビットの2D配列の最大OR値
- 23. 配列の最小値と最大値
- 24. 配列の最大値と最小値
- 25. 配列の最小値/最大値
- 26. 配列の最大値と最小値
- 27. Ruby:最小配列要素のインデックスを見つける方法は?
- 28. 2d配列のすべての行から最大値のインデックスを取得する方法
- 29. Java:2D配列で最初のインデックスは何を表していますか?
- 30. 小(ish)2d配列のセグメンテーションフォルト
ありがとうございます!まさに私が必要なもの! –