Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Zuweisung von Werten zu Indizierten Teilarrays | Indizierung und Slicing
Numpy-Grundlagen
Abschnitt 2. Kapitel 10
single

single

Zuweisung von Werten zu Indizierten Teilarrays

Swipe um das Menü anzuzeigen

Mit indizierten Arrays wird es interessanter. Hier liegt der Fokus auf 1D- und 2D-Teilarrays, da 3D-Teilarrays in der Praxis selten verwendet werden.

Betrachtung der Wertzuweisung an Slices. Die allgemeine Syntax lautet: slice = values, wobei slice ein Ausschnitt eines bestimmten Arrays ist und values die zuzuweisenden Werte sind.

Mögliche Formate von values:

  • ein einzelner Skalar (Zahl);
  • ein 1D-Array mit derselben Größe wie der Slice (bei 1D) oder der Größe der zweiten Dimension (bei 2D-Slices);
  • ein 2D-Array mit derselben Form wie ein 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)
Zuweisung von Werten zu einem 1D-Slice
Zuweisung von Werten zu einem 2D-Slice

Wenn ein Skalar einem 1D-Slice zugewiesen wird, wird dieser Skalar jedem Element des Slices zugewiesen. Wenn ein 1D-Array einem 2D-Slice zugewiesen wird, wird dieses 1D-Array jedem 1D-Array im Slice zugewiesen. Die Zuweisung eines Skalars zu einem 2D-Slice funktioniert genauso wie bei einem 1D-Slice.

Die Zuweisung von Werten zu Subarrays mit Integer-Array-Indexierung funktioniert genauso wie bei Slices. Die Zuweisung von Werten zu Subarrays mit boolescher Indexierung funktioniert genauso wie bei 1D-Slices.

Aufgabe

Wischen, um mit dem Codieren zu beginnen

Sie verwalten einen Datensatz mit Produktpreisen und Bewertungen. Die Preise sind im Array prices gespeichert, die Bewertungen (auf einer Skala von 10) im Array ratings. Ihre Aufgabe ist es, diese basierend auf bestimmten Kriterien zu aktualisieren:

  1. Weisen Sie jedem Element in 20, das größer als 10 ist, mithilfe eines Skalars den Wert prices zu.
  2. Weisen Sie ein NumPy-Array mit den Elementen 9, 8 den letzten beiden Elementen der zweiten Zeile von ratings zu. Verwenden Sie dabei einen positiven Zeilenindex und Slicing.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 10
single

single

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

some-alt