2014-02-27 78 views
0

我真的很陌生,我試圖用rnoaa來提取信息。NOAA每日天氣提取

我有一組兩個日期:

  • 9月3日至三十○日2013
  • 12月3日至31日2013

,我需要提取每天的天氣值安阿伯MI,紐黑文CT和洛杉磯,加利福尼亞州。我有這三個城市的每個城市的電臺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

請顯示您迄今爲止嘗試創建[可重現的示例]的代碼(http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)。 – Thomas

+0

請參閱上面的我編輯的編輯,非常感謝 – kellis13

+0

hi @ kellis13我是包的創建者。我們正在努力完成一個更好的版本,以更好的文檔到達CRAN。現在看看你的問題。 – sckott

回答

2

這是我對你要求的嘗試。

站IDS必須有資料集與冒號的前綴,如此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你得到的數據對所有數據類型。

+0

至少在USC00200230站似乎沒有「NORMAL_DLY」的任何數據 - 或者您是否知道存在以及由於某種原因我們的軟件包沒有找到它? – sckott

+0

非常感謝,非常有幫助! – kellis13

+0

你知道在哪裏可以找到這些數據類型是什麼意思?以及如何閱讀屬性...?我按照你的步驟獲取數據,但不知道如何很好地解釋它們...... Tks! – linp