#やりたいこと
気象情報の配信フォーマットであるgrib2。このフォーマットはバイナリデータの為、読込・集計にはデータ変換が必要です。ここでは、wgrib2というフォーマット変換ソフトを用いて、GRIB2データをCSV形式のテキストストリームを標準出力する方法を説明します。
GRIB2データは非常にデータ量が多いので、CSVファイルとして保存後に加工すると重い処理になります。そこで、WGRIB2でのフォーマット変換の結果をファイルではなく標準出力にすることで、他のコマンドと組み合わせての加工を可能としました。
#環境構築
wgrib2はLinux用のアプリケーションです。
ソースコードをダウンロードし、ビルドして利用します。
本投稿では、Amazon Linuxで動作確認しております。(MacOSでトライしましたが、現状はNGでした)
こちらの投稿が非常に参考になりました。ありがとうございます。
###ダウンロード
wget ftp://ftp.cpc.ncep.noaa.gov/wd51we/wgrib2/wgrib2.tgz
###解凍・ビルド
tar xvzf wgrib2.tgz
cd grib2/
make
###パスが通ったディレクトリにコピー
これは必須ではありませんが、コマンドラインフルパスを記述する際に面倒な場合は、実施を検討してみてください。
sudo cp ./wgrib2/wgrib2 /usr/local/bin/
#標準出力へCSVを出力
wgrib2のCSV出力の簡単な仕様の説明です
第1引数: 処理対象のGRIB2のファイル
第2引数: -csv オプション CSVフォーマットで出力
第3引数: CSV出力ファイル名称( - で標準出力)
wgrib2 GRIB2ファイルパス -csv -
##オマケ:出力する列を指定する
cutコマンド用いて、カンマ記号で分割した列を選択的に出力します
cutコマンドでは、-d'デリミッタ'(デフォルトはタブ),-fは出力列番号(1スタート)
wgrib2 GRIB2ファイルパス -csv - | cut -d',' -f1,5,6,7