issue_comments: 1240532341
This data as json
html_url | issue_url | id | node_id | user | created_at | updated_at | author_association | body | reactions | performed_via_github_app | issue |
---|---|---|---|---|---|---|---|---|---|---|---|
https://github.com/pydata/xarray/issues/7005#issuecomment-1240532341 | https://api.github.com/repos/pydata/xarray/issues/7005 | 1240532341 | IC_kwDOAMm_X85J8QV1 | 4160723 | 2022-09-08T10:32:31Z | 2022-09-08T10:32:31Z | MEMBER | Hi @jamesstidard,
I agree that the error message is not very informative. This could be improved. The problem in your example is located here:
Since v2022.6.0, multi-index level coordinates are real coordinates. What happens is that when you update "x_one" it invalidates the multi-index "x" - "x_one" - "x_two" in the DataArray: ```python ... map_coords(mda, name="z", mapping={0: "zero", 1: "one", 2: "two"}). # success map_coords(mda, name="x_one", mapping={"a": "aa", "b": "bb", "c": "cc"}) # success the 'x', 'x_one' and 'x_two' indexes are all equalmda.xindexes["x_one"].equals(mda.xindexes["x"]) and mda.xindexes["x_one"].equals(mda.xindexes["x_two"]) Truethe 'x' and 'x_two' indexes are identical, but not the 'x_one' index!mda.xindexes["x"] is mda.xindexes["x_two"] Truemda.xindexes["x"] is mda.xindexes["x_one"] False``` Which explains the alignment error when you further try to update the DataArray. I'm actually surprised that it doesn't raise any error at that point, like this: ```python mda = xr.DataArray(np.random.rand(6, 6, 3), [("x", midx), ("y", midy), ("z", range(3))]) mda.coords["x_two"] = ("x", range(6)) ValueError: cannot set or update variable(s) 'x_two', which would corrupt the followingindex built from coordinates 'x', 'x_one', 'x_two':<xarray.core.indexes.PandasMultiIndex object at 0x1689cc190>``` It seems like a bug. Either way, you shouldn't try updating a single coordinate that is part of a multi-coordinate index, which is assumed immutable. Instead, you could use
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
1364911775 |