Il modulo numpy di Python fornisce una funzione chiamata numpy.ravel, che viene utilizzata per modificare un array bidimensionale o multidimensionale in un array appiattito contiguo. L'array restituito ha lo stesso tipo di dati dell'array di origine o dell'array di input. Se l'array di input è un array mascherato, anche l'array restituito sarà un array mascherato.
Sintassi:
numpy.ravel(x, order='C')
parametri:
x: tipo_array
Questo parametro definisce l'array di input, che vogliamo modificare in un array appiattito contiguo. Gli elementi dell'array vengono letti nell'ordine specificato dal parametro order e compressi come array 1D.
ordine: {'C','F', 'A', 'K'}(facoltativo)
Se impostiamo il parametro order su 'C', significa che l'array viene appiattito nell'ordine della riga principale. Se è impostato 'F', l'array viene appiattito in ordine di colonna principale. L'array viene appiattito in ordine di colonna principale solo quando 'A' è contiguo Fortran in memoria e quando impostiamo il parametro dell'ordine su 'A'. L'ultimo ordine è 'K', che appiattisce l'array nello stesso ordine in cui gli elementi si trovano nella memoria. Per impostazione predefinita, questo parametro è impostato su 'C'.
Ritorna:
Questa funzione restituisce un array appiattito contiguo con lo stesso tipo di dati di un array di input e ha forma uguale a ( x.dimensione ).
Esempio 1:
import numpy as np x = np.array([[1, 3, 5], [11, 35, 56]]) y=np.ravel(x) y
Produzione:
array([ 1, 3, 5, 11, 35, 56])
Nel codice sopra
- Abbiamo importato Numpy con il nome alias np.
- Abbiamo creato un array 'X' utilizzando la funzione np.array().
- Abbiamo dichiarato la variabile y e assegnato il valore restituito dalla funzione np.ravel().
- Abbiamo superato l'array 'X' nella funzione.
- Infine, abbiamo provato a stampare il valore di E .
Nell'output, i valori dell'array vengono visualizzati in un array appiattito contiguo.
Esempio 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
Produzione:
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])
Esempio 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
Produzione:
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])
Nel codice sopra
- Abbiamo importato Numpy con il nome alias np.
- Abbiamo creato un array 'X' utilizzando la funzione np.arange().
- Abbiamo cambiato la sua forma e scambiato l'asse utilizzando il rimodellare() E np.swapaxes() funzione.
- Abbiamo dichiarato le variabili y, z e q e assegnato il valore restituito dalla funzione np.ravel().
- Abbiamo superato l'array 'X' e ordine C , K , E UN nella funzione.
- Infine, abbiamo provato a stampare il valore di E .
Nell'output, i valori dell'array vengono visualizzati in un array appiattito contiguo.