You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If an indexing coordinate with attributes is converted to a non indexing coordinate with reset_index, the attributes are lost. I am not sure it is a bug, but I think they should keep the attributes and reset_coords does keep the attributes of reset coordinates.
MCVE Code Sample
temp=15+8*np.random.randn(2, 2, 3)
time=xr.DataArray(pd.date_range('2014-09-06', periods=3), dims=["time"]).assign_attrs({"attr": 23})
coord=xr.DataArray([[-99.83, -99.32], [-99.79, -99.23]], dims=["x", "y"]).assign_attrs({"coord": True})
ds=xr.Dataset(
{
'temperature': (['x', 'y', 'time'], temp),
},
coords={
'coord_0': coord,
'time': time,
}
)
ds# both coord_0 and time have attributesds.reset_index("time")
# coordinate time_ does not have attributes anymoreds.reset_coords("coord_0")
# data variable coord_0 still has attributes
If an indexing coordinate with attributes is converted to a non indexing coordinate with
reset_index
, the attributes are lost. I am not sure it is a bug, but I think they should keep the attributes andreset_coords
does keep the attributes of reset coordinates.MCVE Code Sample
Expected Output
I would expect attributes to be kept.
Possible solution
I was wondering if changing this line and this other line to
could solve this. If so I'll send a PR whenever I can.
Versions
Output of xr.show_versions()
INSTALLED VERSIONS
commit: None
python: 3.6.9 (default, Apr 18 2020, 01:56:04)
[GCC 8.4.0]
python-bits: 64
OS: Linux
OS-release: 4.15.0-101-generic
machine: x86_64
processor: x86_64
byteorder: little
LC_ALL: None
LANG: en_US.UTF-8
LOCALE: en_US.UTF-8
libhdf5: 1.10.4
libnetcdf: 4.6.3
xarray: 0.15.1
pandas: 1.0.3
numpy: 1.18.4
scipy: 1.4.1
netCDF4: 1.5.3
pydap: None
h5netcdf: None
h5py: 2.10.0
Nio: None
zarr: None
cftime: 1.0.4.2
nc_time_axis: None
PseudoNetCDF: None
rasterio: None
cfgrib: None
iris: None
bottleneck: None
dask: None
distributed: None
matplotlib: 3.2.1
cartopy: None
seaborn: 0.10.1
numbagg: None
setuptools: 42.0.2
pip: 20.1.1
conda: None
pytest: 4.6.2
IPython: 7.14.0
sphinx: 2.0.0
The text was updated successfully, but these errors were encountered: