choose the 3 first lowest number in the cell after it sorted

2 Ansichten (letzte 30 Tage)
baby
baby am 21 Jan. 2013
hello all,,
i wanna ask u about how to choose the 3 first lowest number in that cell after it sorted
this is my code
a= input ('Input Number of Data :');
for c=1:a
int2 = ['Input The First Score - ',num2str(c),' :'];
int3 = ['Input The Second Score - ',num2str(c),' :'];
str = ['Input Category ke - ',num2str(c),' :'];
b(c,1) = input(int2);
b(c,2) = input(int3);
f{c,4} = input(str,'s');
end;
for d = 1 : 1
int4= ['Input The First Data :'];
int5 = ['Input The Second Data :'];
e(d,1) = input(int4);
e(d,2) = input(int5);
end;
length = ( b(:,1) - e(1,1)).^2 + (b(:,2) - e(1,2)).^2
for i = 1:size(b,1)
for j = 1:2
f{i,j} = b(i,j);
end;
end
[key, index] = sort([f{:, 2}]);
sorted_f = f(index, :);
can anyone help me?
please

Akzeptierte Antwort

Jan
Jan am 21 Jan. 2013
Bearbeitet: Jan am 21 Jan. 2013
sorted_f(end-2:end, :)
It is surprising, that Thorsten's [f{end-2:end, :}] replies 3 elements only and a column vector.
  1 Kommentar
baby
baby am 21 Jan. 2013
Bearbeitet: baby am 21 Jan. 2013
wait,,it's not working
when i test with other data the result is wrong
sorted_f =
[3] [4] [ 9] 'low'
[1] [4] [13] 'low'
[7] [7] [16] 'high'
[7] [4] [25] 'high'
this is sorted f's result
and this is wrong minimal value of ur command
[1] [4] [13] 'low'
[7] [7] [16] 'high'
[7] [4] [25] 'high'
the true result is
[3] [4] [ 9] 'low'
[1] [4] [13] 'low'
[7] [7] [16] 'high'
as u see the command not give the true result
it just select three data from bottom
can u fix it?

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Thorsten
Thorsten am 21 Jan. 2013
[f{end-2:end, :}]

Thorsten
Thorsten am 21 Jan. 2013
reshape({f{end-2:end,:}}, [3 3])

Kategorien

Mehr zu Operators and Elementary Operations finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by