Argsort axis=1

Résolu/Fermé
domxav1759 - 28 déc. 2022 à 07:35
 domxav1759 - 28 déc. 2022 à 17:20

Bonjour,

Bonjour,

J'ai besoin votre aide au programme suivante

arr = np.array([[6, 8, 3], [9, 5, 7]])

arr1 = np.argsort(arr, <strong>axis=1</strong>)

print("L'indice ordre axis = 1 en 2d:\n", arr1)

son output est:

L'indice ordre axis = 1 en 2d:

[[2 0 1]

[1 2 0]]

comment il a trouvé ce output

quelqu'un peut m'expliquer s'il vous plaît

j'ai compris pour axis=0, mais pour axis=1 j'ai du mal à comprendre


Windows / Firefox 108.0

A voir également:
  • Argsort axis=1
  • Axis merge - Télécharger - Gestion de fichiers

3 réponses

yg_be Messages postés 23235 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 30 septembre 2024 Ambassadeur 1 538
28 déc. 2022 à 08:19

bonjour,

si tu veux comprendre, commence par imprimer le résultat du tri.

import numpy as np
arr = np.array([[6, 8, 3], [9, 5, 7]])
print("matrice:")
print(arr)
for i in range(2):
    arrs=np.sort(arr,axis=i)
    arr1 = np.argsort(arr, axis=i)
    print ("triée sur axe",i)
    print(arrs)
    print("index:")
    print( arr1)
0

pour axis=1
    arrs = np.sort(arr, axis=i) # arrs [3, 6, 8], [5, 7, 9] jusqu'à la ok j ai compris
    arr1 = np.argsort(arr, axis=i) # arr1[2, 0, 1], [1, 2, 0] là comment il a trouvé ces index?

et j'ai pas compris

pouvez vous m'expliquer svp

0

Salut.

Si tu pars d'une liste a :

a = [4, 9, 3]


Et que tu l'ordonnes pour aboutir à [3, 4, 9] cela correspond à [[a[2], a[0], a[1]]

D'où les indices [2, 0, 1]

0

merci, j'ai compris

0