numpy-modulen i Python tillhandahåller en funktion som kallas numpy.ravel, som används för att ändra en 2-dimensionell array eller en flerdimensionell array till en sammanhängande tillplattad array. Den returnerade matrisen har samma datatyp som källmatrisen eller inmatningsmatrisen. Om inmatningsmatrisen är en maskerad matris, kommer den returnerade matrisen också att vara en maskerad matris.
Syntax:
numpy.ravel(x, order='C')
Parametrar:
x: array_like
Den här parametern definierar inmatningsmatrisen, som vi vill ändra i en sammanhängande tillplattad matris. Arrayelementen läses i den ordning som specificeras av orderparametern och packas som en 1D-array.
order: {'C','F', 'A', 'K'}(valfritt)
Om vi ställer in orderparametern till 'C' betyder det att arrayen blir tillplattad i rad-stor ordning. Om 'F' är satt, blir matrisen tillplattad i kolumn-stor ordning. Arrayen är tillplattad i kolumn-stor ordning endast när 'A' är Fortran angränsande i minnet, och när vi sätter ordningsparametern till 'A'. Den sista ordningen är 'K', som plattar ut arrayen i samma ordning som elementen förekom i minnet. Som standard är denna parameter inställd på 'C'.
Returnerar:
Denna funktion returnerar en sammanhängande plattmatris med samma datatyp som en inmatningsmatris och har form lika med ( x.storlek ).
Exempel 1:
import numpy as np x = np.array([[1, 3, 5], [11, 35, 56]]) y=np.ravel(x) y
Produktion:
array([ 1, 3, 5, 11, 35, 56])
I ovanstående kod
- Vi har importerat numpy med alias np.
- Vi har skapat en array 'x' använder funktionen np.array().
- Vi har deklarerat variabeln y och tilldelat det returnerade värdet för funktionen np.ravel().
- Vi har passerat arrayen 'x' i funktionen.
- Till sist försökte vi skriva ut värdet på och .
I utgången visas värdena för arrayen i en sammanhängande tillplattad array.
Exempel 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
Produktion:
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])
Exempel 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
Produktion:
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])
I ovanstående kod
- Vi har importerat numpy med alias np.
- Vi har skapat en array 'x' använder funktionen np.arange().
- Vi har ändrat dess form och bytt axeln med hjälp av omforma() och np.swapaxes() fungera.
- Vi har deklarerat variablerna y, z och q och tilldelat det returnerade värdet för funktionen np.ravel().
- Vi har passerat arrayen 'x' och beställa C , K , och A i funktionen.
- Till sist försökte vi skriva ut värdet på och .
I utgången visas värdena för arrayen i en sammanhängande tillplattad array.