당신은 여기에 같은 데이터를 얻을, GRIB 파일 불구하고 반복하고 바람직한 기록을 찾을 수있다 :
for g in grbs:
print g.shortName, g.typeOfLevel, g.level # print info about all GRIB records and check names
if (g.shortName == shortName and g.typeOfLevel == typeOfLevel and g.level == level):
tmp = np.array(g.values)
# now work with tmp as numpy array
이 위도 얻으려면 및 경도 배열이 사용 lt, ln = g.latlons()
, g
-grbs
의 요소를.
파이썬 섹션 https://software.ecmwf.int/wiki/display/GRIB/GRIB+API+examples (pygrib는이 라이브러리를 사용하여 GRIB를 읽음)의 예제를 읽으십시오.
큰 GRIB 파일에서 데이터를 얻을 수있는 가장 빠른 방법은 만드는 것입니다 색인 :
# use attributes what you want to build index
indx = pygrib.index(gribfile,'typeOfLevel','level','parameterName')
# important: msg is an array and may have more then one record
# get U wind component on 10 m above ground
msg = indx.select(level = 10, typeOfLevel = "heightAboveGround",
parameterName = "U U-component of wind m s**-1")
u10 = np.array(msg[0].values)
# get V wind component on 10 m above ground
msg = indx.select(level = 10, typeOfLevel = "heightAboveGround",
parameterName = "V V-component of wind m s**-1")
v10 = np.array(msg[0].values)