Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Slicing negli Array 2D | Indicizzazione e Slicing
Practice
Projects
Quizzes & Challenges
Quiz
Challenges
/
Basi di NumPy
close
Sezione 2. Capitolo 4
single

single

bookSlicing negli Array 2D

Scorri per mostrare il menu

L'affettamento in array 2D e array multidimensionali funziona in modo simile all'affettamento negli array 1D. Tuttavia, negli array 2D, ci sono due assi.

Se si desidera effettuare l'affettamento solo sull'asse 0 per ottenere array 1D, la sintassi rimane la stessa: array[start:end:step]. Se si desidera effettuare l'affettamento sugli elementi di questi array 1D (asse 1), la sintassi è la seguente: array[start:end:step, start:end:step]. In sostanza, il numero di affettamenti corrisponde al numero di dimensioni di un array.

Inoltre, è possibile utilizzare l'affettamento per un asse e l'indicizzazione di base per l'altro asse. Vediamo un esempio di affettamento 2D (i quadrati viola rappresentano gli elementi ottenuti dall'affettamento, e la freccia nera indica che gli elementi sono presi in ordine inverso):

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

L'immagine sottostante mostra la struttura dell'array student_scores utilizzato nell'esercizio:

Compito

Swipe to start coding

Stai lavorando con un array NumPy 2D che rappresenta i punteggi di tre studenti in tre materie diverse. I punteggi di ciascuno studente sono memorizzati in una riga separata, con ogni elemento che rappresenta il punteggio in una materia specifica.

  1. Crea uno slice di student_scores che includa gli ultimi due punteggi del primo studente (prima riga).
  2. Utilizza l'indicizzazione di base (indicizzazione positiva) e lo slicing, specificando solo un start positivo.

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 4
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

some-alt