Aan de slagGa gratis aan de slag

Dask-arrays uit HDF5-datasets

Je gaat Europese neerslag over de afgelopen 40 jaar analyseren. De maandelijkse gemiddelde neerslag op een raster van locaties over Europa is voor je beschikbaar gesteld in HDF5-formaat. Omdat dit bestand vrij groot is, besluit je het te laden en te verwerken met Dask.

h5py is al voor je geïmporteerd en dask.array is geïmporteerd als da.

Deze oefening maakt deel uit van de cursus

Parallel programmeren met Dask in Python

Cursus bekijken

Oefeninstructies

  • Open het bestand 'data/era_eu.hdf5' met h5py.
  • Laad de variabele '/precip' in een Dask-array met de functie from_array(), en stel chunks in van (12 maanden, 15 breedtegraden en 15 lengtegraden).
  • Gebruik array-slicing om elke 12e index langs de eerste as te selecteren – dit selecteert de januarigegevens uit alle jaren.
  • Neem het gemiddelde van january_rainfalls langs de tijdsas (as 0) om de gemiddelde neerslag in januari in Europa te berekenen.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Open the HDF5 dataset using h5py
hdf5_file = ____.____(____)

# Load the file into a Dask array with a reasonable chunk size
precip = da.____(____, chunks=____)

# Select only the months of January
january_rainfalls = ____[____]

# Calculate the mean rainfall in January for each location
january_mean_rainfall = ____.____(axis=____)

plt.imshow(january_mean_rainfall.compute())
plt.show()
Code bewerken en uitvoeren