我正在尝试使用pygrib
. 我设法打开文件并毫无问题地读取数据,但我需要自动化这个过程,不幸的是每个文件都包含多个非常相似的字段:
1:Total Cloud Cover:% (avg):regular_ll:unknown:level 0 214:fcst time 0-1 hrs (avg):from 201705200000
2:Total Cloud Cover:% (avg):regular_ll:unknown:level 0 224:fcst time 0-1 hrs (avg):from 201705200000
3:Total Cloud Cover:% (avg):regular_ll:unknown:level 0 234:fcst time 0-1 hrs (avg):from 201705200000
4:Total Cloud Cover:% (avg):regular_ll:unknown:level 0 10:fcst time 0-1 hrs (avg):from 201705200000
5:Total Cloud Cover:% (instant):regular_ll:unknown:level 0 244:fcst time 1 hrs:from 201705200000
6:Total Cloud Cover:% (avg):regular_ll:unknown:level 0 211:fcst time 0-1 hrs (avg):from 201705200000
这些文件的唯一区别(如 pygrib 所见)是字段typeOfFirstFixedSurface
,但我不知道该字段是什么(并且在我获得 grib2 文件的网站上找不到相关信息)。我查看了每条消息的所有键/值参数,但没有找到任何其他有用的信息可以用来区分这些字段......
但是,当使用Panoply时,我会看到更多参数,例如:
float Total_cloud_cover_convective_cloud(time=1, lat=721, lon=1440);
:long_name = "Total cloud cover @ Convective cloud layer";
:units = "%";
:abbreviation = "TCDC";
:missing_value = NaNf; // float
:grid_mapping = "LatLon_Projection";
:coordinates = "reftime time lat lon ";
:Grib_Variable_Id = "VAR_0-6-1_L244";
:Grib2_Parameter = 0, 6, 1; // int
:Grib2_Parameter_Discipline = "Meteorological products";
:Grib2_Parameter_Category = "Cloud";
:Grib2_Parameter_Name = "Total cloud cover";
:Grib2_Level_Type = "Convective cloud layer";
:Grib2_Generating_Process_Type = "Forecast";
我可以明确地使用long_name
orGrib_Variable_Id
字段来区分消息,但我无法使用 pygrib 访问这些“参数”。
有没有办法使用 pygrib 访问这些参数?