Indicizzazione booleana
Scorri per mostrare il menu
Indicizzazione booleana (nota anche come indicizzazione tramite array booleani) consente di selezionare elementi in un array in base a determinate condizioni. Questo tipo di indicizzazione è estremamente utile per filtrare in modo efficiente i dati negli array, specialmente in quelli di grandi dimensioni.
Array booleani
Per comprendere come funziona l'indicizzazione booleana, è necessario prima capire cosa sono gli array booleani.
Un array booleano è un array composto da elementi, ognuno dei quali può essere True oppure False.
Un array di questo tipo può essere creato sia esplicitamente specificando i suoi elementi, sia in base a una certa condizione sugli elementi di un determinato array.
123456import numpy as np # Creating an array of integers from 1 to 10 inclusive array = np.arange(1, 11) # Creating a boolean array based on a condition boolean_array = array > 5 print(boolean_array)
Qui, array è un array di numeri interi da 1 a 10 inclusi. Successivamente, viene creato un array booleano chiamato boolean_array in base alla condizione array > 5. Questo significa che se un certo elemento di array è maggiore di 5 (condizione True), l'elemento corrispondente in boolean_array sarà True; altrimenti sarà False.
L'array superiore è il nostro array iniziale dove gli elementi verdi non soddisfano la condizione, mentre gli elementi viola soddisfano la condizione. L'array inferiore è il nostro array booleano creato.
Indicizzazione con Array Booleani
L'indicizzazione booleana funziona in modo piuttosto semplice: basta specificare l'array booleano tra parentesi quadre. Gli elementi risultanti sono quelli con gli indici corrispondenti ai valori True nell'array booleano.
Si può notare che gli elementi con valore True hanno indici da 5 a 9. Di conseguenza, gli elementi dell'array a questi indici vengono restituiti tramite indicizzazione booleana (l'immagine sopra corrisponde a questo codice):
1234import numpy as np # Creating an array of integers from 1 to 10 inclusive array = np.arange(1, 11) print(array[array > 5])
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione