ranking the data in matrix and arrange them as per rank.
4 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Karanvir singh Sohal
el 4 de Abr. de 2021
Comentada: Bruno Luong
el 4 de Abr. de 2021
Hello!
I have a matrix D and E
D=[1 2 3; 7 8 9; 4 5 6; 3 0 5];
E=[D sum(D')' ranks(sum(D')')]
output of E is
E = [ 1 2 3 6 1
7 8 9 24 4
4 5 6 15 3
3 0 5 8 2]
Ok now I have 2 doubts
- I want to rank(last column of E) in a way that highest(24) value in column 4 gets rank 1.
- I want sort the data in another matrix such that rank 1 row gets on top.
expected results
[7 8 9 24 1
4 5 6 15 2
3 0 5 8 3
1 2 3 6 4]
0 comentarios
Respuesta aceptada
Bruno Luong
el 4 de Abr. de 2021
>> D=[1 2 3; 7 8 9; 4 5 6; 3 0 5];
E=[D sum(D')' ranks(sum(D')')]
Unrecognized function or variable 'ranks'.
Did you mean:
>> E=[D sum(D')']
E =
1 2 3 6
7 8 9 24
4 5 6 15
3 0 5 8
>> sortrows(E,-4)
ans =
7 8 9 24
4 5 6 15
3 0 5 8
1 2 3 6
I let youu deal with the last column, that is nothing more or less interesting than the row index of the array
2 comentarios
Bruno Luong
el 4 de Abr. de 2021
as I said rank after sorting is
r = (1:size(D,1))'
It's a row index of your sorted array.
Más respuestas (0)
Ver también
Categorías
Más información sobre Matrices and Arrays 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!