Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Arvojen Asettaminen Indeksoituihin Osataulukoihin | Indeksointi ja Viipalointi
Numpy Perusteet
Osio 2. Luku 10
single

single

bookArvojen Asettaminen Indeksoituihin Osataulukoihin

Pyyhkäise näyttääksesi valikon

Indeksoitujen taulukoiden kanssa asiat muuttuvat mielenkiintoisemmiksi. Tässä keskitytään 1D- ja 2D-osataulukoihin, sillä 3D-osataulukoita käytetään harvoin käytännössä.

Aloitetaan arvojen asettamisesta viipaleille. Yleinen syntaksi on seuraava: slice = values, jossa slice on tietyn taulukon viipale ja values ovat asetettavat arvot.

Mahdolliset values-muodot:

  • Yksittäinen skalaarinen arvo (luku);
  • 1D-taulukko, jonka koko vastaa viipaletta (jos se on 1D); tai toisen ulottuvuuden koko (jos viipale on 2D);
  • 2D-taulukko, jonka muoto vastaa 2D-viipaletta.
123456789101112131415161718
import numpy as np array_1d = np.array([1, 4, 6, 2, 9]) # Assigning an array to the slice of array_1d array_1d[1:-1] = np.array([3, 5, 7]) print(array_1d) # Assigning a scalar to the slice of array_1d array_1d[1:-1] = 5 print(array_1d) array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]) # Assigning a 2D array to the slice of array_2d array_2d[1:3, 1:] = np.array([[20, 21], [40, 41]]) print(array_2d) # Assigning a 1D array to the slice of array_2d array_2d[1:3, 1:] = [50, 51] print(array_2d) # Assigning a scalar to the slice of array_2d array_2d[1:3, 1:] = 30 print(array_2d)
copy

Kun skalaarin arvo annetaan 1D-viipaleelle, tämä skalaari asetetaan jokaiseen viipaleen alkioon. Kun 1D-taulukko annetaan 2D-viipaleelle, tämä 1D-taulukko asetetaan jokaiseen 1D-taulukkoon viipaleessa. Skalaarin asettaminen 2D-viipaleelle toimii samalla tavalla kuin 1D-viipaleen kanssa.

Arvojen asettaminen kokonaislukutaulukolla indeksoituihin osataulukoihin toimii samalla tavalla kuin viipaleiden kanssa. Arvojen asettaminen totuusarvolla indeksoituihin osataulukoihin toimii samalla tavalla kuin 1D-viipaleiden kanssa.

Tehtävä

Pyyhkäise aloittaaksesi koodauksen

Hallitset tuotteen hintojen ja arvostelujen tietojoukkoa. Hinnat tallennetaan prices-taulukkoon ja arvostelut (asteikolla 10) tallennetaan ratings-taulukkoon. Tehtävänäsi on päivittää nämä tietyin ehdoin:

  1. Aseta arvo 20 kaikkiin prices-taulukon alkioihin, jotka ovat suurempia kuin 10, käyttäen skalaaria.
  2. Aseta NumPy-taulukko, jonka alkiot ovat 9, 8, ratings-taulukon toisen rivin kahteen viimeiseen alkioon. Käytä positiivista rivi-indeksiä ja viipalointia.

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

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

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

some-alt