米国とカナダに焦点を当てて行っているプロジェクトの過去の生の気象データはどこで見つけることができますか? 主に温度が必要ですが、他の詳細はいいでしょう。このデータを見つけるのに非常に苦労しています。気象サイトをスクレイピングする必要はありません。
3 に答える
私自身も同じ質問をしていることに気づきました。私の経験を今後の Google 社員のために共有したいと思います。
データソース
私は生データが欲しかったのですが、それはたくさんありました... API では対応できませんでした。ソースに直接向かう必要がありました。そのすべてのデータの最適なソースは、NCEP または NCDC NOMADS サーバーのいずれかであると思われました。
http://nomads.ncdc.noaa.gov/dods/ <- 過去のデータに適しています
http://nomads.ncep.noaa.gov/dods/ <- 最近のデータに適しています
(注: コメンターは、http ではなく https を使用する必要があることを示しました。まだテストしていませんが、問題がある場合は試してください!)
データ量の目安として、彼らのデータは 1979 年までさかのぼります。カナダと米国を探している場合は、北米地域再分析データセットがおそらく最良の答えです。
データの使用
私は大の Python ユーザーであり、pydapまたはNetCDFのいずれかを使用するのに適したツールのように思えました。特に理由もなく、pydap をいじり始めました。
遊牧民のウェブサイトから特定の場所のすべての温度データを取得する方法の例を示すには、python で次のことを試してください。
from pydap.client import open_url
# setup the connection
url = 'http://nomads.ncdc.noaa.gov/dods/NCEP_NARR_DAILY/197901/197901/narr-a_221_197901dd_hh00_000'
modelconn = open_url(url)
tmp2m = modelconn['tmp2m']
# grab the data
lat_index = 200 # you could tie this to tmp2m.lat[:]
lon_index = 200 # you could tie this to tmp2m.lon[:]
print tmp2m.array[:,lat_index,lon_index]
上記のスニペットは、1979 年 1 月全体のデータの時系列 (3 時間ごと) を取得します! 複数の場所またはすべての月が必要な場合は、上記のコードを簡単に変更して対応できます。
スーパーデータへ…そしてその先へ!
私はそこで立ち止まることを嬉しく思いませんでした。このデータを SQL データベースに格納して、簡単にスライス アンド ダイスできるようにしたかったのです。これらすべてを実行するための優れたオプションは、python 予測モジュールです。
開示:モジュールの背後にあるコードをまとめました。コードはすべてオープン ソースです。必要に応じて変更したり (火星の予報をしている場合など)、プロジェクトの小さなスニペットを引き出したりすることができます。
私の目標は、 Rapid Refresh モデルから最新の予報を取得できるようにすることでした(現在の天気に関する正確な情報が必要な場合は最善の策です)。
from forecasting import Model
rap = Model('rap')
rap.connect(database='weather', user='chef')
fields = ['tmp2m']
rap.transfer(fields)
そして、古き良きアメリカの地図にデータをプロットするには:
プロットのデータは SQL から直接取得され、クエリを簡単に変更して、必要な任意のタイプのデータを取得できました。
上記の例では不十分な場合は、ドキュメントを参照してください。ここには、さらに多くの例があります。
米国国立 Severe Storms Laboratory Historical Weather Data Archive (注: これはその後廃止されました)。
また、米国国立気候データ センタージオデータ ポータル.
米国国立気候データ センターの気候データ オンライン。
米国国立気候データ センターの最も人気のある製品。
wunderground.com には優れた API があります。1日500回まで無料です。