如何使用NOAA API查询给定坐标集的过去天气数据

2024-05-16 02:49:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用纬度和纵坐标来检索过去的NOAA数据。我对温度、风速、云量和降水量等变量的历史时间序列和年度总结都感兴趣。

例如:2008-02-20 13:00英寸(25.033972、121.564493)

我希望自动化一个过程,在90万个以上的地点实现这一点。有什么想法吗?理想情况下,该脚本将用R或Python编写。


Tags: 数据时间序列历史温度感兴趣noaa年度
2条回答

NOAA现在是NOAA web API的第二个版本。api非常有用,因为您可以使用描述所需内容的^{}和python dict参数来查询web服务。@克雷夫登已经创建了一个很好的类,可以让您开始学习GitHub。NOAA有nice documentation描述你能得到什么以及如何得到(你需要给他们和电子邮件来获得访问令牌)。Other气候数据聚合器也会这样做。
像这样简单的事情可能会让你开始:

import requests


def get_noaa_data(url, data_type, header):

    r = requests.get(url, data_type, headers=header)
    print(r)


if __name__ == '__main__':

    token = 'gotowebsitetorequesttoken'
    creds = dict(token=token)
    dtype = 'dataset'
    url = 'https://www.ncdc.noaa.gov/cdo-web/api/v2/'

    get_noaa_data(url, dtype, creds)

如果您要去数千个地方,您可以考虑下载网格数据,对点进行形状化,然后像完成here那样将光栅值提取到属性表中。

  1. 找出包含所需信息的endpoint/dataset(或多个信息)
  2. 将lat/long转换为邮政编码
  3. 找到邮政编码here的正确站
  4. 对于每个端点,为每个位置拉取数据。
  5. ???
  6. 利润???

相关问题 更多 >