varunayan: Climate Data Toolkit

Download and process climate reanalysis and observational data from ERA5, IMD, HadEX3, and CRU TS. Compute heat stress indices (UTCI, WBGT, Heat Index, Humidex). Aggregate country-level temperature series. Built with a focus on India, but works globally wherever the underlying datasets have coverage.

PyPI version Python versions License

Note

R users: See varunayanR, the R companion package.

Data Sources

Source

Coverage

Access

ERA5

Global reanalysis, 0.25° grid, 1940-present

CDS API (bbox, point, GeoJSON)

IMD

India gridded rainfall (0.25°) and temperature (1°), 1901-present

Direct download

HadEX3

Global ETCCDI climate extremes indices, 1.875° grid

Direct download

CRU TS

Global monthly climate grids (0.5°), 1901-present

Direct download

Quick Start

pip install varunayan
import varunayan

# ERA5 temperature for a bounding box
varunayan.era5ify_bbox(
    request_id="demo",
    variables=["2m_temperature"],
    start_date="2023-06-01",
    end_date="2023-06-30",
    north=28.7, south=28.5, east=77.3, west=77.0,
)

# IMD gridded rainfall
varunayan.imd_rainfall_bbox(
    "mumbai", start_year=2020, end_year=2020,
    north=19.2, south=18.9, east=72.9, west=72.8,
)

# HadEX3 climate extremes
varunayan.hadex3_bbox("TXx", start_year=2000, end_year=2018,
    north=35, south=8, east=90, west=68)

# UTCI heat stress index
varunayan.utci(temp_c=35.0, rh=60.0, wind_ms=2.0, mrt_c=50.0)

CLI

varunayan bbox --request-id demo --variables 2m_temperature \
  --start 2023-06-01 --end 2023-06-30 \
  --north 28.7 --south 28.5 --east 77.3 --west 77.0

Jupyter Notebooks

API Reference

Release History

Indices and tables