Slicing
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);stepspecifica l'incremento tra gli indici (il valore predefinito è1).
Ecco un esempio per chiarire tutto (i quadrati viola rappresentano gli elementi recuperati tramite slicing):
Poiché non abbiamo specificato esplicitamente step, il valore predefinito è 1.
123456789import 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:])
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:
- Omissione di
start:- Slicing dal primo elemento (
steppositivo); - Slicing dall'ultimo elemento (
stepnegativo).
- Slicing dal primo elemento (
- Omissione di
end:- Slicing fino all'ultimo elemento incluso (
steppositivo); - Slicing fino al primo elemento incluso (
stepnegativo).
- Slicing fino all'ultimo elemento incluso (
Vediamo alcuni altri esempi (la freccia nera indica che gli elementi sono presi in ordine inverso):
1234567891011import 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[:])
L'immagine sottostante mostra la struttura dell'array weekly_sales utilizzato nell'esercizio:
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.
- Crea uno slice di
weekly_salesche includa i dati di vendita di ogni secondo giorno, a partire dal secondo giorno (martedì). - Usa un indice positivo per
starte lasciaendnon specificato. - Memorizza il risultato in
alternate_day_sales.
Soluzione
Grazie per i tuoi commenti!
single
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Awesome!
Completion rate improved to 3.7
Slicing
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);stepspecifica l'incremento tra gli indici (il valore predefinito è1).
Ecco un esempio per chiarire tutto (i quadrati viola rappresentano gli elementi recuperati tramite slicing):
Poiché non abbiamo specificato esplicitamente step, il valore predefinito è 1.
123456789import 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:])
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:
- Omissione di
start:- Slicing dal primo elemento (
steppositivo); - Slicing dall'ultimo elemento (
stepnegativo).
- Slicing dal primo elemento (
- Omissione di
end:- Slicing fino all'ultimo elemento incluso (
steppositivo); - Slicing fino al primo elemento incluso (
stepnegativo).
- Slicing fino all'ultimo elemento incluso (
Vediamo alcuni altri esempi (la freccia nera indica che gli elementi sono presi in ordine inverso):
1234567891011import 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[:])
L'immagine sottostante mostra la struttura dell'array weekly_sales utilizzato nell'esercizio:
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.
- Crea uno slice di
weekly_salesche includa i dati di vendita di ogni secondo giorno, a partire dal secondo giorno (martedì). - Usa un indice positivo per
starte lasciaendnon specificato. - Memorizza il risultato in
alternate_day_sales.
Soluzione
Grazie per i tuoi commenti!
single