Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Slicing in 2D-Arrays | Indizierung und Slicing
Numpy-Grundlagen
close
Abschnitt 2. Kapitel 4
single

single

bookSlicing in 2D-Arrays

Swipe um das Menü anzuzeigen

Das Slicing in 2D- und höherdimensionalen Arrays funktioniert ähnlich wie das Slicing in 1D-Arrays. In 2D-Arrays gibt es jedoch zwei Achsen.

Wenn das Slicing nur auf Achse 0 angewendet wird, um 1D-Arrays zu erhalten, bleibt die Syntax gleich: array[start:end:step]. Möchte man das Slicing auf die Elemente dieser 1D-Arrays (Achse 1) anwenden, lautet die Syntax: array[start:end:step, start:end:step]. Die Anzahl der Slices entspricht also der Anzahl der Dimensionen eines Arrays.

Außerdem kann das Slicing für eine Achse und das einfache Indexieren für die andere Achse verwendet werden. Im folgenden Beispiel wird das 2D-Slicing veranschaulicht (lila Felder stellen die durch das Slicing abgerufenen Elemente dar, und der schwarze Pfeil zeigt an, dass die Elemente in umgekehrter Reihenfolge entnommen werden):

1234567891011121314151617181920
import numpy as np array_2d = np.array([ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12] ]) # Initial Array print("Initial array_2d:\n", array_2d) # Rows from index 1 to the end print("\narray_2d[1:]:\n", array_2d[1:]) # All rows, first column only print("\narray_2d[:, 0]:\n", array_2d[:, 0]) # Subarray: rows from 1 to end, columns from 1 to second-to-last print("\narray_2d[1:, 1:-1]:\n", array_2d[1:, 1:-1]) # All rows except the last, every second column print("\narray_2d[:-1, ::2]:\n", array_2d[:-1, ::2]) # Third row (index 2) reversed print("\narray_2d[2, ::-1]:\n", array_2d[2, ::-1])
copy

Die folgende Abbildung zeigt die Struktur des in der Aufgabe verwendeten Arrays student_scores:

Aufgabe

Swipe to start coding

Sie arbeiten mit einem 2D-NumPy-Array, das die Ergebnisse von drei Studierenden in drei verschiedenen Fächern darstellt. Die Ergebnisse jeder Person sind in einer eigenen Zeile gespeichert, wobei jedes Element die Punktzahl in einem bestimmten Fach repräsentiert.

  1. Erstellen Sie einen Slice von student_scores, der die letzten beiden Ergebnisse der ersten Person (erste Zeile) enthält.
  2. Verwenden Sie grundlegendes Indexieren (positives Indexieren) und Slicing, wobei Sie nur einen positiven start-Wert angeben.

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