いくつかのgribファイルにアクセスする必要があります。私はそれを行う方法を、pygribを使用して考え出した。 しかし、私はそれを行う方法を考え出した唯一の方法は辛抱強く遅いです。多くのジブリのメッセージを一度にpygribでアクセスする
私は34年間の3時間のデータを持っていますが、それらは1年に36ファイル(10日ごとに1つずつ)で編成されています。合計で約1000個のファイルがあります。
各ファイルには〜80個の「メッセージ」(10日間の1日あたり8つの値)があります。 (空間データなので、(x、y)次元を持つ)。
私が書くすべての私のデータを読み取るには:
grbfile = pygrib.index(filename, 'shortName', 'typeOfLevel', 'level')
var1 = grbfile.select(typeOfLevel='pressureFromGroundLayer', level=180, shortName='unknown')
for it in np.arange(len(var1)):
var_values, lat1, lon1 = var1[it].data()
if (it==0):
tot_var = np.expand_dims(var_values,axis=0)
else:
tot_var = np.append(tot_var, np.expand_dims(var_values,axis=0),axis=0)
を1000個のファイルごとにこれを繰り返します。
すみませんがありますか?すべての〜80レイヤーを一度に1つのgribファイルにロードするのが好きですか?
var_values, lat1, lon1 = var1[:].data()