De numpy-module van Python biedt een functie genaamd numpy.ravel, die wordt gebruikt om een tweedimensionale array of een multidimensionale array te veranderen in een aaneengesloten afgevlakte array. De geretourneerde array heeft hetzelfde gegevenstype als de bronarray of invoerarray. Als de invoerarray een gemaskeerde array is, zal de geretourneerde array ook een gemaskeerde array zijn.
Syntaxis:
numpy.ravel(x, order='C')
Parameters:
x: array_like
Deze parameter definieert de invoerarray, die we willen wijzigen in een aaneengesloten afgevlakte array. De array-elementen worden gelezen in de volgorde die is opgegeven door de orderparameter en verpakt als een 1D-array.
volgorde: {'C','F', 'A', 'K'}(optioneel)
Als we de orderparameter instellen op 'C', betekent dit dat de array wordt afgeplat in rij-major-volgorde. Als 'F' is ingesteld, wordt de array afgevlakt in kolom-hoofdvolgorde. De array wordt alleen in kolom-hoofdvolgorde afgevlakt als 'A' Fortran aaneengesloten is in het geheugen, en als we de orderparameter instellen op 'A'. De laatste volgorde is 'K', waardoor de array wordt afgevlakt in dezelfde volgorde waarin de elementen in het geheugen voorkomen. Standaard is deze parameter ingesteld op 'C'.
Geeft terug:
Deze functie retourneert een aaneengesloten flatten-array met hetzelfde gegevenstype als een invoerarray en heeft een vorm die gelijk is aan ( x.grootte ).
Voorbeeld 1:
import numpy as np x = np.array([[1, 3, 5], [11, 35, 56]]) y=np.ravel(x) y
Uitgang:
array([ 1, 3, 5, 11, 35, 56])
In de bovenstaande code
- We hebben numpy geïmporteerd met aliasnaam np.
- We hebben een array gemaakt 'X' met behulp van de functie np.array().
- We hebben variabele y gedeclareerd en de geretourneerde waarde van de functie np.ravel() toegewezen.
- We zijn de array gepasseerd 'X' in de functie.
- Ten slotte hebben we geprobeerd de waarde van af te drukken En .
In de uitvoer worden de waarden van de array weergegeven in een aaneengesloten afgeplatte array.
Voorbeeld 2:
import numpy as np x = np.array([[1, 3, 5], [11, 35, 56]]) y = np.ravel(x, order='F') z = np.ravel(x, order='C') p = np.ravel(x, order='A') q = np.ravel(x, order='K') y z p q
Uitgang:
array([ 1, 11, 3, 35, 5, 56]) array([ 1, 3, 5, 11, 35, 56]) array([ 1, 3, 5, 11, 35, 56]) array([ 1, 3, 5, 11, 35, 56])
Voorbeeld 3:
import numpy as np x = np.arange(12).reshape(3,2,2).swapaxes(1,2) x y=np.ravel(a, order='C') y z=np.ravel(a, order='K') z q=np.ravel(a, order='A') q
Uitgang:
array([[[ 0, 2], [ 1, 3]], [[ 4, 6], [ 5, 7]], [[ 8, 10], [ 9, 11]]]) array([ 0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11]) array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) array([ 0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11])
In de bovenstaande code
- We hebben numpy geïmporteerd met aliasnaam np.
- We hebben een array gemaakt 'X' met behulp van de functie np.arange().
- We hebben de vorm veranderd en de as verwisseld met behulp van de hervormen() En np.swapaxes() functie.
- We hebben de variabelen y, z en q gedeclareerd en de geretourneerde waarde van de functie np.ravel() toegewezen.
- We zijn de array gepasseerd 'X' en bestellen C , K , En A in de functie.
- Ten slotte hebben we geprobeerd de waarde van af te drukken En .
In de uitvoer worden de waarden van de array weergegeven in een aaneengesloten afgeplatte array.