Sortrows_function of a Matrix

1 view (last 30 days)
Mark S
Mark S on 14 Mar 2020
Commented: Ameer Hamza on 14 Mar 2020
T=[1:10;40,43,18,43,34,18,23,31,44,38]';
T=ShortestTime(T)
T=LongestTime(T)
function [c]=ShortestTime(T)
c=sortrows(T,[2 1])
end
function [c]=LongestTime(T)
c=sortrows(T,[-2 1])
end
Hi, I wrote a little script to sort a matrix. But now I want that Matlab write only the first column of the matrix. How do I do that?

Answers (1)

Ameer Hamza
Ameer Hamza on 14 Mar 2020
You can get the first column of a matrix by indexing like this
first_column = T(:,1);
  2 Comments
Mark S
Mark S on 14 Mar 2020
Edited: Mark S on 14 Mar 2020
Ok, thanks now it works. But when i run the script it write every time also the sortet Matrix.
But i want only that Matlab write the solution of the function: ShortestTime and LongestTime.
How can i do this?
T=[1:10;40,43,18,43,34,18,23,31,44,38]';
T=ShortestTime(T)
T=LongestTime(T)
function [c]=ShortestTime(T);
c=sortrows(T,[2 1])
ShortestTime = T(:,1)
end
function [c]=LongestTime(T)
c=sortrows(T,[-2 1])
LongestTime = T(:,1)
end
Ameer Hamza
Ameer Hamza on 14 Mar 2020
I am not sure about your question. Maybe you want to save them in different variables
T=[1:10;40,43,18,43,34,18,23,31,44,38]';
T1=ShortestTime(T);
T2=LongestTime(T);

Sign in to comment.

Categories

Find more on Get Started with MATLAB in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!