Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Skivning i 2D-arrayer | Indexering och Skivning
Numpy-Grunder
Avsnitt 2. Kapitel 4
single

single

bookSkivning i 2D-arrayer

Svep för att visa menyn

Slicing i 2D- och högre-dimensionella arrayer fungerar på liknande sätt som slicing i 1D-arrayer. I 2D-arrayer finns det dock två axlar.

Om vi vill utföra slicing endast på axel 0 för att hämta 1D-arrayer, förblir syntaxen densamma: array[start:end:step]. Om vi vill utföra slicing på elementen i dessa 1D-arrayer (axel 1), är syntaxen följande: array[start:end:step, start:end:step]. Antalet slices motsvarar alltså antalet dimensioner i en array.

Dessutom kan vi använda slicing för en axel och grundläggande indexering för den andra axeln. Nedan följer ett exempel på 2D-slicing (lila rutor representerar de element som hämtas genom slicing, och den svarta pilen visar att elementen tas i omvänd ordning):

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

Bilden nedan visar strukturen för arrayen student_scores som används i uppgiften:

Uppgift

Svep för att börja koda

Du arbetar med en 2D NumPy-array som representerar poängen för tre studenter i tre olika ämnen. Poängen för varje student lagras i en separat rad, där varje element representerar poängen i ett specifikt ämne.

  1. Skapa en slice av student_scores som inkluderar de två sista poängen för den första studenten (första raden).
  2. Använd grundläggande indexering (positiv indexering) och slicing, där du endast anger ett positivt start-värde.

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 4
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

some-alt