mink and maxk functions

조회 수: 6 (최근 30일)
UET Hussain
UET Hussain 2018년 2월 5일
댓글: UET Hussain 2018년 9월 5일
I'm using MATLAB R2017a. While trying to use "mink" and "maxk" functions, the MATLAB responds "Undefined function or variable 'maxk'." These two functions were introduced in R2017b. Is it possible to use these functions with R2017a? if yes, then how?
  댓글 수: 1
Stephen23
Stephen23 2018년 2월 5일
"These two functions were introduced in R2017b. Is it possible to use these functions with R2017a?"
No.

댓글을 달려면 로그인하십시오.

채택된 답변

Birdman
Birdman 2018년 2월 5일
One approach would be writing your own function:
function y=mink(A,k)
A=sort(unique(A));
y=A(1:k);
end
Call this function from command line as follows
A=1:10;
mink(A,3)
and the first three smallest elements will be displayed.
  댓글 수: 7
Jan
Jan 2018년 2월 5일
mink does not reply unique elements. Therefore the correct replacement is:
function y = mink(A, k)
A = sort(A); % No UNIQUE here
y = A(1:k);
end
See: mink([1,1,2,3], 2) replies [1,1,2] .
Birdman
Birdman 2018년 2월 5일
Mine approach was different, but anyway thanks Jan :)

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Salam Ismaeel
Salam Ismaeel 2018년 9월 4일
편집: Salam Ismaeel 2018년 9월 4일
% function [B BIndex RestVector]= maxk2(A, k)
% Find k largest elements in a Vector A
% B : Vector with all max elements (included repeated)
% BIndex : idx of max k element
% RestVector : rest of the elements without max k elements
function [B BIndex RestVector]= maxk2(A, k)
B = 0;
RestVector = A;
sumIndex = 1;
for i=1:k
MaxA = max(A);
I = A == MaxA;
sumI = sum(I); %To find number of Max elements (repeated)
B(sumIndex: sumIndex+sumI-1) = MaxA; % to same max elements in B
BIndex(sumIndex: sumIndex+sumI-1) = find(A == MaxA);
sumIndex = sumIndex + sumI;
A(I) = min(A); % exchange the max elements by a smallest value
end
RestVector(BIndex) = []; % remove largest values
------------------------------ Example ------------------
>> x
x =
4 17 65 73 65 45 55 30 74 19
>> [x1 x1idx x1new ] = maxk2(x,4)
x1 =
74 73 65 65 55
x1idx =
9 4 3 5 7
x1new =
4 17
  댓글 수: 1
UET Hussain
UET Hussain 2018년 9월 5일
Sir Sir Sir, slightly difficult approach. but its giving all required things. thanks for response.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Descriptive Statistics에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by