Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

min

説明

M = min(A) は配列の最小要素を返します。

  • A がベクトルの場合、min(A)A の最小値を返します。

  • A が行列の場合、min(A)A の各列の最小値を含む行ベクトルになります。

  • A が多次元配列の場合、min(A) は、サイズが 1 でない A の最初の次元に沿って演算します。要素はベクトルとして扱われます。この次元のサイズは 1 になりますが、他のすべての次元のサイズは変化しません。A が、最初の次元が 0 である空の配列の場合、min(A) は、A と同じサイズの空の配列を返します。

M = min(A,[],dim) は次元 dim に沿った最小要素を返します。たとえば、A が行列の場合、min(A,[],2) は各行の最小値をもつ列ベクトルになります。

M = min(A,[],nanflag) は、計算に NaN 値を含めるか省略するかを指定します。たとえば、min(A,[],'includenan') では A 内のすべての NaN 値が含まれますが、min(A,[],'omitnan') ではこれらが無視されます。

M = min(A,[],dim,nanflag) は、nanflag オプションの使用時に動作する対象の次元も指定します。

また、[M,I] = min(___) は、前述の任意の構文で A の最小値に対応する操作次元へのインデックスを返します。

M = min(A,[],'all') は、A のすべての要素の最小値を検索します。この構文は、MATLAB® R2018b 以降で有効です。

M = min(A,[],vecdim) は、ベクトル vecdim で指定されている次元の最小値を計算します。たとえば、A が行列の場合、行列内の各要素は次元 1 と次元 2 で定義された配列スライスに含まれるため、min(A,[],[1 2])A のすべての要素の最小値を計算します。

M = min(A,[],'all',nanflag) は、nanflag オプションの使用時に A のすべての要素の最小値を計算します。

M = min(A,[],vecdim,nanflag) は、nanflag オプションの使用時に動作の対象となる、複数の次元を指定します。

[M,I] = min(A,[],'all',___) は、'all' を指定した場合の A の最小値に対応する A への線形インデックスを返します。

[M,I] = min(A,[],___,'linear')A の最小値に対応する A への線形インデックスを返します。

C = min(A,B) は、A または B から得た最小要素からなる配列を返します。

C = min(A,B,nanflag) は、NaN 値を処理する方法も指定します。

___ = min(___,'ComparisonMethod',method) は、前述のいずれかの構文で要素を比較する方法をオプションで指定します。たとえば、ベクトル A = [-1 2 -9] について、構文 min(A,[],'ComparisonMethod','abs') とすると、A の要素の絶対値が比較されて -1 が返されます。

すべて折りたたむ

ベクトルを作成してその最小要素を計算します。

A = [23 42 37 15 52];
M = min(A)
M = 15

複素数ベクトルを作成してその最小要素、つまり大きさが最小の要素を計算します。

A = [-2+2i 4+i -1-3i];
min(A)
ans = -2.0000 + 2.0000i

行列を作成し、その各列にある最小要素を計算します。

A = [2 8 4; 7 3 9]
A = 2×3

     2     8     4
     7     3     9

M = min(A)
M = 1×3

     2     3     4

行列を作成し、その各行にある最小要素を計算します。

A = [1.7 1.2 1.5; 1.3 1.6 1.99]
A = 2×3

    1.7000    1.2000    1.5000
    1.3000    1.6000    1.9900

M = min(A,[],2)
M = 2×1

    1.2000
    1.3000

ベクトルを作成し、その最小値を NaN 値を除いて計算します。

A = [1.77 -0.005 3.98 -2.95 NaN 0.34 NaN 0.19];
M = min(A,[],'omitnan')
M = -2.9500

'omitnan' が既定のオプションであるため、min(A) でも同じ結果が得られます。

NaN を返すには 'includenan' フラグを使用します。

M = min(A,[],'includenan')
M = NaN

行列 A を作成し、各列の最小要素とその A における行インデックスを計算します。

A = [1 9 -2; 8 4 -5]
A = 2×3

     1     9    -2
     8     4    -5

[M,I] = min(A)
M = 1×3

     1     4    -5

I = 1×3

     1     2     2

3 次元配列を作成し、データの各ページ (行と列) の最小値を計算します。

A(:,:,1) = [2 4; -2 1];
A(:,:,2) = [9 13; -5 7];
A(:,:,3) = [4 4; 8 -3];
M1 = min(A,[],[1 2])
M1 = 
M1(:,:,1) =

    -2


M1(:,:,2) =

    -5


M1(:,:,3) =

    -3

R2018b 以降、配列のすべての次元の最小値を計算するには、ベクトルの次元引数で各次元を指定するか、'all' オプションを使用します。

M2 = min(A,[],[1 2 3])
M2 = -5
Mall = min(A,[],'all')
Mall = -5

行列 A を作成し、行列 M の各行の最小値を返します。'linear' オプションを使用して、M = A(I) となる線形インデックス I も返します。

A = [1 2 3; 4 5 6]
A = 2×3

     1     2     3
     4     5     6

[M,I] = min(A,[],2,'linear')
M = 2×1

     1
     4

I = 2×1

     1
     2

minvals = A(I)
minvals = 2×1

     1
     4

行列を作成し、その各要素とスカラー値を比較して小さい方の値を返します。

A = [1 7 3; 6 2 9]
A = 2×3

     1     7     3
     6     2     9

B = 5;
C = min(A,B)
C = 2×3

     1     5     3
     5     2     5

入力引数

すべて折りたたむ

入力配列。スカラー、ベクトル、行列または多次元配列として指定します。

  • A が複素数の場合、min(A) は大きさが最小の複素数を返します。大きさが等しい場合、min(A) は最小の大きさと最小の位相角をもつ値を返します。

  • A がスカラーの場合、min(A)A を返します。

  • A が 0 行 0 列の空の配列の場合、min(A) も同じく空です。

Acategorical 型の場合、順序配列でなければなりません。

複素数のサポート: あり

演算の対象の次元。正の整数のスカラーとして指定します。次元を指定しない場合、既定値はサイズが 1 より大きい最初の配列次元です。

次元 dim は、長さが 1 に縮小した次元を示します。size(M,dim)1 ですが、size(A,dim)0 でない限り、他のすべての次元のサイズは変化しません。size(A,dim)0 である場合、min(A,dim)A と同じサイズの空の配列を返します。

mn 列の入力行列 A を考えます。

  • min(A,[],1) は、A の各列における要素の最小値を計算し、1n 列の行ベクトルを返します。

    min(A,[],1) column-wise operation

  • min(A,[],2) は、A の各行における要素の最小値を計算し、m1 列の列ベクトルを返します。

    min(A,[],2) row-wise operation

次元のベクトル。正の整数のベクトルとして指定します。各要素は入力配列の次元を表します。指定された操作次元の出力の長さは 1 で、その他は同じままです。

2×3×3 の入力配列 A を考えます。この場合、min(A,[],[1 2]) は 1×1×3 配列を返します。この配列の要素は、A のページごとに計算された最小値です。

Mapping of a 2-by-3-by-3 input array to a 1-by-1-by-3 output array

追加の入力配列。スカラー、ベクトル、行列または多次元配列として指定します。入力 AB は、同じサイズであるか、互換性のあるサイズでなければなりません (たとえば、AMN 列の行列で、B がスカラーまたは 1N 列の行ベクトル)。詳細については、基本的な演算で互換性のある配列サイズを参照してください。

  • AB は、一方が double 型でないかぎり、同じデータ型でなければなりません。どちらかが double 型の場合、もう一方の配列のデータ型は singleduration または任意の整数型になります。

  • AB が順序 categorical 配列である場合は、これらは同じ順序の同じカテゴリ セットでなければなりません。

複素数のサポート: あり

NaN の条件。次の値のいずれかとして指定します。

  • 'omitnan' — 入力にあるすべての NaN 値を無視します。すべての要素が NaN の場合、min は 1 つ目を返します。

  • 'includenan' — 入力にある NaN 値を計算に含めます。

datetime 配列では、'omitnat' を使用して NaT 値を省略し、あるいは 'includenat' を使用して同値を含めることができます。

また、categorical 配列では、'omitundefined' を使用して未定義の値を省略し、あるいは 'includeundefined' を使用して未定義の値を含めることができます。

数値入力の比較方法。次の値のいずれかとして指定します。

  • 'auto' — 数値入力配列 A の要素を、A が実数の場合は real(A)A が複素数の場合は abs(A) により比較します。

  • 'real' — 数値入力配列 A の要素を、A が実数でも複素数でも real(A) により比較します。A の要素の実数部が等しい場合、imag(A) を使用して同順位のものを並べ替えます。

  • 'abs' — 数値入力配列 A の要素を、A が実数でも複素数でも abs(A) により比較します。A の要素の大きさが等しい場合、区間 (-π,π] で angle(A) を使用して同順位のものを並べ替えます。

出力引数

すべて折りたたむ

最小値。スカラー、ベクトル、行列または多次元配列として返されます。size(M,dim)1 ですが、size(A,dim)0 でない限り、他のすべての次元のサイズは A の対応する次元のサイズと一致します。size(A,dim)0 である場合、MA と同じサイズの空の配列です。

インデックス。スカラー、ベクトル、行列または多次元配列として返されます。I は最初の出力と同じサイズになります。

'linear' が指定されていない場合、I は操作次元へのインデックスです。'linear' が指定される場合、I には最小値に対応する A の線形インデックスが含まれます。

最小要素が複数回発生する場合、I には最初に発生した値に対するインデックスが含まれます。

A または B からの最小要素。スカラー、ベクトル、行列または多次元配列として返されます。C のサイズは AB の次元の暗黙的な拡張によって決定されます。詳細については、基本的な演算で互換性のある配列サイズを参照してください。

C のデータ型は、A および B のデータ型によって次のように異なります。

  • AB のデータ型が同じ場合、C のデータ型は A および B と同じです。

  • A または B のいずれかが single の場合、Csingle になる。

  • AB の一方が整数データ型で、もう一方が double 型のスカラーである場合、C は整数データ型になります。

拡張機能

バージョン履歴

R2006a より前に導入

すべて展開する