Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Taulukoiden Muotoilu | Yleisesti Käytetyt NumPy-Funktiot
Ultimate NumPy

bookTaulukoiden Muotoilu

Taulukon muotoilu NumPyssa mahdollistaa taulukon muodon muuttamisen säilyttäen kaikki alkiot. Tämä on yleinen operaatio koneoppimisessa, sillä monet koneoppimiskirjastojen funktiot ja metodit vaativat taulukoilta tietyn muodon.

Taulukon muodot

Note
Määritelmä

NumPy-taulukon shape on tuple, joka ilmaisee alkioiden määrän jokaisella ulottuvuudella (akselilla).

Esimerkiksi 1-ulotteisella taulukolla, jonka pituus on 5, on muoto (5,), kun taas 2-ulotteisella taulukolla, jossa on 3 riviä ja 4 saraketta, on muoto (3, 4):

1234
import numpy as np array_1d = np.array([5, 7, 1, 10, 9]) array_2d = np.zeros((3, 4)) print(array_1d.shape, array_2d.shape)
copy

ndarray.reshape()

NumPy-taulukoilla on .reshape()-metodi muodon muuttamiseen. Sinun tarvitsee vain antaa tulostaulukon muoto joko kokonaislukuna, kokonaislukujen tuplena tai kokonaisluvut erillisinä argumentteina.

Tämä metodi ei muuta taulukkoa paikan päällä, vaan palauttaa uuden taulukon.

Note
Huomio

Itse asiassa .reshape() palauttaa näkymän alkuperäisestä taulukosta, joten kaikki muutokset uudelleenmuotoiltuun taulukkoon vaikuttavat myös alkuperäiseen taulukkoon.

123456789
import numpy as np # Creating a 1D array from 0 to 11 inclusive array = np.arange(12) # Reshaping the array to a 3x4 2D array (matrix) reshaped_array_2d = array.reshape(3, 4) print(reshaped_array_2d) # Reshaping the array to a 2x2x3 3D array reshaped_array_3d = array.reshape(2, 2, 3) print(reshaped_array_3d)
copy
Note
Huomio

Uudelleenmuotoillun taulukon alkioiden määrän on oltava sama kuin alkuperäisessä taulukossa, joten et voi antaa mielivaltaista muotoa.

Esimerkissämme taulukon muotoilu 3 rivin ja 4 sarakkeen muotoon (3x4) tai 2 lohkon, joissa kummassakin on 2 riviä ja 3 saraketta (2x2x3), johtaa edelleen yhteensä 12 alkioon.

Muotoilu -1:llä

NumPyssa kun käytät -1 arvoa .reshape()-metodissa, se laskee automaattisesti kyseisen ulottuvuuden koon alkuperäisen taulukon koon perusteella, pitäen alkioiden kokonaismäärän samana.

.reshape(-1, 1) on erityisen hyödyllinen koneoppimisessa, kun täytyy muotoilla 1-ulotteinen taulukko 2-ulotteiseksi taulukoksi, jossa on yksi sarake. Rivien määrä tässä tapauksessa vastaa alkioiden määrää (lasketaan automaattisesti).

123456
import numpy as np # Creating a 1D array from 0 to 4 inclusive array = np.arange(5) # Reshaping the array to a 2D array with one column reshaped_array = array.reshape(-1, 1) print(reshaped_array)
copy

Uudelleenmuotoiltu taulukko tallennetaan 2D-taulukkona, jossa on 5 riviä ja 1 sarake, muodossa (5, 1). Alkuperäinen 1D-taulukko puolestaan on muodossa (5,), joka on yksielementtinen tuple. Kaikille 1D-taulukoille muoto on aina (n,), missä n tarkoittaa alkioiden määrää.

numpy.reshape()

NumPy-kirjaston reshape()-funktio on identtinen .reshape()-metodin kanssa, mutta sille tulee antaa taulukko ensimmäisenä argumenttina. shape-parametrille voi antaa joko kokonaislukujen tuplen tai yksittäisen kokonaisluvun, esimerkiksi np.reshape(array, (3, 4)):

123456
import numpy as np # Creating a 1D array from 0 to 11 inclusive array = np.arange(12) # Reshaping the array to a 3x4 2D array (matrix) reshaped_array_2d = np.reshape(array, (3, 4)) print(reshaped_array_2d)
copy
Tehtävä

Swipe to start coding

Sinulla on sales_data_2021-taulukko, joka sisältää simuloidut neljännesvuosittaiset myyntitiedot kahdelle tuotteelle vuodelta 2021. Ensimmäiset 4 alkiota edustavat ensimmäisen tuotteen neljännesvuosimyyntiä, ja viimeiset 4 alkiota edustavat toisen tuotteen neljännesvuosimyyntiä.

  1. Käytä sopivaa sales_data_2021-taulukon metodia muuttaaksesi se kaksiulotteiseksi taulukoksi.
  2. Ensimmäisen rivin tulee sisältää ensimmäisen tuotteen neljännesvuosimyynnit.
  3. Toisen rivin tulee sisältää toisen tuotteen neljännesvuosimyynnit.

Ratkaisu

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 4
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

close

Awesome!

Completion rate improved to 3.7

bookTaulukoiden Muotoilu

Pyyhkäise näyttääksesi valikon

Taulukon muotoilu NumPyssa mahdollistaa taulukon muodon muuttamisen säilyttäen kaikki alkiot. Tämä on yleinen operaatio koneoppimisessa, sillä monet koneoppimiskirjastojen funktiot ja metodit vaativat taulukoilta tietyn muodon.

Taulukon muodot

Note
Määritelmä

NumPy-taulukon shape on tuple, joka ilmaisee alkioiden määrän jokaisella ulottuvuudella (akselilla).

Esimerkiksi 1-ulotteisella taulukolla, jonka pituus on 5, on muoto (5,), kun taas 2-ulotteisella taulukolla, jossa on 3 riviä ja 4 saraketta, on muoto (3, 4):

1234
import numpy as np array_1d = np.array([5, 7, 1, 10, 9]) array_2d = np.zeros((3, 4)) print(array_1d.shape, array_2d.shape)
copy

ndarray.reshape()

NumPy-taulukoilla on .reshape()-metodi muodon muuttamiseen. Sinun tarvitsee vain antaa tulostaulukon muoto joko kokonaislukuna, kokonaislukujen tuplena tai kokonaisluvut erillisinä argumentteina.

Tämä metodi ei muuta taulukkoa paikan päällä, vaan palauttaa uuden taulukon.

Note
Huomio

Itse asiassa .reshape() palauttaa näkymän alkuperäisestä taulukosta, joten kaikki muutokset uudelleenmuotoiltuun taulukkoon vaikuttavat myös alkuperäiseen taulukkoon.

123456789
import numpy as np # Creating a 1D array from 0 to 11 inclusive array = np.arange(12) # Reshaping the array to a 3x4 2D array (matrix) reshaped_array_2d = array.reshape(3, 4) print(reshaped_array_2d) # Reshaping the array to a 2x2x3 3D array reshaped_array_3d = array.reshape(2, 2, 3) print(reshaped_array_3d)
copy
Note
Huomio

Uudelleenmuotoillun taulukon alkioiden määrän on oltava sama kuin alkuperäisessä taulukossa, joten et voi antaa mielivaltaista muotoa.

Esimerkissämme taulukon muotoilu 3 rivin ja 4 sarakkeen muotoon (3x4) tai 2 lohkon, joissa kummassakin on 2 riviä ja 3 saraketta (2x2x3), johtaa edelleen yhteensä 12 alkioon.

Muotoilu -1:llä

NumPyssa kun käytät -1 arvoa .reshape()-metodissa, se laskee automaattisesti kyseisen ulottuvuuden koon alkuperäisen taulukon koon perusteella, pitäen alkioiden kokonaismäärän samana.

.reshape(-1, 1) on erityisen hyödyllinen koneoppimisessa, kun täytyy muotoilla 1-ulotteinen taulukko 2-ulotteiseksi taulukoksi, jossa on yksi sarake. Rivien määrä tässä tapauksessa vastaa alkioiden määrää (lasketaan automaattisesti).

123456
import numpy as np # Creating a 1D array from 0 to 4 inclusive array = np.arange(5) # Reshaping the array to a 2D array with one column reshaped_array = array.reshape(-1, 1) print(reshaped_array)
copy

Uudelleenmuotoiltu taulukko tallennetaan 2D-taulukkona, jossa on 5 riviä ja 1 sarake, muodossa (5, 1). Alkuperäinen 1D-taulukko puolestaan on muodossa (5,), joka on yksielementtinen tuple. Kaikille 1D-taulukoille muoto on aina (n,), missä n tarkoittaa alkioiden määrää.

numpy.reshape()

NumPy-kirjaston reshape()-funktio on identtinen .reshape()-metodin kanssa, mutta sille tulee antaa taulukko ensimmäisenä argumenttina. shape-parametrille voi antaa joko kokonaislukujen tuplen tai yksittäisen kokonaisluvun, esimerkiksi np.reshape(array, (3, 4)):

123456
import numpy as np # Creating a 1D array from 0 to 11 inclusive array = np.arange(12) # Reshaping the array to a 3x4 2D array (matrix) reshaped_array_2d = np.reshape(array, (3, 4)) print(reshaped_array_2d)
copy
Tehtävä

Swipe to start coding

Sinulla on sales_data_2021-taulukko, joka sisältää simuloidut neljännesvuosittaiset myyntitiedot kahdelle tuotteelle vuodelta 2021. Ensimmäiset 4 alkiota edustavat ensimmäisen tuotteen neljännesvuosimyyntiä, ja viimeiset 4 alkiota edustavat toisen tuotteen neljännesvuosimyyntiä.

  1. Käytä sopivaa sales_data_2021-taulukon metodia muuttaaksesi se kaksiulotteiseksi taulukoksi.
  2. Ensimmäisen rivin tulee sisältää ensimmäisen tuotteen neljännesvuosimyynnit.
  3. Toisen rivin tulee sisältää toisen tuotteen neljännesvuosimyynnit.

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 4
single

single

some-alt