我創建了一個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