numpy.argsort() funkcija tiek izmantota, lai veiktu netiešu kārtošanu pa doto asi, izmantojot algoritmu, ko nosaka veida atslēgvārds. Tas atgriež tādas pašas formas indeksu masīvu kā arr, kas sakārtotu masīvu. Tas nozīmē vērtības indeksus, kas sakārtoti augošā secībā
Sintakse : numpy.argsort(arr, axis=-1, kind='quicksort', order=nav)
Parametri:
arr : [masīvs_līdzīgs] Ievades masīvs. ass : [int vai None] Asis, pa kuru kārtot. Ja nav, masīvs tiek saplacināts pirms kārtošanas. Noklusējums ir -1, kas tiek kārtots pa pēdējo asi. veids : ['ātrā šķirošana', 'apvienošana', 'heapsort']Atlases algoritms. Noklusējums ir “ātrā kārtošana”. secība : [str vai str. saraksts] Ja arr ir masīvs ar definētiem laukiem, šis arguments norāda, kurus laukus salīdzināt pirmo, otro utt.
Atgriezties: [index_masīvs, ndarray] Indeksu masīvs, kas kārto arr pa norādīto asi. Ja arr ir viendimensionāls, tad arr[index_masīvs] atgriež sakārtotu arr.
Kods #1:
Python3
vārdnīcas inicializators c#
# 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])> |
>
pārvērst par dubulto java
>Izvade:
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]>
Kods #2:
Python3
# 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)> |
>
>
poga, lai centrētu cssIzvade:
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]]>
Kods #3:
Python
ievietošanas kārtošanas algoritms
# 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>]]> |
>
>
Izvade:
array([2, 5, 0, 1, 4, 6, 3], dtype=int32) array([6, 3], dtype=int32) array([3, 6], dtype=int32) array([100, 68])>