Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Waarden Toewijzen aan Geïndexeerde Subarrays | Indexering en Slicing
Numpy Basisprincipes

bookWaarden Toewijzen aan Geïndexeerde Subarrays

Met geïndexeerde arrays wordt het interessanter. Hier richten we ons op 1D- en 2D-subarrays, aangezien 3D-subarrays zelden in de praktijk worden gebruikt.

Laten we eerst beginnen met het toewijzen van waarden aan slices. De algemene syntaxis ziet er als volgt uit: slice = values, waarbij slice een deel van een bepaalde array is en values de toe te wijzen waarden zijn.

Mogelijke formaten van values:

  • een enkele scalair (getal);
  • een 1D-array van dezelfde grootte als de slice (als deze 1D is); of de grootte van de tweede dimensie (als de slice 2D is);
  • een 2D-array met dezelfde vorm als een 2D-slice.
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

Wanneer we een scalair toewijzen aan een 1D-slice, wordt deze scalair toegewezen aan elk element van de slice. Wanneer een 1D-array wordt toegewezen aan een 2D-slice, wordt deze 1D-array toegewezen aan elke 1D-array in de slice. Het toewijzen van een scalair aan een 2D-slice werkt hetzelfde als bij een 1D-slice.

Waarden toewijzen aan geheel getal array-geïndexeerde subarrays werkt op dezelfde manier als bij slices. Waarden toewijzen aan booleaans geïndexeerde subarrays werkt op dezelfde manier als bij 1D-slices.

Taak

Swipe to start coding

Je beheert een dataset met productprijzen en beoordelingen. De prijzen zijn opgeslagen in de array prices, en de beoordelingen (uit 10) zijn opgeslagen in de array ratings. Je taak is om deze bij te werken op basis van specifieke criteria:

  1. Wijs de waarde 20 toe aan elk element in prices dat groter is dan 10 met behulp van een scalair.
  2. Wijs een NumPy-array met de elementen 9, 8 toe aan de laatste twee elementen van de tweede rij van ratings. Gebruik een positieve rij-index en slicing.

Oplossing

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 10
single

single

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

close

bookWaarden Toewijzen aan Geïndexeerde Subarrays

Veeg om het menu te tonen

Met geïndexeerde arrays wordt het interessanter. Hier richten we ons op 1D- en 2D-subarrays, aangezien 3D-subarrays zelden in de praktijk worden gebruikt.

Laten we eerst beginnen met het toewijzen van waarden aan slices. De algemene syntaxis ziet er als volgt uit: slice = values, waarbij slice een deel van een bepaalde array is en values de toe te wijzen waarden zijn.

Mogelijke formaten van values:

  • een enkele scalair (getal);
  • een 1D-array van dezelfde grootte als de slice (als deze 1D is); of de grootte van de tweede dimensie (als de slice 2D is);
  • een 2D-array met dezelfde vorm als een 2D-slice.
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

Wanneer we een scalair toewijzen aan een 1D-slice, wordt deze scalair toegewezen aan elk element van de slice. Wanneer een 1D-array wordt toegewezen aan een 2D-slice, wordt deze 1D-array toegewezen aan elke 1D-array in de slice. Het toewijzen van een scalair aan een 2D-slice werkt hetzelfde als bij een 1D-slice.

Waarden toewijzen aan geheel getal array-geïndexeerde subarrays werkt op dezelfde manier als bij slices. Waarden toewijzen aan booleaans geïndexeerde subarrays werkt op dezelfde manier als bij 1D-slices.

Taak

Swipe to start coding

Je beheert een dataset met productprijzen en beoordelingen. De prijzen zijn opgeslagen in de array prices, en de beoordelingen (uit 10) zijn opgeslagen in de array ratings. Je taak is om deze bij te werken op basis van specifieke criteria:

  1. Wijs de waarde 20 toe aan elk element in prices dat groter is dan 10 met behulp van een scalair.
  2. Wijs een NumPy-array met de elementen 9, 8 toe aan de laatste twee elementen van de tweede rij van ratings. Gebruik een positieve rij-index en slicing.

Oplossing

Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 10
single

single

some-alt