Ranking values - sorting into descending order
    7 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    david crowley
 el 24 de Jul. de 2021
  
    
    
    
    
    Respondida: Max Heiken
      
 el 24 de Jul. de 2021
            I have a that for each row (i) ranks the column values. However, it ranks them in the ascending order. I require it to be ranked in descending order. Can anyone help with modifying the below code block to descending order?
for i = 1:height(d)
    [temp, ranked]  = ismember(X(i,:),unique(X(i,:)));
    rnkR1List(i,:) = ranked;
end
0 comentarios
Respuesta aceptada
  Max Heiken
      
 el 24 de Jul. de 2021
        If you do not expect there to be duplicates, I too recommend to use sort instead.
[~, rnkR1List] = sort(X, 2, 'descend');
If you absolutely need identical values to have the same ranks, then you could extend your own code by just inverting the ranks:
for i = 1:height(d)
    [temp, ranked]  = ismember(X(i,:),unique(X(i,:)));
    rnkR1List(i,:) = ranked;
end
max(rnkR1List, [], 2) - rnkR1List + 1;
0 comentarios
Más respuestas (1)
Ver también
Categorías
				Más información sobre Shifting and Sorting Matrices en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


