J'ai une liste numérique :
myList = [1, 2, 3, 100, 5]
Maintenant, si je trie cette liste pour obtenir [1, 2, 3, 5, 100]
. Ce que je veux, ce sont les indices des éléments de la base de données liste originale dans l'ordre trié, c'est-à-dire [0, 1, 2, 4, 3]
--- à l'instar de la fonction de tri de MATLAB qui renvoie à la fois valeurs et des indices.
2 votes
En rapport : stackoverflow.com/questions/7851077/
0 votes
@unutbu Ce n'est pas un dupe (IMO). La question ne contredit pas l'utilisation de Numpy.argsort().
0 votes
@amit : Que voulez-vous dire par "ne contredit pas" ?
0 votes
@unutbu Numpy.argsort() est une bonne réponse à cette question, il se peut qu'elle fasse double emploi avec l'autre fil lié (que vous avez également fermé et je pense que vous n'auriez pas dû) mais pas avec celui que vous avez mentionné, car Numpy.argsort() est une bonne réponse pour ces deux fils, mais PAS pour celui auquel vous faites référence.
0 votes
@amit : S'il vous plaît, soyez plus précis. Quelle page n'est pas un doublon ? A propos, stackoverflow.com/questions/3382352/ montre comment définir un fonction Python pure que se comporte comme numpy.argsort. Il ne suggère pas np.argsort comme réponse...
0 votes
@unutbu C'est une copie de stackoverflow.com/q/7851077/572670 Les deux ne doivent pas être des doublons de stackoverflow.com/q/3382352/572670 - puisque Numpy.argsort() est une réponse valable à ces derniers, mais pas à stackoverflow.com/q/3382352/572670
1 votes
Malheureusement, cette question présente un grave défaut dans le choix de son exemple, car deux façons différentes de lire la question donneraient la même réponse alors que l'entrée n'est qu'une transposition hors de l'ordre trié.
0 votes
ordre et rang