我正在尝试在我的 R 项目中使用目标工作流。我正在尝试使用 dataRetrieval 包下载水质数据。在新的 R 会话中,这有效:
dataRetrieval::readWQPdata(siteid="USGS-04024315",characteristicName="pH")
要在目标中使用它,我有以下 _targets.R 文件:
library(targets)
tar_option_set(packages = c("dataRetrieval"))
list(
tar_target(
name = wqp_data,
command = readWQPdata(siteid="USGS-04024315",characteristicName="pH"),
format = "feather",
cue = tar_cue(mode = "never")
)
)
当我运行tar_make()
以下返回:
* start target wqp_data
No internet connection.
The following url returned no data:
https://www.waterqualitydata.us/data/Result/search?siteid=USGS-04024315&characteristicName=pH&zip=yes&mimeType=tsv
x error target wqp_data
* end pipeline
Error : attempt to set an attribute on NULL
Error: callr subprocess failed: attempt to set an attribute on NULL
Visit https://books.ropensci.org/targets/debugging.html for debugging advice.
Run `rlang::last_error()` to see where the error occurred.
我尝试使用tar_option_set(debug = "wqp_data")
or进行调试,tar_option_set(workspace_on_error = TRUE)
但在将错误隔离为readWQPdata()
没有得到任何地方之外。
我在目标中直接使用 curl 也取得了成功,所以我认为这不是我的实际互联网连接:
list(
tar_target(
name = wqp_data,
command = {con <- curl::curl("https://httpbin.org/get")
readLines(con)
close(con)}
)
)
tar_make()
* start target wqp_data
* built target wqp_data
* end pipeline
在使用这两个软件包时如何诊断连接问题有什么建议吗?