Skip to content

renaming Variable to a dimension name does not convert to IndexVariable #4107

Closed

Description

@dcherian

Seen in #4103

MCVE Code Sample

from xarray.tests import assert_identical

coord_1 = xr.DataArray([1, 2], dims=["coord_1"], attrs={"attrs": True})
da = xr.DataArray([1, 0], [coord_1])
obj = da.reset_index("coord_1").rename({"coord_1_": "coord_1"})
assert_identical(da, obj)

Expected Output

Problem Description

AssertionErrorTraceback (most recent call last)
<ipython-input-19-02ef6bd89884> in <module>
----> 1 assert_identical(da, obj)

~/work/python/xarray/xarray/tests/__init__.py in assert_identical(a, b)
    160     xarray.testing.assert_identical(a, b)
    161     xarray.testing._assert_internal_invariants(a)
--> 162     xarray.testing._assert_internal_invariants(b)
    163 
    164 

~/work/python/xarray/xarray/testing.py in _assert_internal_invariants(xarray_obj)
    265         _assert_variable_invariants(xarray_obj)
    266     elif isinstance(xarray_obj, DataArray):
--> 267         _assert_dataarray_invariants(xarray_obj)
    268     elif isinstance(xarray_obj, Dataset):
    269         _assert_dataset_invariants(xarray_obj)

~/work/python/xarray/xarray/testing.py in _assert_dataarray_invariants(da)
    210     assert all(
    211         isinstance(v, IndexVariable) for (k, v) in da._coords.items() if v.dims == (k,)
--> 212     ), {k: type(v) for k, v in da._coords.items()}
    213     for k, v in da._coords.items():
    214         _assert_variable_invariants(v, k)

AssertionError: {'coord_1': <class 'xarray.core.variable.Variable'>}

Versions

Output of xr.show_versions()

Activity

  1. changed the title [-]renaming Variable to a dimension name does not convert to IndexVariables[/-] [+]renaming Variable to a dimension name does not convert to IndexVariable[/+] on May 28, 2020
  2. self-assigned this
    on Aug 31, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions