V Pythonu v nekaterih primerih potrebujemo enodimenzionalno matriko namesto 2-D ali večdimenzionalne matrike. V ta namen nudi modul numpy funkcijo, imenovano numpy.ndarray.flatten(), ki vrne kopijo matrike v eni dimenziji namesto v 2-D ali večdimenzionalni matriki.
Sintaksa
ndarray.flatten(order='C')
Parametri:
vrstni red: {'C', 'F', 'A', 'K'}(izbirno)
Če nastavimo parameter reda na 'C', to pomeni, da se matrika splošči v vrstnem redu glavne vrstice. Če je nastavljeno »F«, se matrika splošči v vrstnem redu glavnih stolpcev. Matrika je sploščena v glavnem vrstnem redu stolpcev le, če je 'a' Fortran sosednji v pomnilniku in ko nastavimo parameter vrstnega reda na 'A'. Zadnji vrstni red je 'K', ki poravna matriko v istem vrstnem redu, v katerem so se elementi pojavili v pomnilniku. Privzeto je ta parameter nastavljen na 'C'.
Vrne:
y: ndarray
Ta funkcija vrne kopijo izvorne matrike, ki se splošči v enodimenzionalno.
10 ml je koliko
Primer 1:
import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten() b
Izhod:
array([1, 4, 7, 2, 5, 8, 3, 6, 9])
V zgornji kodi
- Uvozili smo numpy z vzdevkom np.
- Z uporabo smo ustvarili večdimenzionalno matriko 'a' niz() funkcijo.
- Razglasili smo spremenljivko 'b' in ji dodelili vrnjeno vrednost izravnati() funkcijo.
- Nazadnje smo poskušali natisniti vrednost 'b' .
V izhodu prikaže ndarray, ki vsebuje elemente večdimenzionalne matrike v 1-D.
Primer 2:
import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('C') b
Izhod:
array([1, 4, 7, 2, 5, 8, 3, 6, 9])
V zgornji kodi
- Uvozili smo numpy z vzdevkom np.
- Z uporabo smo ustvarili večdimenzionalno matriko 'a' niz() funkcijo.
- Razglasili smo spremenljivko 'b' in ji dodelili vrnjeno vrednost izravnati() funkcijo.
- V funkciji smo uporabili vrstni red 'C'.
- Nazadnje smo poskušali natisniti vrednost 'b' .
V izhodu prikaže ndarray, ki vsebuje elemente večdimenzionalne matrike v 1-D.
Primer 3:
import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('F') b
Izhod:
array([1, 2, 3, 4, 5, 6, 7, 8, 9])
Primer 4:
import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('A') b
Izhod:
array([1, 4, 7, 2, 5, 8, 3, 6, 9])
Primer 5:
import numpy as np a = np.array([[1,4,7], [2,5,8],[3,6,9]]) b=a.flatten('K') b
Izhod:
array([1, 4, 7, 2, 5, 8, 3, 6, 9])