ValueError: не удалось преобразовать кортеж формы (dims, data[, attrs, encoding]): #ISSUE #GRIP2 #Weather-Data #cfgrib #xarrary #Python #
ValueError: не удалось преобразовать кортеж формы (dims, data[, attrs, encoding]):
У меня проблема с созданием этого набора данных, и я не мог знать, как ее решить, я пробую много решений, и это дает мне ту же ошибку
import cfgrib
import glob
import xarray as xr
import pandas as pd
folder = input('Folder Path:')
val = input('Variable Name:')
files = glob.glob(rf'{folder}/*.grib2')
data_conc=[]
for file in files:
data = xr.open_dataset(file,engine='cfgrib',
backend_kwargs={'filter_by_keys':{'typeOfLevel': 'hybrid'}})
lon = data.variables['longitude'].values
lat = data.variables['latitude'].values
hyb = data.variables['hybrid'].values
time = pd.Timestamp(data.time.values) + pd.to_timedelta(data.step.values,'H')
X = xr.Dataset(
data_vars = {
'data':(['Alt','lat','lon'], data[val].values)
},
coords = {
'Alt':(['lat','lon'],hyb),
'lat':(['lat','lon'],lat),
'lon':(['lat','lon'],on),
'time':time
},
)
data_conc.append(X)
1 ответ
Возможно, вы уже нашли свой ответ. Если нет, попробуйте изменить значения координат и посмотрите, поможет ли это.
import numpy as np
lon = np.reshape(data.variables['longitude'].values, (1, -1))
lat = np.reshape(data.variables['latitude'].values, (1, -1))
hyb = np.reshape(data.variables['hybrid'].values, (1, -1))