home / github / issues

Menu
  • GraphQL API
  • Search all tables

issues: 273192687

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
273192687 MDU6SXNzdWUyNzMxOTI2ODc= 1709 Multiple methods fail on a DataArray with scalar dimension 13039369 closed 0     2 2017-11-12T02:10:46Z 2017-11-12T20:53:43Z 2017-11-12T20:53:43Z NONE      

Code Sample, a copy-pastable example if possible

```python import numpy as np import xarray as xr a = np.arange(20).reshape(1,2,2,5) coords = dict(t=0, z=np.arange(2), y=np.arange(2), x=np.arange(5)) b = xr.DataArray(a,dims=['t', 'z', 'y', 'x'],coords=coords) b.squeeze() # Throws ValueError: dimension 't' already exists as a scalar variable

coords = dict(t=[0], z=np.arange(2), y=np.arange(2), x=np.arange(5)) c = xr.DataArray(a,dims=['t', 'z', 'y', 'x'],coords=coords) c.squeeze() # This works! ```

Problem description

Besides squeeze, a number of other methods like drop fail on DataArray b. Since, scalar dimensions are not dropped, it is almost impossible to do anything useful like plot, concat, etc with b. All these methods fail with ValueError: dimension 't' already exists as a scalar variable.

Expected Output

In my opinion, b and c should behave in the same way. It would just involve converting the scalar dimensions into lists. Is this behavior a bug or by design?

Output of xr.show_versions()

0.9.6

{
    "url": "https://api.github.com/repos/pydata/xarray/issues/1709/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

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