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 529644880,MDU6SXNzdWU1Mjk2NDQ4ODA=,3580,xr.DataArray.values fails with latest versions of netcdf4,16332933,closed,0,,,4,2019-11-28T01:26:07Z,2023-10-18T17:01:17Z,2023-10-18T17:01:17Z,NONE,,,,"#### MCVE Code Sample ```python import xarray as xr xr.show_versions() url = 'http://iridl.ldeo.columbia.edu/SOURCES/.Models/.NMME/NCEP-CFSv2/.HINDCAST/.MONTHLY/.sst/dods' fullda = xr.open_dataset(url, decode_times=False,chunks={'S': 'auto', 'L': 'auto', 'M':'auto','X':'auto','Y':'auto'}) print(fullda) print(fullda['sst'][:10,0,0,0,0].values) ``` #### Expected Output ```python Dimensions: (L: 10, M: 24, S: 348, X: 360, Y: 181) Coordinates: * X (X) float32 0.0 1.0 2.0 3.0 4.0 ... 355.0 356.0 357.0 358.0 359.0 * L (L) float32 0.5 1.5 2.5 3.5 4.5 5.5 6.5 7.5 8.5 9.5 * S (S) float32 264.0 265.0 266.0 267.0 ... 608.0 609.0 610.0 611.0 * M (M) float32 1.0 2.0 3.0 4.0 5.0 6.0 ... 20.0 21.0 22.0 23.0 24.0 * Y (Y) float32 -90.0 -89.0 -88.0 -87.0 -86.0 ... 87.0 88.0 89.0 90.0 Data variables: sst (S, L, M, Y, X) float32 dask.array Attributes: Conventions: IRIDL [-25.652588 -35.577393 -48.702896 -51.3853 -50.687195 -50.341995 -50.407593 -54.955994 -52.052994 -47.31279 ] ``` #### Problem Description This should return the array’s data as a numpy.ndarray according to the documentation and as shown above. I tested this with various versions of netcdf4 and I get the error below for netcdf4 versions 1.5.1, 1.5.1.2, 1.5.3 (latest version). If I use netcdf4 version 1.5.1, I get the expected output as above. ``` python Dimensions: (L: 10, M: 24, S: 348, X: 360, Y: 181) Coordinates: * X (X) float32 0.0 1.0 2.0 3.0 4.0 ... 355.0 356.0 357.0 358.0 359.0 * L (L) float32 0.5 1.5 2.5 3.5 4.5 5.5 6.5 7.5 8.5 9.5 * S (S) float32 264.0 265.0 266.0 267.0 ... 608.0 609.0 610.0 611.0 * M (M) float32 1.0 2.0 3.0 4.0 5.0 6.0 ... 20.0 21.0 22.0 23.0 24.0 * Y (Y) float32 -90.0 -89.0 -88.0 -87.0 -86.0 ... 87.0 88.0 89.0 90.0 Data variables: sst (S, L, M, Y, X) float32 dask.array Attributes: Conventions: IRIDL Traceback (most recent call last): File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/xarray/backends/netCDF4_.py"", line 84, in _getitem array = getitem(original_array, key) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/xarray/backends/common.py"", line 54, in robust_getitem return array[key] File ""netCDF4/_netCDF4.pyx"", line 4408, in netCDF4._netCDF4.Variable.__getitem__ File ""netCDF4/_netCDF4.pyx"", line 5350, in netCDF4._netCDF4.Variable._get IndexError: index exceeds dimension bounds During handling of the above exception, another exception occurred: Traceback (most recent call last): File ""testpython.py"", line 7, in print(fullda['sst'][:10,0,0,0,0].values) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/xarray/core/dataarray.py"", line 567, in values return self.variable.values File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/xarray/core/variable.py"", line 448, in values return _as_array_or_item(self._data) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/xarray/core/variable.py"", line 254, in _as_array_or_item data = np.asarray(data) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/numpy/core/_asarray.py"", line 85, in asarray return array(a, dtype, copy=False, order=order) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/dask/array/core.py"", line 1314, in __array__ x = self.compute() File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/dask/base.py"", line 165, in compute (result,) = compute(self, traverse=False, **kwargs) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/dask/base.py"", line 436, in compute results = schedule(dsk, keys, **kwargs) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/dask/threaded.py"", line 81, in get **kwargs File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/dask/local.py"", line 486, in get_async raise_exception(exc, tb) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/dask/local.py"", line 316, in reraise raise exc File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/dask/local.py"", line 222, in execute_task result = _execute_task(task, data) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/dask/core.py"", line 119, in _execute_task return func(*args2) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/dask/array/core.py"", line 106, in getter c = np.asarray(c) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/numpy/core/_asarray.py"", line 85, in asarray return array(a, dtype, copy=False, order=order) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/xarray/core/indexing.py"", line 481, in __array__ return np.asarray(self.array, dtype=dtype) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/numpy/core/_asarray.py"", line 85, in asarray return array(a, dtype, copy=False, order=order) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/xarray/core/indexing.py"", line 643, in __array__ return np.asarray(self.array, dtype=dtype) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/numpy/core/_asarray.py"", line 85, in asarray return array(a, dtype, copy=False, order=order) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/xarray/core/indexing.py"", line 547, in __array__ return np.asarray(array[self.key], dtype=None) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/xarray/backends/netCDF4_.py"", line 72, in __getitem__ key, self.shape, indexing.IndexingSupport.OUTER, self._getitem File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/xarray/core/indexing.py"", line 827, in explicit_indexing_adapter result = raw_indexing_method(raw_key.tuple) File ""/homes/kpegion/.conda/envs/testenv3-dev/lib/python3.6/site-packages/xarray/backends/netCDF4_.py"", line 94, in _getitem raise IndexError(msg) IndexError: The indexing operation you are attempting to perform is not valid on netCDF4.Variable object. Try loading your data into memory first by calling .load(). ``` #### Output of ``xr.show_versions()``
INSTALLED VERSIONS ------------------ commit: None python: 3.6.7 | packaged by conda-forge | (default, Nov 6 2019, 16:19:42) [GCC 7.3.0] python-bits: 64 OS: Linux OS-release: 3.10.0-1062.4.3.el7.x86_64 machine: x86_64 processor: x86_64 byteorder: little LC_ALL: None LANG: en_US.UTF-8 LOCALE: en_US.UTF-8 libhdf5: 1.10.5 libnetcdf: 4.7.1 xarray: 0.14.1 pandas: 0.25.3 numpy: 1.17.3 scipy: None netCDF4: 1.5.3 pydap: None h5netcdf: None h5py: None Nio: None zarr: None cftime: 1.0.4.2 nc_time_axis: None PseudoNetCDF: None rasterio: None cfgrib: None iris: None bottleneck: None dask: 2.8.1 distributed: 2.8.1 matplotlib: None cartopy: None seaborn: None numbagg: None setuptools: 42.0.1.post20191125 pip: 19.3.1 conda: None pytest: None IPython: None sphinx: None
","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3580/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,13221727,issue