In sommige gevallen hebben we een gesorteerde array nodig voor berekeningen. Voor dit doel biedt de numpy-module van Python een functie genaamd numpy.sort() . Deze functie geeft een gesorteerde kopie van de bronarray of invoerarray.
Syntaxis:
numpy.sort(a, axis=-1, kind='quicksort', order=None)
Parameters:
x: array_like
Deze parameter definieert de bronarray die wordt gesorteerd.
as: int of Geen (optioneel)
Deze parameter definieert de as waarlangs de sortering wordt uitgevoerd. Als deze parameter dat is Geen , wordt de array afgevlakt voordat deze wordt gesorteerd, en standaard is deze parameter ingesteld op -1, waardoor de array langs de laatste as wordt gesorteerd.
soort: {quicksort, heapsort, mergesort}(optioneel)
Deze parameter wordt gebruikt om het sorteeralgoritme te definiëren, en standaard wordt het sorteren uitgevoerd met behulp van 'Snel sorteren' .
smtp-internetprotocol
volgorde: str of lijst met str (optioneel)
Wanneer een array is gedefinieerd met velden, definieert de volgorde de velden voor het maken van een vergelijking in eerste, tweede, enz. Alleen het enkele veld kan worden opgegeven als een tekenreeks, en niet noodzakelijkerwijs voor alle velden. De niet-gespecificeerde velden zullen echter nog steeds worden gebruikt, in de volgorde waarin ze in het dtype voorkomen, om de banden te verbreken.
Geeft terug:
Deze functie retourneert een gesorteerde kopie van de bronarray, die dezelfde vorm en hetzelfde type heeft als een bronarray.
Voorbeeld 1:
import numpy as np x=np.array([[1,4,2,3],[9,13,61,1],[43,24,88,22]]) x y=np.sort(x) y
Uitgang:
Java genereert een willekeurig getal
array([[ 1, 4, 2, 3], [ 9, 13, 61, 1], [43, 24, 88, 22]]) array([[ 1, 2, 3, 4], [ 1, 9, 13, 61], [22, 24, 43, 88]])
In de bovenstaande code
- We hebben numpy geïmporteerd met aliasnaam np.
- We hebben een multidimensionale array gemaakt 'X' gebruik makend van np.array() functie.
- We hebben de variabele gedeclareerd 'En' en de geretourneerde waarde toegewezen van np.sort() functie.
- We hebben de invoerarray doorgegeven 'X' in de functie.
- Ten slotte hebben we geprobeerd de waarde van af te drukken 'En' .
In de uitvoer wordt een gesorteerde kopie van de bronarray van hetzelfde type en dezelfde vorm weergegeven.
Voorbeeld 2:
import numpy as np x=np.array([[1,4,2,3],[9,13,61,1],[43,24,88,22]]) x y=np.sort(x, axis=None) y
Uitgang:
array([[ 1, 4, 2, 3], [ 9, 13, 61, 1], [43, 24, 88, 22]]) array([ 1, 1, 2, 3, 4, 9, 13, 22, 24, 43, 61, 88])
Voorbeeld 3:
import numpy as np x=np.array([[1,4,2,3],[9,13,61,1],[43,24,88,22]]) x y=np.sort(x,axis=0) y z=np.sort(x,axis=1) z
Uitgang:
array([[ 1, 4, 2, 1], [ 9, 13, 61, 3], [43, 24, 88, 22]]) array([[ 1, 2, 3, 4], [ 1, 9, 13, 61], [22, 24, 43, 88]])
Voorbeeld 4:
import numpy as np dtype = [('name', 'S10'), ('height', float), ('age', int),('gender','S10')] values = [('Shubham', 5.9, 23, 'M'), ('Arpita', 5.6, 23, 'F'),('Vaishali', 5.2, 30, 'F')] x=np.array(values, dtype=dtype) x y=np.sort(x, order='age') y z=np.sort(x, order=['age','height']) z
Uitgang:
array([('Shubham', 5.9, 23, 'M'), ('Arpita', 5.6, 23, 'F'), ('Vaishali', 5.2, 30, 'F')],dtype=[('name', 'S10'), ('height', '<f8'), ('age', ' <i4'), ('gender', 's10')]) array([('arpita', 5.6, 23, 'f'), ('shubham', 5.9, 'm'), ('vaishali', 5.2, 30, 'f')], dtype="[('name'," 's10'), ('height', '<f8'), < pre> <p> <strong>In the above code</strong> </p> <ul> <li>We have imported numpy with alias name np.</li> <li>We have defined the fields and values for the structured array.</li> <li>We have created a structured array <strong>'x'</strong> by passing dtype and values in the <strong>np.array()</strong> function.</li> <li>We have declared the variables <strong>'y'</strong> and <strong>'z'</strong> , and assigned the returned value of <strong>np.sort()</strong> function.</li> <li>We have passed the input array <strong>'x'</strong> and order in the function.</li> <li>Lastly, we tried to print the value of <strong>'y</strong> ' and <strong>'z'</strong> .</li> </ul> <p>In the output, it shows a sorted copy of the structured array with a defined order.</p> <hr></f8'),>