Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Slicing | Indicizzazione e Slicing
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Basi di NumPy

bookSlicing

Slicing in Python si riferisce al recupero di elementi da un indice a un altro all'interno di una sequenza. In questo capitolo, tuttavia, ci concentreremo sullo slicing negli array NumPy.

Slicing negli array 1D

La sintassi generale per lo slicing negli array 1D è la seguente: array[start:end:step].

  • start è l'indice da cui iniziare lo slicing;
  • end è l'indice in cui termina lo slicing (l'indice stesso non è incluso);
  • step specifica l'incremento tra gli indici (il valore predefinito è 1).

Ecco un esempio per chiarire tutto (i quadrati viola rappresentano gli elementi recuperati tramite slicing):

Note
Nota

Poiché non abbiamo specificato esplicitamente step, il valore predefinito è 1.

123456789
import numpy as np array = np.array([5, 10, 2, 8, 9, 1, 0, 4]) print(f'Initial array: {array}') # Slicing from the element at index 2 to the element at index 4 exclusive print(array[2:4]) # Slicing from the first element to the element at index 5 exclusive print(array[:5]) # Slicing from the element at index 5 to the last element inclusive print(array[5:])
copy

Omissione di Inizio, Fine e Passo

Come puoi vedere, spesso è possibile omettere start, end, step o anche tutti contemporaneamente. Ad esempio, step può essere omesso quando si desidera che sia uguale a 1. start ed end possono essere omessi nei seguenti casi:

  1. Omissione di start:
    • Slicing dal primo elemento (step positivo);
    • Slicing dall'ultimo elemento (step negativo).
  2. Omissione di end:
    • Slicing fino all'ultimo elemento incluso (step positivo);
    • Slicing fino al primo elemento incluso (step negativo).

Vediamo alcuni altri esempi (la freccia nera indica che gli elementi sono presi in ordine inverso):

1234567891011
import numpy as np array = np.array([5, 10, 2, 8, 9, 1, 0, 4]) print(f'Initial array: {array}') # Slicing from the first element to the last element inclusive with step=2 print(array[::2]) # Slicing from the element at index 4 to the element at index 2 exclusive (step=-1) print(array[4:2:-1]) # Slicing from the last element to the first element inclusive (reversed array) print(array[::-1]) # Slicing from the first element to the last inclusive (the same as our array) print(array[:])
copy

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

Compito

Swipe to start coding

Stai analizzando i dati delle vendite giornaliere di un piccolo negozio al dettaglio. Le vendite dell'ultima settimana sono memorizzate nell'array weekly_sales, con ogni elemento che rappresenta le vendite di un giorno specifico.

  1. Crea uno slice di weekly_sales che includa i dati di vendita di ogni secondo giorno, a partire dal secondo giorno (martedì).
  2. Usa un indice positivo per start e lascia end non specificato.
  3. Memorizza il risultato in alternate_day_sales.

Soluzione

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 3
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

close

bookSlicing

Scorri per mostrare il menu

Slicing in Python si riferisce al recupero di elementi da un indice a un altro all'interno di una sequenza. In questo capitolo, tuttavia, ci concentreremo sullo slicing negli array NumPy.

Slicing negli array 1D

La sintassi generale per lo slicing negli array 1D è la seguente: array[start:end:step].

  • start è l'indice da cui iniziare lo slicing;
  • end è l'indice in cui termina lo slicing (l'indice stesso non è incluso);
  • step specifica l'incremento tra gli indici (il valore predefinito è 1).

Ecco un esempio per chiarire tutto (i quadrati viola rappresentano gli elementi recuperati tramite slicing):

Note
Nota

Poiché non abbiamo specificato esplicitamente step, il valore predefinito è 1.

123456789
import numpy as np array = np.array([5, 10, 2, 8, 9, 1, 0, 4]) print(f'Initial array: {array}') # Slicing from the element at index 2 to the element at index 4 exclusive print(array[2:4]) # Slicing from the first element to the element at index 5 exclusive print(array[:5]) # Slicing from the element at index 5 to the last element inclusive print(array[5:])
copy

Omissione di Inizio, Fine e Passo

Come puoi vedere, spesso è possibile omettere start, end, step o anche tutti contemporaneamente. Ad esempio, step può essere omesso quando si desidera che sia uguale a 1. start ed end possono essere omessi nei seguenti casi:

  1. Omissione di start:
    • Slicing dal primo elemento (step positivo);
    • Slicing dall'ultimo elemento (step negativo).
  2. Omissione di end:
    • Slicing fino all'ultimo elemento incluso (step positivo);
    • Slicing fino al primo elemento incluso (step negativo).

Vediamo alcuni altri esempi (la freccia nera indica che gli elementi sono presi in ordine inverso):

1234567891011
import numpy as np array = np.array([5, 10, 2, 8, 9, 1, 0, 4]) print(f'Initial array: {array}') # Slicing from the first element to the last element inclusive with step=2 print(array[::2]) # Slicing from the element at index 4 to the element at index 2 exclusive (step=-1) print(array[4:2:-1]) # Slicing from the last element to the first element inclusive (reversed array) print(array[::-1]) # Slicing from the first element to the last inclusive (the same as our array) print(array[:])
copy

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

Compito

Swipe to start coding

Stai analizzando i dati delle vendite giornaliere di un piccolo negozio al dettaglio. Le vendite dell'ultima settimana sono memorizzate nell'array weekly_sales, con ogni elemento che rappresenta le vendite di un giorno specifico.

  1. Crea uno slice di weekly_sales che includa i dati di vendita di ogni secondo giorno, a partire dal secondo giorno (martedì).
  2. Usa un indice positivo per start e lascia end non specificato.
  3. Memorizza il risultato in alternate_day_sales.

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 3
single

single

some-alt