- 积分
- 2407
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2019-3-23
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
目前关于Metpy库的使用,网上资料比较少。在这里介绍下在使用中遇到的一些问题。
根据温度、压强、比湿计算露点温度为例:from metpy.units import units
import metpy.calc as calc
TD=calc.dewpoint_from_specific_humidity(20*units('g/kg'),300*units.kelvin,1000*units.mbar)print(TD)输出的结果为:24.98813401152105 degC在使用任何一个函数计算对流参数的过程中,函数的函数必须有相对应的单位,否则程序会报错。在这里比湿的单位为'g/kg',温度的单位为‘K’即卡尔文温度,气压的单位是mbar与hPa(百帕)的含义相同。从输出的结果可以看出,是以摄氏度为单位。但这种带有单位的结果有时不利用我们使用,因为他的类型不是常规的数值型,无法正常输出到excel/csv/txt中。print(type(TD)) 输出:<class 'pint.quantity.build_quantity_class.<locals>.Quantity'>可以看出,这是一种通过Quantity类所定义的类型,区别于我们常规使用的float、int等类型。
那么如何得到一个只包括数值型的结果?经过翻看源码,得到了我们想要的结果。print(TD)
print(TD.m)
print(TD.u)
相应的输出结果为:24.98813401152105 degC24.98813401152105degC第一个结果是np.float64型,需要转换成float型。即TD.m.item()print(TD.m.item())
print(type(TD.m.item()))24.98813401152105<class 'float'>接下来就可以使用我们计算的结果,进行其他操作了。
|
|