logo

numpy.ndarray.flatten() Pythonban

A Pythonban bizonyos esetekben egydimenziós tömbre van szükségünk 2D vagy többdimenziós tömb helyett. Erre a célra a numpy modul egy ún numpy.ndarray.flatten(), amely a tömb egydimenziós másolatát adja vissza, nem pedig 2D-ben vagy többdimenziós tömbben.

Szintaxis

 ndarray.flatten(order='C') 

Paraméterek:

sorrend: {'C', 'F', 'A', 'K'} (opcionális)

Ha a sorrend paramétert 'C'-re állítjuk, az azt jelenti, hogy a tömb sor-fősorrendben lapításra kerül. Ha az 'F' be van állítva, a tömb oszlop-fősorrendben lesz lapítva. A tömb csak akkor laposodik oszlopfő sorrendben, ha az 'a' a Fortran szomszédos a memóriában, és ha a sorrend paramétert 'A'-ra állítjuk. Az utolsó sorrend a 'K', amely a tömböt abban a sorrendben simítja ki, amelyben az elemek a memóriában előfordultak. Alapértelmezés szerint ez a paraméter 'C'.

Visszaküldés:

y: ndarray

Ez a függvény a forrástömb egy másolatát adja vissza, amely egydimenzióssá válik.

teáskanál vs evőkanál

1. példa:

 import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten() b 

Kimenet:

 array([1, 4, 7, 2, 5, 8, 3, 6, 9]) 

A fenti kódban

  • Importáltuk a numpy-t np aliasnévvel.
  • Létrehoztunk egy többdimenziós „a” tömböt a segítségével sor() funkció.
  • Deklaráltuk a 'b' változót, és hozzárendeltük a visszaadott értékét lelapul() funkció.
  • Végül megpróbáltuk kinyomtatni az értékét 'b' .

A kimenetben egy ndarray-t mutat, amely a többdimenziós tömb elemeit tartalmazza 1-D-ben.

2. példa:

 import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('C') b 

Kimenet:

 array([1, 4, 7, 2, 5, 8, 3, 6, 9]) 

A fenti kódban

  • Importáltuk a numpy-t np aliasnévvel.
  • Létrehoztunk egy többdimenziós „a” tömböt a segítségével sor() funkció.
  • Deklaráltuk a 'b' változót, és hozzárendeltük a visszaadott értékét lelapul() funkció.
  • A függvényben 'C' sorrendet használtunk.
  • Végül megpróbáltuk kinyomtatni az értékét 'b' .

A kimenetben egy ndarray-t mutat, amely a többdimenziós tömb elemeit tartalmazza 1-D-ben.

3. példa:

 import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('F') b 

Kimenet:

 array([1, 2, 3, 4, 5, 6, 7, 8, 9]) 

4. példa:

 import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('A') b 

Kimenet:

 array([1, 4, 7, 2, 5, 8, 3, 6, 9]) 

5. példa:

 import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('K') b 

Kimenet:

 array([1, 4, 7, 2, 5, 8, 3, 6, 9])