Python'un numpy modülü, 2 boyutlu bir diziyi veya çok boyutlu bir diziyi bitişik düzleştirilmiş bir diziye dönüştürmek için kullanılan numpy.ravel adlı bir işlev sağlar. Döndürülen dizi, kaynak dizi veya giriş dizisiyle aynı veri türüne sahiptir. Giriş dizisi maskeli bir diziyse, döndürülen dizi de maskeli bir dizi olacaktır.
Sözdizimi:
numpy.ravel(x, order='C')
Parametreler:
x: dizi_benzeri
Bu parametre, bitişik düzleştirilmiş bir dizide değiştirmek istediğimiz giriş dizisini tanımlar. Dizi elemanları, order parametresi tarafından belirtilen sırayla okunur ve 1 boyutlu dizi olarak paketlenir.
sıra: {'C','F', 'A', 'K'}(isteğe bağlı)
Order parametresini 'C' olarak ayarlarsak bu, dizinin ana satır sırasına göre düzleştiği anlamına gelir. 'F' ayarlanırsa dizi ana sütun sırasına göre düzleştirilir. Dizi, yalnızca 'A' bellekte Fortran bitişik olduğunda ve sipariş parametresini 'A' olarak ayarladığımızda sütun ana sırasına göre düzleştirilir. Son sıra 'K' olup, diziyi öğelerin bellekte oluştuğu sırayla düzleştirir. Varsayılan olarak bu parametre 'C' olarak ayarlanmıştır.
İadeler:
Bu işlev, giriş dizisiyle aynı veri türüne sahip ve şuna eşit bir şekle sahip bitişik bir düzleştirme dizisi döndürür: ( x.boyut ).
Örnek 1:
import numpy as np x = np.array([[1, 3, 5], [11, 35, 56]]) y=np.ravel(x) y
Çıktı:
array([ 1, 3, 5, 11, 35, 56])
Yukarıdaki kodda
- Numpy'yi np takma adıyla içe aktardık.
- Bir dizi oluşturduk 'X' np.array() işlevini kullanarak.
- Y değişkenini tanımladık ve np.ravel() fonksiyonunun döndürdüğü değeri atadık.
- Diziyi geçtik 'X' fonksiyonda.
- Son olarak değerini yazdırmaya çalıştık. Ve .
Çıktıda dizinin değerleri bitişik düzleştirilmiş bir dizide gösterilir.
Örnek 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
Çıktı:
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])
Örnek 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
Çıktı:
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])
Yukarıdaki kodda
- Numpy'yi np takma adıyla içe aktardık.
- Bir dizi oluşturduk 'X' np.arange() işlevini kullanarak.
- Şeklini değiştirdik ve eksenini değiştirdik. yeniden şekillendir() Ve np.swapaxes() işlev.
- Y, z ve q değişkenlerini bildirdik ve np.ravel() fonksiyonunun döndürdüğü değeri atadık.
- Diziyi geçtik 'X' ve sipariş et C , k , Ve A fonksiyonda.
- Son olarak değerini yazdırmaya çalıştık. Ve .
Çıktıda dizinin değerleri bitişik düzleştirilmiş bir dizide gösterilir.