logo

numpy.argsort() Python

numpy.argsort() funkcija naudojama atlikti netiesioginį rūšiavimą pagal nurodytą ašį, naudojant algoritmą, nurodytą rūšies raktinio žodžio. Jis grąžina tokios pačios formos indeksų masyvą kaip arr, kuris surūšiuotų masyvą. Tai reiškia vertės indeksus, išdėstytus didėjančia tvarka

Sintaksė: numpy.argsort(arr, axis=-1, kind='greitasis rūšiavimas', order=nėra)



Parametrai:

    arr : [array_like] Įvesties masyvas. axis : [int arba None] Ašis, pagal kurią rūšiuojama. Jei nėra, masyvas prieš rūšiavimą išlyginamas. Numatytoji vertė yra -1, kuri rūšiuojama pagal paskutinę ašį. rūšis : ['greitasis rūšiavimas', 'sujungimas', 'heapsort'] Pasirinkimo algoritmas. Numatytoji reikšmė yra „greitasis rūšiavimas“. tvarka : [str arba str sąrašas] Kai arr yra masyvas su apibrėžtais laukais, šis argumentas nurodo, kuriuos laukus lyginti pirmą, antrą ir t.t.

Grąžinti: [index_masyvas, ndarray] Indeksų masyvas, rūšiuojantis arr pagal nurodytą ašį. Jei arr yra vienmatis, tada arr[index_masyvas] grąžina surūšiuotą arr.

1 kodas:



Python3




įjungti java



# Python program explaining> # argpartition() function> import> numpy as geek> # input array> in_arr>=> geek.array([>2>,>0>,>1>,>5>,>4>,>1>,>9>])> print>(>'Input unsorted array : '>, in_arr)> out_arr>=> geek.argsort(in_arr)> print>(>'Output sorted array indices : '>, out_arr)> print>(>'Output sorted array : '>, in_arr[out_arr])>

java skaityti csv failą
>

>

Išvestis:

Input unsorted array : [2 0 1 5 4 1 9] Output sorted array indices : [1 2 5 0 4 3 6] Output sorted array : [0 1 1 2 4 5 9]>

Kodas #2:

Python3


c



# Python program explaining> # argpartition() function> import> numpy as geek> # input 2d array> in_arr>=> geek.array([[>2>,>0>,>1>], [>5>,>4>,>3>]])> print>(>'Input array : '>, in_arr)> # output sorted array indices> out_arr1>=> geek.argsort(in_arr, kind>=>'mergesort'>, axis>=>0>)> print>(>'Output sorted array indices along axis 0: '>, out_arr1)> out_arr2>=> geek.argsort(in_arr, kind>=>'heapsort'>, axis>=>1>)> print>(>'Output sorteded array indices along axis 1: '>, out_arr2)>

>

>

Išvestis:

Input array : [[2 0 1] [5 4 3]] Output sorted array indices along axis 0: [[0 0 0] [1 1 1]] Output sorted array indices along axis 1: [[1 2 0] [2 1 0]]>

Kodas #3:

Python


šriftas gimp



# get two largest value from numpy array> x>=>np.array([>12>,>43>,>2>,>100>,>54>,>5>,>68>])> # using argsort get indices of value of arranged in ascending order> np.argsort(x)> #get two highest value index of array> np.argsort(x)[>->2>:]> # to arrange in ascending order of index> np.argsort(x)[>->2>:][::>->1>]> # to get highest 2 values from array> x[np.argsort(x)[>->2>:][::>->1>]]>

>

>

Išvestis:

array([2, 5, 0, 1, 4, 6, 3], dtype=int32) array([6, 3], dtype=int32) array([3, 6], dtype=int32) array([100, 68])>