我在哪里可以找到历史原始天气数据?

Rec*_*ion 77 database datasource weather weather-api

我在哪里可以找到我正在做的项目的历史原始天气数据,重点是美国和加拿大.我主要需要温度,但其他细节会很好.我很难找到这些数据.我真的不想要刮一个天气现场.

sAl*_*der 57

我发现自己也在问同样的问题,并将分享我未来Google员工的经验.

数据源

我想要原始数据,而且很多...... API不会这样做.我需要直接前往源头.所有这些数据的最佳来源似乎是NCEP或NCDC NOMADS服务器:

http://nomads.ncdc.noaa.gov/dods/ < - 适用于历史数据
http://nomads.ncep.noaa.gov/dods/ < - 适用于最新数据

(注意:一位评论者表示你现在必须使用https而不是http.我还没有测试过,但如果你遇到问题,试试吧!)

为了了解数据量,他们的数据一直追溯到1979年!如果您正在寻找加拿大和美国,北美地区再分析数据集可能是您的最佳答案.

使用数据

我是一个大python用户,pydapNetCDF似乎都是很好用的工具.没有特别的原因,我开始玩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] 
Run Code Online (Sandbox Code Playgroud)

上面的代码片段将为您提供1979年1月整个月的数据时间序列(每三小时一次)!如果您需要多个位置或所有月份,则可轻松修改上述代码以适应.

超级数据......以及超越!

我很高兴停在那里.我想在SQL数据库中使用这些数据,以便我可以轻松地对其进行切片和切块.做所有这一切的一个很好的选择是python预测模块.

披露:我把模块背后的代码放在一起.代码都是开源的 - 您可以修改它以更好地满足您的需求(也许您正在预测火星?)或为您的项目提取一些小片段.

我的目标是能够从Rapid Refresh模型获取最新预测(如果您想获得有关当前天气的准确信息,最好的选择):

from forecasting import Model

rap = Model('rap')
rap.connect(database='weather', user='chef')
fields = ['tmp2m']
rap.transfer(fields)
Run Code Online (Sandbox Code Playgroud)

然后在好的美国地图上绘制数据:

来自sql的数据的美国温度热图

该图的数据直接来自SQL,可以轻松修改查询以获取所需的任何类型的数据.

如果上面的示例还不够,请查看文档,您可以在其中找到更多示例.

  • 以上链接不可访问 (3认同)
  • `为未来的谷歌员工分享我的经验` &lt;-这位未来的谷歌员工谢谢你 (2认同)

Gil*_*anc 28

在美国国家严重风暴实验室历史天气数据档案(注:此后已经退役).

此外,美国国家气候数据中心Geodata Portal.

美国国家气候数据中心气候数据在线.

美国国家气候数据中心最受欢迎的产品.

  • [气候数据在线](http://www.ncdc.noaa.gov/cdo-web)的网址发生了变化 (3认同)