Numpy.reshape()-funktio on saatavilla NumPy-paketissa. Kuten nimestä voi päätellä, reshape tarkoittaa 'muodonmuutoksia'. Numpy.reshape()-funktio auttaa saamaan taulukolle uuden muodon muuttamatta sen tietoja.
Joskus meidän on muokattava tiedot leveästä pitkäksi. Joten tässä tilanteessa meidän on muotoiltava taulukko uudelleen käyttämällä reshape()-funktiota.
Syntaksi
numpy.reshape(arr, new_shape, order='C')
Parametrit
Reshape()-funktiolla on seuraavat parametrit:
1) arr: array_like
Tämä on ndarray. Tämä on lähdetaulukko, jonka haluamme muotoilla uudelleen. Tämä parametri on olennainen ja sillä on tärkeä rooli numpy.reshape()-funktiossa.
java lukea csv-tiedostoa
2) new_shape: int tai tuple of ints
Muodon, johon haluamme muuntaa alkuperäisen taulukon, tulee olla yhteensopiva alkuperäisen taulukon kanssa. Jos kokonaisluku, tuloksena on tämän pituinen 1-D-taulukko. Yksi muotomitta voi olla -1. Tässä arvo on likimääräinen taulukon pituudella ja jäljellä olevilla mitoilla.
3) järjestys: {'C', 'F', 'A'}, valinnainen
Näillä indeksien järjestysparametrilla on ratkaiseva rooli reshape()-funktiossa. Näitä indeksijärjesyksiä käytetään lähdetaulukon elementtien lukemiseen ja elementtien sijoittamiseen uudelleen muotoiltuun taulukkoon tätä indeksijärjestystä käyttämällä.
- Indeksijärjestys 'C' tarkoittaa niiden elementtien lukemista/kirjoittamista, jotka käyttävät C-tyyppistä indeksijärjestystä, jossa viimeinen akseliindeksi muuttuu nopeimmin, takaisin ensimmäisen akselin indeksiin, joka muuttuu hitain.
- Indeksijärjestys 'F' tarkoittaa niiden elementtien lukemista/kirjoittamista, jotka käyttävät Fortran-tyyppistä indeksijärjestystä, jossa viimeisen akselin indeksi muuttuu hitain ja ensimmäisen akselin indeksi muuttuu nopeimmin.
- C- ja F-järjestys ei ota huomioon taustalla olevan taulukon muistiasettelua ja viittaa vain indeksointijärjestykseen.
- Indeksijärjestys 'A' tarkoittaa elementtien lukemista/kirjoittamista Fortran-tyyppisessä indeksijärjestyksessä, kun arr on vierekkäinen muistissa, muuten käytä C-tyyppistä järjestystä.
Palauttaa
Tämä funktio palauttaa ndarray-arvon. Se on uusi näkymäobjekti, jos mahdollista; muuten siitä tulee kopio. Palautetun taulukon muistiasettelusta ei ole takeita.
Esimerkki 1: C-tyyppinen indeksijärjestys
import numpy as np x=np.arange(12) y=np.reshape(x, (4,3)) x y
Lähtö:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]])
Yllä olevassa koodissa
- Olemme tuoneet numpyn aliasnimellä np.
- Olemme luoneet taulukon 'a' käyttämällä np.arrange()-funktiota.
- Olemme ilmoittaneet muuttujan 'y' ja määrittäneet palautetun arvon np.reshape()-funktiolle.
- Olemme läpäisseet taulukon 'x' ja muodon funktiossa.
- Lopuksi yritimme tulostaa arr:n arvon.
Tulosteessa matriisi on esitetty kolmena rivinä ja neljänä sarakkeena.
Esimerkki 2: Vastaa C ravel ja sitten C reshape
import numpy as np x=np.arange(12) y=np.reshape(np.ravel(x),(3,4)) x y
Ravel()-funktiota käytetään yhtenäisen litteän taulukon luomiseen. Palautetaan yksiulotteinen taulukko, joka sisältää syötteen elementit. Kopio tehdään vain silloin, kun sitä tarvitaan.
pyöreä matematiikka java
Lähtö:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]])
Esimerkki 3: Fortran-tyyppinen indeksijärjestys
import numpy as np x=np.arange(12) y=np.reshape(x, (4, 3), order='F') x y
Lähtö:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) array([[ 0, 4, 8], [ 1, 5, 9], [ 2, 6, 10], [ 3, 7, 11]])
Yllä olevassa koodissa
- Olemme tuoneet numpyn aliasnimellä np.
- Olemme luoneet taulukon 'a' käyttämällä np.arrange()-funktiota.
- Olemme ilmoittaneet muuttujan 'y' ja määrittäneet funktion np.reshape() palautetun arvon.
- Olemme läpäisseet taulukon 'x' sekä muodon ja Fortranin kaltaisen indeksijärjestyksen funktiossa.
- Lopuksi yritimme tulostaa arr:n arvon.
Tulosteessa matriisi on esitetty neljänä rivinä ja kolmena sarakkeena.
Esimerkki 4: Fortran-tyyppinen indeksijärjestys
import numpy as np x=np.arange(12) y=np.reshape(np.ravel(x, order='F'), (4, 3), order='F') x y
Lähtö:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) array([[ 0, 4, 8], [ 1, 5, 9], [ 2, 6, 10], [ 3, 7, 11]])
Esimerkki 5: Määrittämättömäksi arvoksi päätellään 2
import numpy as np x=np.arange(12) y=np.reshape(x, (2, -1)) x y
Yllä olevassa koodissa
- Olemme tuoneet numpyn aliasnimellä np.
- Olemme luoneet taulukon 'a' käyttämällä np.arrange()-funktiota.
- Olemme ilmoittaneet muuttujan 'y' ja määrittäneet palautetun arvon np.reshape()-funktiolle.
- Olemme ohittaneet taulukon 'x' ja muodon (määrittämätön arvo) funktiossa.
- Lopuksi yritimme tulostaa arr:n arvon.
Tulosteessa matriisi on esitetty kahdella rivillä ja viidellä sarakkeella.
Lähtö:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) array([[ 0, 1, 2, 3, 4, 5], [ 6, 7, 8, 9, 10, 11]])