Datalogi

Sådan bruges Python NumPy-omformning () -funktion

Sådan bruges Python NumPy-omformning () -funktion

NumPy-biblioteket har mange funktioner til at arbejde med det flerdimensionale array. reshape () -funktionen er en af ​​dem, der bruges til at ændre formen på et eksisterende array uden at ændre dataene. Formen definerer det samlede antal elementer i hver dimension.  Arrayets dimension kan tilføjes eller fjernes, og antallet af elementer i hver dimension kan ændres ved hjælp af funktionen reshape (). Det endimensionelle array kan konverteres til et multidimensionelt array, men det multidimensionelle array kan ikke konverteres til et endimensionelt array med denne funktion. Sådan omformes () funktion fungerer, og dens anvendelser forklares i denne vejledning.

Syntaks

Syntaksen for funktionen omformning () er angivet nedenfor.

np_array bedøvet.omforme (np_array, new_shape, order = 'C') 

Denne funktion kan tage tre argumenter. Det første og andet argument er obligatorisk, og det tredje argument er valgfrit. Et NumPy-array er værdien af ​​det første argument (np_array) der vil blive omformet. Arrayets form indstilles som det andet argument (ny_form) værdi, der kan være et heltal eller en tuple af heltal. Arrayets rækkefølge indstilles af det tredje argument (bestille) værdi, der bruges til at definere elementets position for det omformede array. Det tredje arguments værdi kan være 'C'eller'F'eller'EN.'Ordreværdien'C'bruges til C-stil indeksbestilling, hvor den sidste akseindeks ændres hurtigere og den første akseindeksændring langsommere. Ordreværdien 'F'bruges til indeksbestilling i Fortran-stil, hvor den første akseindeks ændres hurtigere, og den sidste akseindeks ændres langsommere. Begge 'C'og'Fordrer bruger ikke hukommelse. Ordreværdien, 'EN'fungerer som'F,'men det bruger hukommelse.

Brug af reshape () -funktionen:

Du skal installere NumPy-biblioteket, før du praktiserer eksemplerne på denne vejledning. Forskellige anvendelser af funktionen reshape () er vist i den del af denne vejledning.

Eksempel 1: Konverter et-dimensionelt array til et to-dimensionelt array

Følgende eksempel viser funktionen reshape () til at konvertere et endimensionelt NumPy-array til et to-dimensionelt NumPy-array. arange () -funktionen bruges i scriptet til at oprette et endimensionelt array med 10 elementer. Den første reshape-funktion () bruges til at konvertere det endimensionale array til det to-dimensionelle array med 2 rækker og 5 kolonner. Her kaldes funktionen til omformning () ved hjælp af modulnavnet, np. Den anden funktion () omformes () bruges til at konvertere det endimensionale array til det todimensionale array med 5 rækker og 2 kolonner. Her kaldes funktionen til omformning () ved hjælp af NumPy-arrayet np_array.

# Importer NumPy
importer numpy som np
# Opret et NumPy-array af rækkeværdier
np_array = np.sort (10)
# Udskriv NumPy-matrixværdierne
print ("Værdierne for NumPy-array: \ n", np_array)
# Omform arrayet med 2 rækker og 5 kolonner
new_array = np.omforme (np_array, (2, 5))
# Udskriv de omformede værdier
print ("\ nDen omformede matrix med 2 rækker og 5 kolonner: \ n", new_array)
# Omform array med 5 rækker og 2 kolonner
new_array = np_array.omforme (5, 2)
# Udskriv de omformede værdier
print ("\ nDen omformede matrix med 5 rækker og 2 kolonner: \ n", new_array)

Produktion:

Følgende output vises efter udførelse af ovenstående script. Den første output viser hovedarrayet. Den anden og tredje output viser det omformede array.

Eksempel 2: Konverter et-dimensionelt array til et tredimensionelt array

Følgende eksempel viser funktionen reshape () til at konvertere et endimensionelt NumPy-array til et tredimensionelt NumPy-array. array () -funktion bruges i scriptet til at oprette et endimensionelt array med 12 elementer. reshape () -funktion bruges til at konvertere det oprettede endimensionale array til det tredimensionale array. Her kaldes funktionen til omformning () ved hjælp af NumPy-arrayet np_array.

# Importer NumPy
importer numpy som np
# Opret et NumPy-array ved hjælp af listen
np_array = np.array ([7, 3, 9, 11, 4, 23, 71, 2, 32, 6, 16, 2])
# Udskriv NumPy-matrixværdierne
print ("Værdierne for NumPy-array: \ n", np_array)
# Opret et tredimensionelt array fra et endimensionelt array
new_array = np_array.omforme (2, 2, 3)
# Udskriv de omformede værdier
print ("\ nDen omformede 3D-matrixværdier er: \ n", new_array)

Produktion:

Følgende output vises efter udførelse af ovenstående script. Den første output viser hovedarrayet. Den anden output viser det omformede array.

Eksempel 3: Omform NumPy-array baseret på bestilling

Følgende eksempel viser funktionen reshape () til at konvertere et endimensionelt NumPy-array til et to-dimensionelt NumPy-array med forskellige ordretyper. arange () -funktionen bruges i scriptet til at oprette et endimensionelt array med 15 elementer. Den første omformning () -funktion bruges til at oprette et todimensionelt array på 3 rækker og 5 kolonner med C-stilbestilling. Den anden omformning () -funktion bruges til at oprette et todimensionelt array med 3 rækker og 5 kolonner med Fortran-stilbestilling.

# Importer NumPy
importer numpy som np
# Opret et NumPy-array af rækkeværdier
np_array = np.arange (15)
# Udskriv værdierne for NumPy-arrayet
print ("Værdierne for NumPy-array: \ n", np_array)
# Omform arrayet baseret på C-stilbestilling
new_array1 = np.omforme (np_array, (3, 5), rækkefølge = 'C')
# Udskriv de omformede værdier
print ("\ nDen omformede 2D-array-værdier baseret på C-stilbestilling er: \ n", new_array1)
# Omform arrayet baseret på Fortran-stilbestilling
new_array2 = np.omforme (np_array, (3, 5), rækkefølge = 'F')
# Udskriv de omformede værdier
print ("\ nDen omformede 2D-array-værdier baseret på Fortran-stilbestilling er: \ n", new_array2)

Produktion:

Følgende output vises efter udførelse af ovenstående script. Den første output viser det vigtigste array af værdier. Den anden output viser arrayværdierne med rækkebaseret rækkefølge. Den tredje output viser arrayværdierne med søjlebaseret rækkefølge.

Konklusion

Måderne til at konvertere arrayet fra en form til en anden form ved hjælp af funktionen reshape () er beskrevet i denne vejledning. Formålet med at bruge funktionen reshape () ryddes efter at have praktiseret eksemplerne i denne vejledning, og læserne vil være i stand til at bruge denne funktion i deres python-script.

Kæmp om Wesnoth-vejledning
Slaget om Wesnoth er et af de mest populære open source-strategispil, som du kan spille på dette tidspunkt. Ikke kun har dette spil været under udvikl...
0 A.D. Vejledning
Ud af de mange strategispil derude, 0 A.D. formår at skille sig ud som en omfattende titel og et meget dybt, taktisk spil på trods af at det er open s...
Unity3D Tutorial
Introduktion til Unity 3D Unity 3D er en kraftfuld spiludviklingsmotor. Det er cross platform, det er det giver dig mulighed for at oprette spil til m...