我最近被介绍给R,并试用了heatwaveR包。加载erddap数据时出现错误.下面是我到目前为止使用的代码:
library(rerddap)
library(ncdf4)
info(datasetid = "ncdc_oisst_v2_avhrr_by_time_zlev_lat_lon", url = "https://www.ncei.noaa.gov/erddap/")我得到了以下错误:
Curl::curl_fetch_memory中的错误(x$url$url,句柄=x$url$句柄):schannel:下一个InitializeSecurityContext失败: SEC_E_INVALID_TOKEN (0x80090308) -提供给函数的令牌无效
希望在这方面有所帮助。我也是这个网站的新手,所以如果上面的问题不是按照标准(在灰色框中输入的代码等等),我很抱歉。
发布于 2019-03-20 17:29:00
有人将这篇文章从GitHub上的“GitHub问题”页面中提请我注意。以下是我为他们提供的答案:
我不管理rerddap包,所以不能确切地说为什么它会给你这个错误。但我可以说,我最近注意到,在ERDDAP服务器上经常无法获得OISST数据。我(试图)每天下载新的数据,并且经常被拒绝,错误与您发布的错误相似。这已经到了我不得不在我的下载脚本中插入一些逻辑门的地步,所以它告诉我,在尝试下载数据之前,这些数据目前并不是托管的。我还应该指出,可以从这台服务器下载“最终”数据,从今天起大约有两个星期的延迟,以及“初步(预)”数据,这些数据几乎是实时的,但还没有完成所有的QC步骤。以下代码对这两种产品进行了说明:
# First download the list of data products on the server
server_data <- rerddap::ed_datasets(which = "griddap", "https://www.ncei.noaa.gov/erddap/")$Dataset.ID
# Check if the "final" data are currently hosted
if(!"ncdc_oisst_v2_avhrr_by_time_zlev_lat_lon" %in% server_data)
stop("Final data are not currently up on the ERDDAP server")
# Check if the "prelim" data are currently hosted
if(!"ncdc_oisst_v2_avhrr_prelim_by_time_zlev_lat_lon" %in% server_data)
stop("Prelim data are not currently up on the ERDDAP server")如果数据是可用的,那么我将用这两行检查可用的时间/日期:
# Download final OISST meta-data
final_info <- rerddap::info(datasetid = "ncdc_oisst_v2_avhrr_by_time_zlev_lat_lon", url = "https://www.ncei.noaa.gov/erddap/")
# Download prelim OISST meta-data
prelim_info <- rerddap::info(datasetid = "ncdc_oisst_v2_avhrr_prelim_by_time_zlev_lat_lon", url = "https://www.ncei.noaa.gov/erddap/")我现在运行了这个程序,看起来数据现在是可用的。你是今天犯的错误,还是一两天前的错误?这一周的可用性似乎一直在循环,但我还没有完全理解任何模式。同样重要的是要注意的是,大约一天前,数据被黑暗,他们充满了各种各样的巨大错误。因此,我还不得不在代码中添加错误陷阱,一旦数据聚合过程检测到超过某个海量的温度,它就会停止。在这种情况下,它是类似于1^90,但数字不一致,这意味着它不是一个缺失的值占位符。
要手动查看数据是否被托管,可以转到这个链接并滚动到底部:https://www.ncei.noaa.gov/erddap/griddap/index.html
万事如意,
-Robert
https://stackoverflow.com/questions/54956079
复制相似问题