ドキュメンテーションヘルプ センタードキュメンテーション
このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
配列の k 個の最大要素を検出
k
B = maxk(A,k)
B = maxk(A,k,dim)
B = maxk(___,'ComparisonMethod',c)
[B,I] = maxk(___)
例
B = maxk(A,k) は、A の k 個の最大要素を返します。
B
A
A がベクトルの場合、maxk は A の k 個の最大要素を含むベクトルを返します。
maxk
A が行列の場合、maxk は A の各列における k 個の最大要素を列に含む行列を返します。
A が多次元配列の場合、maxk は、サイズが 1 に等しくない最初の次元に沿って k 個の最大要素を返します。
B = maxk(A,k,dim) は次元 dim に沿って A の k 個の最大要素を判別します。
dim
B = maxk(___,'ComparisonMethod',c) はオプションで、前述の構文のいずれについても、A の要素を比較する方法を指定します。たとえば、maxk(A,k,'ComparisonMethod','abs') は A の要素の絶対値に従って k 個の最大値を返します。
c
maxk(A,k,'ComparisonMethod','abs')
[B,I] = maxk(___) は A の k 個の最大値のインデックスを検出し、I に返します。
I
すべて折りたたむ
ベクトルの 3 個の最大要素を計算します。
A = 1:10; B = maxk(A,3)
B = 1×3 10 9 8
行列の各行における 3 個の最大要素を計算します。
A = magic(5)
A = 5×5 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9
B = maxk(A,3,2)
B = 5×3 24 17 15 23 16 14 22 20 13 21 19 12 25 18 11
複素数ベクトルの要素の大きさに従って、2 個の最大要素を計算し、入力ベクトル内で各要素が配置されているインデックスを返します。
A = [2-2i 5+i -7-3i -1+i]
A = 1×4 complex 2.0000 - 2.0000i 5.0000 + 1.0000i -7.0000 - 3.0000i -1.0000 + 1.0000i
[B,I] = maxk(A,2,'ComparisonMethod','abs')
B = 1×2 complex -7.0000 - 3.0000i 5.0000 + 1.0000i
I = 1×2 3 2
入力配列。ベクトル、行列または多次元配列として指定します。
A が categorical 型の場合、順序配列でなければなりません。
categorical
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | categorical | datetime | duration 複素数のサポート: あり
single
double
int8
int16
int32
int64
uint8
uint16
uint32
uint64
logical
char
datetime
duration
返す最大値の数。正の整数スカラーとして指定します。k が操作次元の要素数以上である場合、maxk はその次元に沿って入力配列を並べ替えます。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
操作次元。正の整数スカラーとして指定します。既定では、maxk はサイズが 1 に等しくない最初の次元に沿って動作します。
たとえば、A が行列の場合、maxk(A,k,1) は A の行に沿って動作し、各列の最大値を計算します。
maxk(A,k,1)
maxk(A,k,2) は A の列に沿って動作し、各行の最大値を計算します。
maxk(A,k,2)
'auto'
'real'
'abs'
比較方法。次のいずれかとして指定します。
'auto' — 入力 A の要素を、A が実数の場合は real(A)、A が複素数の場合は abs(A) により比較します。
real(A)
abs(A)
'real' — 入力 A の要素を、A が実数でも複素数でも、real(A) により比較します。A の要素の実数部が等しい場合、imag(A) を使用して同順位のものを並べ替えます。
imag(A)
'abs' — 入力 A の要素を、A が実数でも複素数でも、abs(A) により比較します。A の要素の大きさが等しい場合、区間 (-π,π] で angle(A) を使用して同順位のものを並べ替えます。
angle(A)
出力配列。スカラー、ベクトル、行列または多次元配列として返されます。maxk は大きい方から順に k 個の要素を返します。A 内に等しい要素が複数あった場合、それらの並び順は B でも保持されます。
インデックス配列。ベクトル、行列または多次元配列として返されます。I のサイズは B と同じです。出力配列 B に繰り返されている要素がある場合、I におけるこれらの要素のインデックスの順序は、入力配列での順序と一致します。
この関数は tall 配列を完全にサポートしています。詳細については、tall 配列を参照してください。
使用上の注意事項および制限事項:
A が複素数で、その虚数部がすべて 0 である場合、MATLAB® は maxk(A) を呼び出す前に A を real(A) に変換することがあります。この場合、MATLAB は A の要素を real(A) によって比較しますが、生成されるコードでは A の要素が abs(A) によって比較されます。生成されるコードを MATLAB と一致させるには、maxk(real(A),k) または maxk(A,k,'ComparisonMethod','real') を使用します。ゼロ値の虚数部をもつ複素数データのコード生成 (MATLAB Coder)を参照してください。
maxk(A)
maxk(real(A),k)
maxk(A,k,'ComparisonMethod','real')
dim を指定する場合は、定数でなければなりません。
可変サイズ入力に関連した制限については、ツールボックス関数のコード生成に対する可変サイズの制限 (MATLAB Coder)を参照してください。
この関数は分散配列を完全にサポートしています。詳細については、分散配列を使用した MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
max | mink | topkrows
max
mink
topkrows
この例の変更されたバージョンがあります。編集された方の例を開きますか?
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Contact your local office