Fetta
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 di NumPy.
Slicing in Array 1D
La sintassi generale per lo slicing negli array 1D è la seguente: array[start:end:step]
.
start
è l'indice a cui iniziare lo slicing;end
è l'indice a cui termina lo slicing (l'indice stesso non è incluso);step
specifica gli incrementi tra gli indici (il valore predefinito è1
).
Ecco un esempio per chiarire tutto (i quadrati viola rappresentano gli elementi recuperati dallo slicing):
Nota
Poiché non abbiamo specificato esplicitamente
step
, assume un valore predefinito di1
.
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:])
Omettere Inizio, Fine e Passo
Come puoi vedere, possiamo spesso omettere start
, end
, step
, o anche tutti contemporaneamente. Ad esempio, step
può essere omesso quando vogliamo che sia uguale a 1
. start
e end
possono essere omessi nei seguenti scenari:
-
Omettere
start
:- Slicing dal primo elemento (
step
è positivo); - Slicing dall'ultimo elemento (
step
è negativo).
- Slicing dal primo elemento (
-
Omettere
end
:- Slicing fino all'ultimo elemento incluso (
step
è positivo); - Slicing fino al primo elemento incluso (
step
è negativo).
- Slicing fino all'ultimo elemento incluso (
Diamo un'occhiata a qualche altro esempio (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 qui sotto mostra la struttura dell'array weekly_sales
utilizzato nel compito:
Swipe to start coding
Stai analizzando i dati di vendita giornalieri di un piccolo negozio al dettaglio. Le vendite della settimana passata sono memorizzate nell'array weekly_sales
, con ogni elemento che rappresenta le vendite di un giorno specifico.
-
Crea una slice di
weekly_sales
che includa i dati di vendita per ogni secondo giorno, a partire dal secondo giorno (martedì). -
Usa un indice positivo per l'
start
e lasciaend
non 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
Fetta
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 di NumPy.
Slicing in Array 1D
La sintassi generale per lo slicing negli array 1D è la seguente: array[start:end:step]
.
start
è l'indice a cui iniziare lo slicing;end
è l'indice a cui termina lo slicing (l'indice stesso non è incluso);step
specifica gli incrementi tra gli indici (il valore predefinito è1
).
Ecco un esempio per chiarire tutto (i quadrati viola rappresentano gli elementi recuperati dallo slicing):
Nota
Poiché non abbiamo specificato esplicitamente
step
, assume un valore predefinito di1
.
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:])
Omettere Inizio, Fine e Passo
Come puoi vedere, possiamo spesso omettere start
, end
, step
, o anche tutti contemporaneamente. Ad esempio, step
può essere omesso quando vogliamo che sia uguale a 1
. start
e end
possono essere omessi nei seguenti scenari:
-
Omettere
start
:- Slicing dal primo elemento (
step
è positivo); - Slicing dall'ultimo elemento (
step
è negativo).
- Slicing dal primo elemento (
-
Omettere
end
:- Slicing fino all'ultimo elemento incluso (
step
è positivo); - Slicing fino al primo elemento incluso (
step
è negativo).
- Slicing fino all'ultimo elemento incluso (
Diamo un'occhiata a qualche altro esempio (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 qui sotto mostra la struttura dell'array weekly_sales
utilizzato nel compito:
Swipe to start coding
Stai analizzando i dati di vendita giornalieri di un piccolo negozio al dettaglio. Le vendite della settimana passata sono memorizzate nell'array weekly_sales
, con ogni elemento che rappresenta le vendite di un giorno specifico.
-
Crea una slice di
weekly_sales
che includa i dati di vendita per ogni secondo giorno, a partire dal secondo giorno (martedì). -
Usa un indice positivo per l'
start
e lasciaend
non specificato. -
Memorizza il risultato in
alternate_day_sales
.
Soluzione
Grazie per i tuoi commenti!
Awesome!
Completion rate improved to 3.7single