IniziaInizia gratis

Filtrare array con indicizzazione booleana

Puoi indicizzare gli array anche usando l'indicizzazione booleana. Creando un array booleano in cui i valori sono True per gli indici che vuoi mantenere, puoi filtrare un array. Questo è particolarmente comodo per filtrare un array in base ai valori di un altro array.

In questo esercizio, esplorerai come varia il peso alla nascita tra gli animali che tendono ad avere un solo cucciolo per parto e quelli che ne hanno più di uno. Nel tuo workspace sono già caricati due array NumPy, insieme al pacchetto NumPy come np.

  • litter_size è la dimensione media della cucciolata per ciascuno di oltre 1200 animali
  • birth_weight è il corrispondente peso medio alla nascita in grammi per ciascun animale

Questo esercizio fa parte del corso

Python per utenti MATLAB

Visualizza il corso

Istruzioni dell'esercizio

  • Crea gli array booleani mono_births e multi_births per gli animali che in genere hanno un singolo cucciolo per cucciolata e per quelli che ne hanno più di uno, rispettivamente.
  • Crea gli array mono_birth_weight e multi_birth_weight, che contengono i pesi alla nascita degli animali con singola prole e con prole multipla, rispettivamente.
  • Stampa il peso medio alla nascita degli animali che tendono ad avere un singolo cucciolo per cucciolata e di quelli che ne hanno più di uno.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Create Boolean arrays that indicate mono births and multi births
mono_births = litter_size ____ 1.0
multi_births = ____

# Create two arrays of birth weights for mono and multi births
mono_birth_weight = birth_weight[____]
multi_birth_weight = ____

# Calculate the mean birth weight for mono birth and multi birth animals
print(np.____(mono_birth_weight))
print(np.____(____))
Modifica ed esegui il codice