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

bookViipalointi 2D-Taulukoissa

Viipalointi 2D- ja korkeamman ulottuvuuden taulukoissa toimii samalla tavalla kuin viipalointi 1D-taulukoissa. 2D-taulukoissa on kuitenkin kaksi akselia.

Jos halutaan suorittaa viipalointi vain akselilla 0 ja hakea 1D-taulukoita, syntaksi pysyy samana: array[start:end:step]. Jos halutaan viipaloida näiden 1D-taulukoiden alkioita (akseli 1), syntaksi on seuraava: array[start:end:step, start:end:step]. Käytännössä viipalointien määrä vastaa taulukon ulottuvuuksien määrää.

Lisäksi voimme käyttää viipalointia yhdellä akselilla ja perusindeksointia toisella akselilla. Tarkastellaan esimerkkiä 2D-viipaloinnista (violetit ruudut kuvaavat viipaloinnilla haettuja alkioita ja musta nuoli osoittaa, että alkiot otetaan käänteisessä järjestyksessä):

1234567891011
import numpy as np array_2d = np.array([ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12] ]) print(array_2d[1:]) print(array_2d[:, 0]) print(array_2d[1:, 1:-1]) print(array_2d[:-1, ::2]) print(array_2d[2, ::-1])
copy

Alla oleva kuva esittää tehtävässä käytetyn student_scores-taulukon rakennetta:

Tehtävä

Swipe to start coding

Työskentelet 2D NumPy-taulukon kanssa, joka esittää kolmen opiskelijan pisteitä kolmessa eri aineessa. Jokaisen opiskelijan pisteet on tallennettu omalle rivilleen, ja jokainen alkio edustaa pistettä tietyssä aineessa.

  1. Luo viipale student_scores -taulukosta, joka sisältää ensimmäisen opiskelijan (ensimmäinen rivi) kaksi viimeistä pistettä.
  2. Käytä perusindeksointia (positiivinen indeksointi) ja viipalointia, määrittäen vain positiivinen start.

Ratkaisu

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 4
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

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

Suggested prompts:

Can you explain what each slicing operation in the code does?

How does slicing work differently in higher-dimensional arrays?

Can you provide more examples of 2D array slicing?

close

Awesome!

Completion rate improved to 3.7

bookViipalointi 2D-Taulukoissa

Pyyhkäise näyttääksesi valikon

Viipalointi 2D- ja korkeamman ulottuvuuden taulukoissa toimii samalla tavalla kuin viipalointi 1D-taulukoissa. 2D-taulukoissa on kuitenkin kaksi akselia.

Jos halutaan suorittaa viipalointi vain akselilla 0 ja hakea 1D-taulukoita, syntaksi pysyy samana: array[start:end:step]. Jos halutaan viipaloida näiden 1D-taulukoiden alkioita (akseli 1), syntaksi on seuraava: array[start:end:step, start:end:step]. Käytännössä viipalointien määrä vastaa taulukon ulottuvuuksien määrää.

Lisäksi voimme käyttää viipalointia yhdellä akselilla ja perusindeksointia toisella akselilla. Tarkastellaan esimerkkiä 2D-viipaloinnista (violetit ruudut kuvaavat viipaloinnilla haettuja alkioita ja musta nuoli osoittaa, että alkiot otetaan käänteisessä järjestyksessä):

1234567891011
import numpy as np array_2d = np.array([ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12] ]) print(array_2d[1:]) print(array_2d[:, 0]) print(array_2d[1:, 1:-1]) print(array_2d[:-1, ::2]) print(array_2d[2, ::-1])
copy

Alla oleva kuva esittää tehtävässä käytetyn student_scores-taulukon rakennetta:

Tehtävä

Swipe to start coding

Työskentelet 2D NumPy-taulukon kanssa, joka esittää kolmen opiskelijan pisteitä kolmessa eri aineessa. Jokaisen opiskelijan pisteet on tallennettu omalle rivilleen, ja jokainen alkio edustaa pistettä tietyssä aineessa.

  1. Luo viipale student_scores -taulukosta, joka sisältää ensimmäisen opiskelijan (ensimmäinen rivi) kaksi viimeistä pistettä.
  2. Käytä perusindeksointia (positiivinen indeksointi) ja viipalointia, määrittäen vain positiivinen start.

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 4
single

single

some-alt