WRF output can easily have a couple hundred data variables in a dataset, which is not ideal for interactive exploration of a dataset's contents. With DataTree, we would have a tree-like hierarchical data structure for xarray which could be used for this.
This would likely become a new accessor method, such as .xwrf.organize().
Tests
After xwrf.postprocess(), we have a post processed dataset (with likely many data variables). Then, after xwrf.organize(), we would have a DataTree with (a yet to be decided) tree-like grouping of data variables. Calling xwrf.organize() without xwrf.postprocess() would fail.
Questions
What form of heirarchy would we want to have and how deep?
2d_variables vs. 3d_variables?
semantic grouping of variables, such as thermodynamic, grid_metrics, kinematic, accumulated, etc.?
Parse the WRF Registry somehow and assign groups based on that?
Description
WRF output can easily have a couple hundred data variables in a dataset, which is not ideal for interactive exploration of a dataset's contents. With DataTree, we would have a tree-like hierarchical data structure for xarray which could be used for this.
From @lpilz in https://github.com/xarray-contrib/xwrf/issues/10:
Implementation
This would likely become a new accessor method, such as
.xwrf.organize()
.Tests
After
xwrf.postprocess()
, we have a post processed dataset (with likely many data variables). Then, afterxwrf.organize()
, we would have a DataTree with (a yet to be decided) tree-like grouping of data variables. Callingxwrf.organize()
withoutxwrf.postprocess()
would fail.Questions
What form of heirarchy would we want to have and how deep?