首页 文章

NOAA每日天气提取

提问于
浏览
0

我是R的新手,我正在尝试使用 rnoaa 来提取信息 .

我有两个日期:

  • 2013年9月3日至30日

  • 2013年12月3日至31日

我需要提取Ann Arbor MI,New Haven CT和Los Angeles,CA的每日天气预报值 . 我拥有这三个城市中每个城市的电台ID,它们分别是:USC00200230,US090004,US060013 .

有人可以帮助我提取每日最低温度,最高温度,湿度,降水和阳光的值吗?

到目前为止,我刚刚能够访问数据库:

library(rnoaa)  #get rnoaa from your R library to run
library(devtools)
options(noaakey= "mykey")

我知道要获取信息,我必须按以下格式输入内容:

noaa(datasetid='NORMAL_DLY', stationid='putinstationidhere', datacategoryid="TEMP")

我只是不知道这个数据库的架构,因为我一直使用在线版本,我对R编码很新 . 关于这个的文档也非常稀疏所以我希望有人在这里知道如何使用 rnoaa .

1 回答

  • 2

    这是我对你要求的尝试 .

    站点ID必须将datasetid作为带冒号的前缀,因此 GHCND:USC00200230 而不是 USC00200230

    您无法将datacategoryid传递给 ncdc 函数 . 查看API的文档here

    例如,获取降水数据:

    out <- ncdc(datasetid='GHCND', datatypeid = 'PRCP', stationid='GHCND:USC00200230', startdate = "2013-09-03", enddate = "2013-09-30", limit=30)
    head(out$data)
    
                 station value attributes datatype                date
    1  GHCND:USC00200230     0   ,,7,1800     PRCP 2013-09-03T00:00:00
    2  GHCND:USC00200230     0   ,,7,1800     PRCP 2013-09-04T00:00:00
    3  GHCND:USC00200230     0   ,,7,1800     PRCP 2013-09-05T00:00:00
    4  GHCND:USC00200230     0   ,,7,1800     PRCP 2013-09-06T00:00:00
    5  GHCND:USC00200230     8   ,,7,1800     PRCP 2013-09-07T00:00:00
    6  GHCND:USC00200230     0   ,,7,1800     PRCP 2013-09-08T00:00:00
    

    另一个例子,得到最低温度

    out <- ncdc(datasetid='GHCND', datatypeid = 'TMIN', stationid='GHCND:USC00200230', startdate = "2013-09-03", enddate = "2013-09-30", limit=30)
    head(out$data)
    
                 station value attributes datatype                date
    1  GHCND:USC00200230   139   ,,7,1800     TMIN 2013-09-03T00:00:00
    2  GHCND:USC00200230   128   ,,7,1800     TMIN 2013-09-04T00:00:00
    3  GHCND:USC00200230   111   ,,7,1800     TMIN 2013-09-05T00:00:00
    4  GHCND:USC00200230    83   ,,7,1800     TMIN 2013-09-06T00:00:00
    5  GHCND:USC00200230   139   ,,7,1800     TMIN 2013-09-07T00:00:00
    6  GHCND:USC00200230   183   ,,7,1800     TMIN 2013-09-08T00:00:00
    

    如果省略 datatypeid ,则会获得所有数据类型的数据 .

相关问题