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