我创建了一个xarray.DataArray
,并使用xarray.DataArray.to_netcdf
将其保存。python-xarray重命名数据变量
我创建它使用:
datatmp = np.full([nens, len(modanom.coords['time'].values), len(modanom.coords['latitude'].values), len(modanom.coords['longitude'].values)], np.nan)
b = xr.DataArray(datatmp, coords=[range(1,nens + 1), modanom.coords['time'], modanom.coords['latitude'], modanom.coords['longitude']], dims=['ensemble', 'time', 'latitude', 'longitude'])
即我不指定一个名称,如:
b = xr.DataArray({'windspeed': (('ensemble', 'time', 'latitude', 'longitude'), datatmp)}, coords=[range(1,nens + 1), modanom.coords['time'], modanom.coords['latitude'], modanom.coords['longitude']], dims=['ensemble', 'time', 'latitude', 'longitude'])
我做这个文件的一些操作和获得均方根误差并将所得xarray.Dataset
是
<xarray.DataArray (latitude: 81, longitude: 131, time: 1)>
array([[[ nan],
[ nan],
...,
[ nan],
[ nan]],
[[ nan],
[ nan],
...,
[ nan],
[ nan]],
...,
[[ nan],
[ 0.843295],
...,
[ 0.794338],
[ nan]],
[[ nan],
[ nan],
...,
[ nan],
[ nan]]])
Coordinates:
* latitude (latitude) float64 0.0 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 ...
* longitude (longitude) float64 260.0 261.0 262.0 263.0 264.0 265.0 266.0 ..
* time (time) datetime64[ns] 1983-01-15T12:00:00
当读取netCDF文件时,我有一个xarray.Dataset
它看起来像:
<xarray.Dataset>
Dimensions: (latitude: 81, longitude: 131, time: 1)
Coordinates:
* latitude (latitude) float64 0.0 1.0 2.0 3.0 4.0 ...
* longitude (longitude) float64 260.0 261.0 262.0 ...
* time (time) datetime64[ns] 1983-01-15T12:00:00
Data variables:
__xarray_dataarray_variable__ (latitude, longitude, time) float64 nan ...
Attributes:
_NCProperties: version=1|netcdflibversion=4.4.1|hdf5libversion=1.8.18
我可以重新命名__xarray_dataarray_variable__
?
我问的原因是因为我有创建xarray.Dataset
的函数,因此我没有指定数据变量名称。不过,我想在绘图之前重命名它。
在[xarray.rename]行为(http://xarray.pydata.org/en/stable/generated/xarray.DataArray.rename.html)是与[pandas.rename](https://pandas.pydata.org/pandas-docs/version/0.18.1/generated/pandas.DataFrame.rename.html)相同。例如请参阅[本示例:](https://stackoverflow.com/a/11354850/2543267) – tsherwen