Classement en ordre inverseExiste-t-il un moyen d'utiliser la fonction Classement, mais où la valeur la plus élevée est affectée d'un 1? Par exemple:
Le code ci-dessous renvoie [3, 5, 4, 1, 2]. Cependant, j'aimerais qu'il revienne [3, 1, 2, 5, 4]
Classement ([3, 6, 5, 0, 1]);
Re: Classement dans l'ordre inverseJ'aime beaucoup la solution de Jim. Mais comme je suis paresseux, je mets la matrice et la liste au travail et leur fais supporter le lourd fardeau.
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 );Re: Classement dans l'ordre inverseVoici un moyen rapide et sale de le faire
Names Default To Here( 1 );
a = [3, 6, 5, 0, 1];
Show( Ranking( (Max( a ) + 1) - a; ) );
Classement ((Max (a) + 1) - a) = [3, 1, 2, 5, 4];