Open
Description
What happened?
I'm not sure if this is a bug or a feature but I was expecting this example to work since the new coord is just a slight rewrite of the original dimension coordinate:
import xarray as xr
ds = xr.tutorial.open_dataset("air_temperature")
# Change the first time value:
ds["air_new"] = ds.air.copy()
air_new_changed = ds.air_new[{"time": 0}] * 3
ds.air_new.loc[air_new_changed.coords] = air_new_changed # Works! :)
# Add a another coord along time axis and change
# the first time value:
ds["air_new"] = ds.air.copy().assign_coords(
{"time_float": ds.time.astype(float)}
)
air_new_changed = ds.air_new[{"time": 0}] * 4
ds.air_new.loc[air_new_changed.coords] = air_new_changed # Error! :(
Traceback (most recent call last):
Cell In[25], line 5
ds.air_new.loc[air_new_changed.coords] = air_new_changed
File ~\AppData\Local\mambaforge\envs\jw\lib\site-packages\xarray\core\dataarray.py:222 in __setitem__
dim_indexers = map_index_queries(self.data_array, key).dim_indexers
File ~\AppData\Local\mambaforge\envs\jw\lib\site-packages\xarray\core\indexing.py:182 in map_index_queries
grouped_indexers = group_indexers_by_index(obj, indexers, options)
File ~\AppData\Local\mambaforge\envs\jw\lib\site-packages\xarray\core\indexing.py:144 in group_indexers_by_index
raise KeyError(f"no index found for coordinate {key!r}")
KeyError: "no index found for coordinate 'time_float'"