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

bookZuweisung von Werten zu Indizierten Teilarrays

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

Beginnen wir zunächst mit der Zuweisung von Werten zu 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 (wenn es 1D ist); oder die Größe der zweiten Dimension (wenn der Slice 2D ist);
  • 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)
copy

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 ganzzahligen array-indizierten Teilarrays funktioniert genauso wie bei Slices. Die Zuweisung von Werten zu boolesch indizierten Teilarrays funktioniert genauso wie bei 1D-Slices.

Aufgabe

Swipe to start coding

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

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

close

bookZuweisung von Werten zu Indizierten Teilarrays

Swipe um das Menü anzuzeigen

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

Beginnen wir zunächst mit der Zuweisung von Werten zu 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 (wenn es 1D ist); oder die Größe der zweiten Dimension (wenn der Slice 2D ist);
  • 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)
copy

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 ganzzahligen array-indizierten Teilarrays funktioniert genauso wie bei Slices. Die Zuweisung von Werten zu boolesch indizierten Teilarrays funktioniert genauso wie bei 1D-Slices.

Aufgabe

Swipe to start coding

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

some-alt