Sorting matrix based on the sum of the rows
8 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Eunan McShane
el 9 de Jul. de 2019
Comentada: Eunan McShane
el 9 de Jul. de 2019
I am trying to sort the matrix 'counts' (attached as csv) so that the sum of the rows increases to the 512th pixel so that I have effectively lowest sum to highest sum in order
Thank you
0 comentarios
Respuesta aceptada
Akira Agata
el 9 de Jul. de 2019
Like this?
% Read data from CSV
A = csvread('Counts.csv');
% Calculate order vector (pt) based on sum(A,2)
[~,pt] = sort(sum(A,2));
% Sort the matrix
B = A(pt,:);
Más respuestas (1)
Bob Thompson
el 9 de Jul. de 2019
A = randi(100, 10, 10);
sums = sum(A,2);
[~,I] = sort(sums);
B = A(I',:);
There may be a better way of doing this, but this is the first thing that came to mind. Just replace A with your data.
0 comentarios
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!