![](/img/trans.png)
[英]How to use latitude and longitude variables in a xarray dataset as dimensions/coordinates?
[英]How to remove latitude and longitude (they're constants) from variables in netcdf dataset using xarray?
我有一個 NetCDF 數據集我試圖從我的數據變量中刪除緯度和經度數據,以便它們可以被正確索引。 每個數據變量的形狀始終為 (x, 1, 1),其中 x 是我的數據點數,1 代表靜態經度和緯度。 我試過xarray.Dataset.squeeze
和xarray.Dataset.drop
和xarray.DataArray.drop_vars
定位緯度和經度。 我還用熊貓數據框嘗試了它,緯度和經度仍然粘在我的變量上並阻止正確索引。 如果您復制下面的代碼,您將看到變量'wave_height'
顯示的形狀為 (3411,1,1)。 我想要一個使這個形狀只是 (3411,) 的函數。
url = 'https://dods.ndbc.noaa.gov/thredds/fileServer/data/stdmet/46077/46077h2021.nc'
reqSpectra = urllib.request.Request(url)
with urllib.request.urlopen(reqSpectra) as respS:
ds_s = xr.open_dataset(io.BytesIO(respS.read()))
wh = ds_s.variables['wave_height']
wh
我會使用 NumPy 的擠壓來刪除額外的維度。
import urllib
import xarray as xr
import numpy as np
import io
# --------------------------------------------------------------------------
url = 'https://dods.ndbc.noaa.gov/thredds/fileServer/data/stdmet/46077/46077h2021.nc'
reqSpectra = urllib.request.Request(url)
with urllib.request.urlopen(reqSpectra) as respS:
ds_s = xr.open_dataset(io.BytesIO(respS.read()))
# --------------------------------------------------------------------------
wh = ds_s.variables['wave_height'];
wh = np.squeeze(wh);
wh
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.