Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Moniulotteinen Indeksointi | Indeksointi ja Viipalointi
Ultimate NumPy

bookMoniulotteinen Indeksointi

Nyt kun osaat hakea alkioita 1D-taulukoista, on aika oppia indeksointia korkeamman ulottuvuuden taulukoissa.

2D-taulukoiden indeksointi

Tämä on 2x3-taulukko, mikä tarkoittaa, että siinä on 2 1D-taulukkoa pitkin akselia 0, ja jokaisessa näistä 1D-taulukoista on 3 alkiota pitkin akselia 1.

Alla olevat kuvat havainnollistavat positiivista ja negatiivista indeksointia 2D-taulukoissa (taulukon arvot on esitetty mustalla, positiiviset indeksit vihreällä ja negatiiviset indeksit punaisella):

Alkioiden hakeminen 2D-taulukoista

1D-taulukoissa alkiot haettiin määrittämällä alkion indeksi hakasulkeissa. Jos teemme saman 2D-taulukoissa, saamme 1D-taulukon annetulla indeksillä, mikä voi olla juuri haluttu tulos.

Jos kuitenkin haluamme hakea tietyn alkion sisäisestä 1D-taulukosta, meidän tulee määrittää 1D-taulukon indeksi (akseli 0) ja sen alkion indeksi (akseli 1), esimerkiksi array[0, 1]. Voimme myös kirjoittaa array[0][1] kuten Pythonin list-rakenteessa, mutta tämä on tehottomampaa, koska haku suoritetaan kahdesti jokaista indeksiä kohden yhden sijaan.

Note
Huomio

Jos annettu indeksi ylittää sallitun rajan, heitetään IndexError, joten ole tarkkana tämän kanssa.

12345678
import numpy as np array_2d = np.array([[1, 2, 3], [4, 5, 6]]) # Accessing the first element (1D array) with positive index print(array_2d[0]) # Accessing the second element of the first 1D array with positive index print(array_2d[0, 1]) # Accessing the last element of the last 1D array with negative index print(array_2d[-1, -1])
copy

Alla oleva kuva esittää tehtävässä käytetyn stock_prices-taulukon rakenteen:

Tehtävä

Swipe to start coding

stock_prices sisältää viiden päivän ajan simuloituja osakekursseja viidelle eri yritykselle. Jokainen rivi vastaa tiettyä yritystä, ja jokainen sarake vastaa tiettyä päivää. Näin ollen jokainen alkio matriisissa edustaa tietyn yrityksen osakkeen päätöskurssia tiettynä päivänä.

  1. Hae ensimmäisen yrityksen kaikki osakekurssit viiden päivän ajalta käyttäen positiivista indeksointia.
  2. Hae kolmannen yrityksen osakekurssi toisena päivänä käyttäen positiivista indeksointia.
  3. Hae viimeisen yrityksen osakekurssi viimeisenä päivänä käyttäen negatiivista indeksointia.

Ratkaisu

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 2
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

bookMoniulotteinen Indeksointi

Pyyhkäise näyttääksesi valikon

Nyt kun osaat hakea alkioita 1D-taulukoista, on aika oppia indeksointia korkeamman ulottuvuuden taulukoissa.

2D-taulukoiden indeksointi

Tämä on 2x3-taulukko, mikä tarkoittaa, että siinä on 2 1D-taulukkoa pitkin akselia 0, ja jokaisessa näistä 1D-taulukoista on 3 alkiota pitkin akselia 1.

Alla olevat kuvat havainnollistavat positiivista ja negatiivista indeksointia 2D-taulukoissa (taulukon arvot on esitetty mustalla, positiiviset indeksit vihreällä ja negatiiviset indeksit punaisella):

Alkioiden hakeminen 2D-taulukoista

1D-taulukoissa alkiot haettiin määrittämällä alkion indeksi hakasulkeissa. Jos teemme saman 2D-taulukoissa, saamme 1D-taulukon annetulla indeksillä, mikä voi olla juuri haluttu tulos.

Jos kuitenkin haluamme hakea tietyn alkion sisäisestä 1D-taulukosta, meidän tulee määrittää 1D-taulukon indeksi (akseli 0) ja sen alkion indeksi (akseli 1), esimerkiksi array[0, 1]. Voimme myös kirjoittaa array[0][1] kuten Pythonin list-rakenteessa, mutta tämä on tehottomampaa, koska haku suoritetaan kahdesti jokaista indeksiä kohden yhden sijaan.

Note
Huomio

Jos annettu indeksi ylittää sallitun rajan, heitetään IndexError, joten ole tarkkana tämän kanssa.

12345678
import numpy as np array_2d = np.array([[1, 2, 3], [4, 5, 6]]) # Accessing the first element (1D array) with positive index print(array_2d[0]) # Accessing the second element of the first 1D array with positive index print(array_2d[0, 1]) # Accessing the last element of the last 1D array with negative index print(array_2d[-1, -1])
copy

Alla oleva kuva esittää tehtävässä käytetyn stock_prices-taulukon rakenteen:

Tehtävä

Swipe to start coding

stock_prices sisältää viiden päivän ajan simuloituja osakekursseja viidelle eri yritykselle. Jokainen rivi vastaa tiettyä yritystä, ja jokainen sarake vastaa tiettyä päivää. Näin ollen jokainen alkio matriisissa edustaa tietyn yrityksen osakkeen päätöskurssia tiettynä päivänä.

  1. Hae ensimmäisen yrityksen kaikki osakekurssit viiden päivän ajalta käyttäen positiivista indeksointia.
  2. Hae kolmannen yrityksen osakekurssi toisena päivänä käyttäen positiivista indeksointia.
  3. Hae viimeisen yrityksen osakekurssi viimeisenä päivänä käyttäen negatiivista indeksointia.

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 2. Luku 2
single

single

some-alt