maxk
배열에서 가장 큰 k
개 요소 찾기
설명
예제
벡터에서 가장 큰 요소
행렬 행에서 가장 큰 요소
행렬의 각 행에서 가장 큰 요소 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
— 입력 배열
벡터 | 행렬 | 다차원 배열
입력 배열로, 벡터, 행렬, 다차원 배열 중 하나로 지정됩니다.
A
가 벡터인 경우maxk
는A
의 가장 큰k
개 요소가 포함된 벡터를 반환합니다.A
가 행렬인 경우maxk
는 행렬을 반환합니다. 반환되는 행렬의 각 열에는 대응하는A
의 열의 가장 큰k
개 요소가 포함됩니다.A
가 다차원 배열인 경우maxk
는 크기가 1이 아닌 첫 번째 차원의 가장 큰k
개 요소를 반환합니다.
A
의 유형이 categorical
형이면 서수형이어야 합니다.
데이터형: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
| char
| categorical
| datetime
| duration
복소수 지원 여부: 예
k
— 최댓값의 개수
음이 아닌 정수 스칼라
반환할 최댓값 개수로, 양의 정수 스칼라로 지정됩니다. k
가 연산 차원에 있는 요소 수보다 크거나 같으면 maxk
는 해당 차원을 따라 입력 배열을 정렬합니다.
dim
— 연산 차원
양의 정수 스칼라
연산 차원으로, 양의 정수 스칼라로 지정됩니다. 값이 지정되지 않은 경우 디폴트 값은 크기가 1이 아닌 첫 번째 배열 차원이 됩니다.
m
×n
입력 행렬 A
가 있다고 가정합니다.
maxk(A,k,1)
은A
의 각 열에서 가장 큰k
개 값을 구하고,k
×n
행렬을 반환합니다.maxk(A,k,2)
는A
의 각 행에서 가장 큰k
개 값을 구하고,m
×k
행렬을 반환합니다.
c
— 비교 방법
'auto'
(디폴트 값) | 'real'
| 'abs'
비교 방법으로, 다음 중 하나로 지정됩니다.
'auto'
—A
가 실수인 경우real(A)
를 사용하고,A
가 복소수인 경우abs(A)
를 사용하여 입력값A
의 요소를 비교합니다.'real'
—A
가 실수나 복소수인 경우real(A)
를 사용하여 입력값A
의 요소를 비교합니다.A
에 실수부가 동일한 요소가 있는 경우,imag(A)
를 사용하여 우선 순위를 결정합니다.'abs'
—A
가 실수나 복소수인 경우abs(A)
를 사용하여 입력값A
의 요소를 비교합니다.A
에 크기가 동일한 요소가 있는 경우, 구간 (-π,π]에서의angle(A)
를 사용하여 우선 순위를 결정합니다.
출력 인수
B
— 출력 배열
스칼라 | 벡터 | 행렬 | 다차원 배열
출력 배열로, 스칼라, 벡터, 행렬 또는 다차원 배열로 반환됩니다. maxk
는 가장 큰 요소부터 가장 작은 요소의 순서로, k
개 요소를 반환합니다. A
에 같은 요소가 여러 개 있는 경우 그들 간의 순서는 B
에서도 그대로 유지됩니다.
I
— 인덱스 배열
스칼라 | 벡터 | 행렬 | 다차원 배열
인덱스 배열로, 벡터, 행렬 또는 다차원 배열로 반환됩니다. I
는 B
와 크기가 동일합니다. 출력 배열 B
에 반복되는 요소가 들어 있으면 I
에서 인덱스의 순서는 입력 배열에서 나타나는 순서와 일치합니다.
확장 기능
tall형 배열
메모리에 담을 수 없을 정도로 많은 행을 가진 배열을 계산할 수 있습니다.
이 함수는 tall형 배열을 완전히 지원합니다. 자세한 내용은 tall형 배열 항목을 참조하십시오.
C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.
사용법 관련 참고 및 제한 사항:
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')
을 사용하십시오. Code Generation for Complex Data with Zero-Valued Imaginary Parts (MATLAB Coder) 항목을 참조하십시오.dim
을 제공할 경우 그 값은 상수여야 합니다.가변 크기 입력값과 관련된 제한 사항을 보려면 Variable-Sizing Restrictions for Code Generation of Toolbox Functions (MATLAB Coder) 항목을 참조하십시오.
스레드 기반 환경
MATLAB®의 backgroundPool
을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool
을 사용해 코드 실행 속도를 높일 수 있습니다.
이 함수는 스레드 기반 환경을 완전히 지원합니다. 자세한 내용은 스레드 기반 환경에서 MATLAB 함수 실행하기 항목을 참조하십시오.
분산 배열
Parallel Computing Toolbox™를 사용하여 대규모 배열을 클러스터의 결합된 메모리에 걸쳐 분할할 수 있습니다.
이 함수는 분산 배열을 완전히 지원합니다. 자세한 내용은 분산 배열을 사용하여 MATLAB 함수 실행 (Parallel Computing Toolbox) 항목을 참조하십시오.
버전 내역
R2017b에 개발됨
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
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:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)