how to arrange vectors in descending order?

13 visualizzazioni (ultimi 30 giorni)
Sadiq Akbar
Sadiq Akbar il 12 Ott 2020
Commentato: Sadiq Akbar il 12 Ott 2020
I have 100 vectors of size 100x8 each as is given in the attachment. I want to arrange them in descending order row-wise only.i.e. the elements of each vector should not be changed but they must be arranged in descending order only. say for example if I have two vectors as given below:
v1=[1 2 3 4 5 6 7 8]
v2=[2 3 4 5 6 7 8 9]
Then they must be arranged in descending order like
v2=[2 3 4 5 6 7 8 9] % bigger vector 1st
v1=[1 2 3 4 5 6 7 8] % smallerr vector next
In my excel file given in attachement, assume that all these vectors are stored in a matrix called ErrorVectors.
  1 Commento
Asad (Mehrzad) Khoddam
Asad (Mehrzad) Khoddam il 12 Ott 2020
First you should have a criteria for comparing two vectors like sum of errors or sum of square of errors.

Accedi per commentare.

Risposte (2)

Asad (Mehrzad) Khoddam
Asad (Mehrzad) Khoddam il 12 Ott 2020
% read matrix into A then
%
sumError = sum(A.^2,2);
% sort the total error
[~, ind] = sort(sumError,'descend')
Asorted = A(ind,:)
  1 Commento
Sadiq Akbar
Sadiq Akbar il 12 Ott 2020
Thank you very much dear KSSV and Asad (Mehrzad) Khoddam. I ran the programs of both of you, but they changes the contents of the vector also.
Then I found solution on below URL and it worked.
URL:https://www.mathworks.com/matlabcentral/answers/96995-how-can-i-sort-the-rows-of-a-matrix-in-descending-order-in-matlab-7-0-1-r14sp1#:~:text=Accepted%20Answer,-MathWorks%20Support%20Team&text=The%20SORTROWS%20function%20offers%20the,second%20argument%20to%20the%20function.
Thank you once again to both of you.
Regards

Accedi per commentare.


KSSV
KSSV il 12 Ott 2020
A = rand(10,5) ;
[m,n] = size(A) ;
B = A ;
for i = 1:n
B(:,i) = sort(A(:,i),'descend') ;
end

Categorie

Scopri di più su Shifting and Sorting Matrices in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by