home / github / issues

Menu
  • GraphQL API
  • Search all tables

issues: 1732874789

This data as json

id node_id number title user state locked assignee milestone comments created_at updated_at closed_at author_association active_lock_reason draft pull_request body reactions performed_via_github_app state_reason repo type
1732874789 I_kwDOAMm_X85nSZIl 7885 drop_indexes is reversed by assign_coords of unrelated coord 4502 closed 0     2 2023-05-30T19:35:48Z 2023-08-29T14:23:31Z 2023-08-29T14:23:31Z NONE      

What happened?

I dropped an index on one coord, then later called assign_coords to change another unrelated coord. I expected the index on the original coord to stay dropped.

What did you expect to happen?

The index was silently created again.

Minimal Complete Verifiable Example

Python import xarray import numpy as np ds = xarray.Dataset( {'foo': (('x','y'), np.ones((3,5)))}, coords={'x': [1,2,3], 'y': [4,5,6,7,8]}) ds = ds.drop_indexes('x') assert 'x' not in ds.indexes ds = ds.assign_coords(y=ds.y+1) assert 'x' not in ds.indexes # Fails

MVCE confirmation

  • [X] Minimal example — the example is as focused as reasonably possible to demonstrate the underlying issue in xarray.
  • [X] Complete example — the example is self-contained, including all data and the text of any traceback.
  • [X] Verifiable example — the example copy & pastes into an IPython prompt or Binder notebook, returning the result.
  • [X] New issue — a search of GitHub Issues suggests this is not a duplicate.

Relevant log output

No response

Anything else we need to know?

In general it would be nice if xarray made it easier to avoid indexes being automatically created.

E.g. right now, as far as I can tell there's no way to avoid an index being created when you construct a DataArray or Dataset with a coordinate of the same name as a dimension.

Admittedly I have a slightly niche use case -- I'm using xarray with wrapped JAX arrays, which can't be converted into pandas indexes. Indexes being (re-)created in these cases isn't just an inconvenience it actually causes a crash.

Environment

INSTALLED VERSIONS ------------------ commit: None python: 3.10.9 (main, Dec 7 2022, 13:47:07) [GCC 12.2.0] python-bits: 64 OS: Linux OS-release: 6.1.20-2rodete1-amd64 machine: x86_64 processor: byteorder: little LC_ALL: None LANG: en_US.UTF-8 LOCALE: ('en_US', 'UTF-8') libhdf5: 1.10.8 libnetcdf: 4.9.0 xarray: 999 pandas: 1.5.3 numpy: 1.24.2 scipy: 1.10.0 netCDF4: 1.6.2 pydap: None h5netcdf: 1.1.0 h5py: 3.7.0 Nio: None zarr: 2.13.6+ds cftime: 1.6.2 nc_time_axis: None PseudoNetCDF: None rasterio: 1.3.4 cfgrib: 0.9.10.3 iris: None bottleneck: 1.3.5 dask: None distributed: None matplotlib: 3.6.3 cartopy: None seaborn: None numbagg: None fsspec: 2022.11.0 cupy: None pint: None sparse: None flox: None numpy_groupies: None setuptools: 65.6.3 pip3: None conda: None pytest: 7.2.1 mypy: None IPython: 8.5.0 sphinx: 5.3.0
{
    "url": "https://api.github.com/repos/pydata/xarray/issues/7885/reactions",
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  completed 13221727 issue

Links from other tables

  • 2 rows from issues_id in issues_labels
  • 0 rows from issue in issue_comments
Powered by Datasette · Queries took 0.49ms · About: xarray-datasette