Datu zinātne

Kā izmantot funkciju Python NumPy pārveidot ()

Kā izmantot funkciju Python NumPy pārveidot ()

NumPy bibliotēkai ir daudz funkciju darbam ar daudzdimensiju masīvu. funkcija reshape () ir viena no tām, kuru izmanto, lai mainītu jebkura esošā masīva formu, nemainot datus. Forma nosaka kopējo elementu skaitu katrā dimensijā.  Masīva izmēru var pievienot vai noņemt, un katrā dimensijā elementu skaitu var mainīt, izmantojot funkciju reshape (). Viendimensiju masīvu var pārveidot par daudzdimensiju masīvu, bet ar šo funkciju daudzdimensiju masīvu nevar pārveidot par viendimensiju masīvu. Kā pārveidot () funkciju, un tās lietojums ir paskaidrots šajā apmācībā.

Sintakse

Funkcijas pārveidošana () sintakse ir sniegta zemāk.

np_array numpy.pārveidot (np_array, new_shape, order = 'C') 

Šai funkcijai var būt trīs argumenti. Pirmais un otrais arguments ir obligāti, un trešais arguments nav obligāts. NumPy masīvs ir pirmā argumenta vērtība (np_array), kas tiks pārveidots. Masīva forma ir iestatīta kā otrais arguments (new_shape) vērtība, kas var būt vesels skaitlis vai vesels skaitlis. Masīva secību nosaka trešais arguments (rīkojumu) vērtība, ko izmanto, lai noteiktu pārveidotā masīva elementa pozīciju. Trešā argumenta vērtība var būtC"vai"F"vai"A.'Pasūtījuma vērtība'C'izmanto C stila indeksu pasūtīšanai, kur pēdējās ass indekss mainās ātrāk un pirmās ass indekss mainās lēnāk. Pasūtījuma vērtība 'F'izmanto Fortran stila indeksu pasūtīšanai, kur pirmās ass indekss mainās ātrāk un pēdējās ass indekss mainās lēnāk. AbiC' un 'F'pasūtījumi neizmanto atmiņu. Pasūtījuma vērtība, 'A"darbojas kā"F,bet tā izmanto atmiņu.

Pārveidošanas () funkcijas izmantošana:

Pirms praktizēt šīs apmācības piemērus, jums jāinstalē NumPy bibliotēka. Šīs apmācības daļā ir parādīti dažādi pārveidošanas () funkcijas izmantošanas veidi.

1. piemērs: Viendimensiju masīva pārveidošana par divdimensiju masīvu

Šajā piemērā parādīta pārveidošanas () funkcija, lai pārveidotu viendimensionālu NumPy masīvu divdimensionālā NumPy masīvā. Funkcija arange () tiek izmantota skriptā, lai izveidotu viendimensionālu 10 elementu masīvu. Pirmo funkciju pārveidot () izmanto, lai viendimensiju masīvu pārveidotu par divdimensiju 2 rindu un 5 kolonnu masīvu. Šeit tiek pārveidota () funkcija, izmantojot moduļa nosaukumu, np. Otro pārveidošanas () funkciju izmanto, lai viendimensiju masīvu pārveidotu par divdimensiju 5 rindu un 2 kolonnu masīvu. Šeit tiek izsaukta funkcija pārveidot (), izmantojot nosaukto masīvu NumPy np_array.

# Importēt NumPy
importēt numpy kā np
# Izveidojiet diapazona vērtību masīvu NumPy
np_array = np.apelsīns (10)
# Izdrukājiet masīva NumPy vērtības
print ("NumPy masīva vērtības: \ n", np_array)
# Pārveidojiet masīvu ar 2 rindām un 5 kolonnām
new_array = np.pārveidot (np_array, (2, 5))
# Izdrukājiet pārveidotās vērtības
print ("\ nPārveidots masīvs ar 2 rindām un 5 kolonnām: \ n", new_array)
# Pārveidojiet masīvu ar 5 rindām un 2 kolonnām
new_array = np_array.pārveidot (5, 2)
# Izdrukājiet pārveidotās vērtības
print ("\ nPārveidots masīvs ar 5 rindām un 2 kolonnām: \ n", new_array)

Rezultāts:

Pēc iepriekš minētā skripta izpildes parādīsies šāda izeja. Pirmais izvads parāda galveno masīvu. Otrajā un trešajā izvadā parādīts pārveidots masīvs.

2. piemērs: Viendimensiju masīva pārveidošana par trīsdimensiju masīvu

Šajā piemērā parādīta pārveidošanas () funkcija, lai pārveidotu viendimensionālu NumPy masīvu par trīsdimensiju NumPy masīvu. array () funkcija tiek izmantota skriptā, lai izveidotu 12 dimensiju masīvu. funkcija pārveidot () tiek izmantota, lai izveidoto viendimensiju masīvu pārveidotu par trīsdimensiju masīvu. Šeit tiek izsaukta funkcija pārveidot (), izmantojot nosaukto masīvu NumPy np_array.

# Importēt NumPy
importēt numpy kā np
# Izveidojiet NumPy masīvu, izmantojot sarakstu
np_array = np.masīvs ([7, 3, 9, 11, 4, 23, 71, 2, 32, 6, 16, 2])
# Izdrukājiet masīva NumPy vērtības
print ("NumPy masīva vērtības: \ n", np_array)
# Izveidojiet trīsdimensiju masīvu no viendimensiju masīva
new_array = np_array.pārveidot (2, 2, 3)
# Izdrukājiet pārveidotās vērtības
print ("\ nPārveidotās 3D masīva vērtības ir: \ n", new_array)

Rezultāts:

Pēc iepriekš minētā skripta izpildes parādīsies šāda izeja. Pirmais izvads parāda galveno masīvu. Otrais izvads parāda pārveidoto masīvu.

3. piemērs: pārveidojiet NumPy masīvu, pamatojoties uz pasūtīšanu

Šajā piemērā parādīta pārveidošanas () funkcija, lai pārveidotu viendimensionālu NumPy masīvu divdimensiju NumPy masīvā ar dažāda veida pasūtījumiem. Funkcija arange () tiek izmantota skriptā, lai izveidotu viendimensionālu 15 elementu masīvu. Pirmo funkciju pārveidot () izmanto, lai izveidotu divdimensiju 3 rindu un 5 kolonnu masīvu ar C stila secību. Otro funkciju pārveidot () izmanto, lai izveidotu divdimensiju 3 rindu un 5 kolonnu masīvu ar Fortran stila pasūtījumu.

# Importēt NumPy
importēt numpy kā np
# Izveidojiet diapazona vērtību masīvu NumPy
np_array = np.aranžs (15)
# Izdrukājiet masīva NumPy vērtības
print ("NumPy masīva vērtības: \ n", np_array)
# Pārveidojiet masīvu, pamatojoties uz C stila pasūtījumu
new_array1 = np.pārveidot (np_array, (3, 5), secība = 'C')
# Izdrukājiet pārveidotās vērtības
print ("\ nPārveidotās 2D masīva vērtības, kas balstītas uz C stila secību, ir: \ n", new_array1)
# Pārveidojiet masīvu, pamatojoties uz Fortran stila pasūtījumu
new_array2 = np.pārveidot (np_array, (3, 5), secība = 'F')
# Izdrukājiet pārveidotās vērtības
drukāt ("\ nPārveidotās 2D masīva vērtības, kuru pamatā ir Fortran stila kārtība, ir: \ n", new_array2)

Rezultāts:

Pēc iepriekš minētā skripta izpildes parādīsies šāda izeja. Pirmais izvads parāda galveno vērtību masīvu. Otrajā izvadē tiek parādītas masīva vērtības ar rindu kārtību. Trešajā izvadē tiek parādītas masīva vērtības ar secību pēc kolonnām.

Secinājums

Šajā apmācībā ir aprakstīti masīva pārveidošanas veidi no vienas formas uz citu, izmantojot funkciju reshape (). Funkcijas reshape () izmantošanas mērķis tiks notīrīts pēc šīs apmācības piemēru izmantošanas, un lasītāji varēs izmantot šo funkciju savā python skriptā.

Labākās Linux spēļu gamepad kartēšanas lietotnes
Ja jums patīk spēlēt spēles Linux ar parastu tastatūru, nevis parasto tastatūru un peles ievades sistēmu, jums ir dažas noderīgas lietotnes. Daudzas d...
Noderīgi rīki Linux spēlētājiem
Ja jums patīk spēlēt spēles Linux, iespējams, ka spēļu pieredzes uzlabošanai, iespējams, esat izmantojis tādas lietotnes un utilītprogrammas kā Wine, ...
HD Remastered spēles operētājsistēmai Linux, kurām nekad agrāk nebija Linux laidiena
Daudzi spēļu izstrādātāji un izdevēji nāk klajā ar veco spēļu HD remaster, lai pagarinātu franšīzes darbības laiku. Lūdzu, faniem, kas pieprasa saderī...