Classifica in ordine inversoC'è un modo per usare la funzione Ranking, ma dove il valore più grande viene assegnato a 1? Per esempio:
Il codice qui sotto, restituisce [3, 5, 4, 1, 2]. Tuttavia, mi piacerebbe che restituisse [3, 1, 2, 5, 4]
Classifica ([3, 6, 5, 0, 1]);
Ri: Classifica in ordine oppostoMi piace molto la soluzione di Jim. Ma sono pigro, quindi metto a posto la matrice e l'elenco e li faccio trasportare pesantemente.
x = J( 10, 1, Random Normal() );
Reverse Rank = Function( { x }, { ranks },
ranks = Rank( x );
Matrix( Reverse( As List( ranks ) ) );
);
rev rank = Reverse Rank( x );
Show( x, rev rank );Ri: Classifica in ordine oppostoEcco un modo veloce e sporco per farlo
Names Default To Here( 1 );
a = [3, 6, 5, 0, 1];
Show( Ranking( (Max( a ) + 1) - a; ) );
Ranking ((Max (a) + 1) - a) = [3, 1, 2, 5, 4];