我想使用metpyERA5 每小时再分析数据来计算近地表(即 2m)比湿度。我metpy昨天刚刚通过 pip 在本地安装,所以我假设我的代码是最新的。我的问题是我不断遇到以下错误。
这是我目前的代码:
# import modules
import numpy as np
import xarray as xr
from metpy.units import units
import metpy.calc as mpcalc
# read data
d2m = xr.open_dataset('netcdf/ERA5_dewpt2m_1992.nc')
sp = xr.open_dataset('netcdf/ERA5_pres_1992.nc')
# assign units (approach 1)
#d2m = d2m*units.kelvin
#sp = sp*units.pascal
# assign units (approach 2)
d2m = units.Quantity(d2m, "kelvin")
sp = units.Quantity(sp, "pascal")
# calculate specific humidity
aqh2m = mpcalc.specific_humidity_from_dewpoint(sp, d2m)
Run Code Online (Sandbox Code Playgroud)
如果我忽略“单位”步骤,那么该函数当然会抱怨缺少单位。请注意,我尝试了两种不同的方法来处理上面的单元,但它们都不起作用。
如果我尝试这种方法:
# assign units (approach 1)
d2m = d2m*units.kelvin …Run Code Online (Sandbox Code Playgroud)