AusClimateService / AusClimateService/unseen

Implement ForecastIndex (an xarray custom index)

Open
#87 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
3
Forks
4
PR merge metrics
No merged PRs in 30d

Description

As flagged in #47, #38 and #33, the long awaited flexible/custom index functionality is now available in xarray (see the [v2025.07.1 release notes](https://docs.xarray.dev/en/stable/whats-new.html#v2025-07-1-july-09-2025)). See the [SciPy presentation](https://www.youtube.com/watch?v=I-NHCuLhRjY) and [custom index gallery](https://xarray-indexes.readthedocs.io/index.html) for details.

There is already a custom index for handling forecast data - the `rolodex.ForecastIndex` described at [this gallery page](https://xarray-indexes.readthedocs.io/earth/forecast.html).

The gallery page talks about the fact that there are four different ways of constructing views of forecast data (or more specifically, of “Forecast Model Run Collections; FMRCs"). By using the `rolodex.ForecastIndex` we can efficiently select and slice data along any of those four views, essentially doing away the cumbersome functions we've written in our `array_handling.py` module for swtiching views of the data.

Contributor guide

Open the contributing guide

Research direction

Start by reading array_handling.py and the rolodex.ForecastIndex documentation linked in the issue, along with xarray's custom-index release notes. Compare the existing view-switching functions with the four FMRC views described in the gallery. Done means ForecastIndex provides the intended selection and slicing views so those cumbersome functions can be replaced.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.