Aan de slagGa gratis aan de slag

Arrays filteren met Booleaanse indexing

Je kunt arrays ook indexeren met Booleaanse indexing. Door een Booleaanse array te maken waarbij de waarden True zijn voor de indexen die je wilt behouden, kun je een array filteren. Dit is vooral handig om de ene array te filteren op basis van waarden in een andere array.

In deze oefening onderzoek je hoe het geboortegewicht verschilt tussen dieren die meestal één jong per worp krijgen en dieren die er meerdere krijgen. Twee NumPy-arrays zijn in je werkruimte geladen, samen met het NumPy-pakket als np.

  • litter_size is de gemiddelde grootte van een worp voor elk van 1200+ diersoorten
  • birth_weight is het bijbehorende gemiddelde geboortegewicht in gram voor elke diersoort

Deze oefening maakt deel uit van de cursus

Python voor MATLAB-gebruikers

Cursus bekijken

Oefeninstructies

  • Maak Booleaanse arrays mono_births en multi_births voor dieren die doorgaans één jong per worp hebben en voor dieren die meer dan één jong per worp hebben.
  • Maak arrays mono_birth_weight en multi_birth_weight, die respectievelijk de geboortegewichten bevatten van dieren met één jong per worp en dieren met meerdere jongen per worp.
  • Print het gemiddelde geboortegewicht van dieren die meestal één jong per worp hebben en van dieren die er meer dan één hebben.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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.____(____))
Code bewerken en uitvoeren