ERA5 monthly data on single levels - atmosphere
This dataset is a curated subset of land surface and atmospheric quantities derived from ECMWF’s ERA5 monthly means data on single levels.
Built upon its Climate Data Store (CDS) version, this dataset is distributed as a Zarr archive. It is designed to offer a fast, highly accessible alternative for querying ERA5 global reanalysis data.
📊 Chunking Specifications
To optimize data access performance for regional and time-series analyses, the dataset employs a spatio-temporal chunking scheme of 45 days × 64° latitude × 64° longitude. This corresponds to an array chunk shape of 120 (valid_time) × 256 (latitude) × 256 (longitude).
⚠️ Changelog
This dataset was recently migrated to Zarr v3. To access this dataset, you will need a Zarr v3-compatible library (e.g., zarr-python >= 3.x).
Python users can upgrade their environment using: pip install "zarr>3".
The previous version of the dataset is still available here.
💻 Usage
You can use this dataset to derive up-to-date monthly anomalies of Essential Climate Variables
Example Code
# Choose one of the methods below to open the dataset
# Aassign it to a variable named `era5_monthly`
# Extract the 2 metre temperaute
t2m = era5_monthly.t2m
# Compute the monthly climatology (1991-2020) in one chained step
t2m_1991_2020_clima = (
t2m.sel(valid_time=slice("1991", "2020"))
.groupby("valid_time.month")
.mean()
)
# Compute the anomalies
t2m_anomaly = (t2m.groupby("valid_time.month") - t2m_1991_2020_clima)
# Optional: load the data into memory
t2m_anomaly.load()
How to download the data
The default (and preferred) way to access the data requires accessing the api.earthdatahub.destine.eu domain and a valid API key.
Method 1: quick access
It is possible to include the token directly in the URL.
1import xarray as xr 2 3xr.open_dataset( 4 "https://edh:<your personal access token>@api.earthdatahub.destine.eu/era5/era5-single-levels-atmosphere-monthly-v0.zarr", 5 chunks={}, 6 engine="zarr", 7)
Method 2: advanced access
The Python snippet gather the token from a netrc file.
1import xarray as xr 2 3xr.open_dataset( 4 "https://api.earthdatahub.destine.eu/era5/era5-single-levels-atmosphere-monthly-v0.zarr", 5 storage_options={"client_kwargs":{"trust_env":True}}, 6 chunks={}, 7 engine="zarr", 8)
Variables
| Short Name | Units | Description |
|---|---|---|
d2m | K | 2 metre dewpoint temperature |
msl | Pa | Mean sea level pressure |
sp | Pa | Surface pressure |
sst | K | Sea surface temperature |
t2m | K | 2 metre temperature |
tp | m | Total precipitation |
u10 | m s-1 | 10 metre U wind component |
v10 | m s-1 | 10 metre V wind component |