in bayesmark/xr_util.py [0:0]
def coord_compat(da_seq, dims):
"""Check if a sequence of :class:`xarray:xarray.DataArray` have compatible coordinates.
Parameters
----------
da_seq : list(:class:`xarray:xarray.DataArray`)
Sequence of :class:`xarray:xarray.DataArray` we would like to check for compatibility.
:class:`xarray:xarray.Dataset` work too.
dims : list
Subset of all dimensions in the :class:`xarray:xarray.DataArray` we are concerned with for compatibility.
Returns
-------
compat : bool
True if all the :class:`xarray:xarray.DataArray` have compatible coordinates.
"""
if len(da_seq) <= 1:
return True
ref = da_seq[0]
for da in da_seq:
# There is probably a better way to do this by attempting concat in try-except, but good enough for now:
for dd in dims:
assert dd in da.coords, "dim %s missing in dataarray" % dd
if not np.all(ref.coords[dd].values == da.coords[dd].values):
return False
return True