earth2studio.io.NetCDF4Backend#

class earth2studio.io.NetCDF4Backend(file_name, backend_kwargs={'diskless': False, 'mode': 'r+'})[source]#

A backend that supports the NetCDF4 format.

Parameters:
  • file_name (str) – _description_

  • backend_kwargs (dict[str, Any], optional) – Key word arguments for netCDF.Dataset root object, by default {“mode”: “r+”, “diskless”: False}

Note

For keyword argument options see: https://unidata.github.io/netcdf4-python/#netCDF4.Dataset

add_array(coords, array_name, data=None)[source]#

Add an array to the existing netcdf Dataset.

Parameters:
  • coords (CoordSystem) – Ordered dict of coordinate information.

  • array_name (str) – Name to add to netcdf Dataset for the new array. Can optionally be a list of array_names.

  • data (torch.Tensor | list[torch.Tensor], optional) – Optional data to initialize the array with. If None, then the netcdf array is initialized with zeros. Can also pass a list of tensors, which must match in length to the list of array_names passed. If a list of tensors is passed, it is assumed that each tensor share coords.

Return type:

None

write(x, coords, array_name)[source]#

Write data to the current netCDF group using the passed array_name.

Parameters:
  • x (torch.Tensor | list[torch.Tensor]) – Tensor(s) to be written to netCDF group.

  • coords (OrderedDict) – Coordinates of the passed data.

  • array_name (str | list[str]) – Name(s) of the array(s) that will be written to.

Return type:

None

Examples using earth2studio.io.NetCDF4Backend#

Statistical Inference

Statistical Inference