我使用R軟件包rnoaa(以及它需要其他軟件包)來收集歷史氣象數據。我編寫了這個嵌套循環來收集所有的數據集,但是當我運行它時,我總是收到錯誤。這似乎爲第二運行良好Nestled Loop不能收集來自NOAA的數據
循環:
require('triebeard')
require('bindr')
require('colorspace')
require('mime')
require('curl')
require('openssl')
require('R6')
require('urltools')
require('httpcode')
require('stringr')
require('assertthat')
require('bindrcpp')
require('glue')
require('magrittr')
require('pkgconfig')
require('rlang')
require('Rcpp')
require('BH')
require('plogr')
require('purrr')
require('stringi')
require('tidyselect')
require('digest')
require('gtable')
require('plyr')
require('reshape2')
require('lazyeval')
require('RColorBrewer')
require('dichromat')
require('munsell')
require('labeling')
require('viridisLite')
require('data.table')
require('rjson')
require('httr')
require('crul')
require('lubridate')
require('dplyr')
require('tidyr')
require('ggplot2')
require('scales')
require('XML')
require('xml2')
require('jsonlite')
require('rappdirs')
require('gridExtra')
require('tibble')
require('isdparser')
require('geonames')
require('hoardr')
require('rnoaa')
install.package('ncdf4')
install.packages("devtools")
library(devtools)
install_github("rnoaa", "ropensci")
library(rnoaa)
list <- buoys(dataset='wlevel')
lid <- data.frame(list$id)
foo <- for(range in 1990:2017){
for(bid in lid){
bid_range <- buoy(dataset = 'wlevel', buoyid = bid, year = range)
bid.year.data <- data.frame(bid.year$data)
write.csv(bid.year.data, file='cwind/bid_range.csv')
}
}
響應:
Using c1990.nc
Using
Error: length(url) == 1 is not TRUE
它保存第一個數據集,但它並沒有在文件名中應用的它只是將它命名爲bid_range.csv。
對於'write.csv()'檢查您的工作目錄,或者嘗試指定完整的文件路徑。 – Mako212
另外,不要用點來命名文件,使用下劃線或劃線bid_year.csv或bid-year.csv – Mako212
我做了這些更改並添加了一個令牌密鑰仍然無效 – farmerm3