If I have a large matrix with 20 * 13 and each row with random rank from 1 to 13, how can I extend your command to my case? Thank you for help
How to count the number of the rank in each column of a matrix.
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Wan-Yi Chiu
am 17 Mai 2023
Kommentiert: Wan-Yi Chiu
am 17 Mai 2023
Load a rank matrix
1 2 3;
2 3 1;
2 1 3;
3 1 2;
1 3 2
How do I count the number of the rank in each column:
The desired output of counting matrix is as follows:
Rank First column Second column Third column
1 2 2 1
2 2 1 2
3 1 2 2
Thank you very much.
7 Kommentare
FannoFlow
am 17 Mai 2023
ah it appears the matrix needed to be transposed, thats all.
m = [1 2 3 4 5; 2 5 3 1 4; 2 1 3 5 4; 3 1 2 4 5; 5 4 1 3 2]
u = unique(m);
T = array2table(squeeze(sum(m == permute(u,[3,2,1]), 1)).', RowNames=string(u), VariableNames="Column " + (1:size(m,2)))
Akzeptierte Antwort
FannoFlow
am 17 Mai 2023
m = [
1 2 3;
2 3 1;
2 1 3;
3 1 2;
1 3 2]
c = squeeze(sum(m == permute(1:3,[3,1,2]), 1))
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Interpolation finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!