0

试图获得过去 5 年某个日期的平均温度。继续遇到同样的错误。任何建议将不胜感激!

get_prism_dailys(type="tmean", dates = as.Date("2018-06-01", "2017-06-01", "2016-06-01", "2015-06-01", "2014-06-01"), keepZip=FALSE)

收到错误:

if (!is_within_daily_range(dates)) stop("请确保所有日期都在有效的 Prism 数据记录范围内") 出错:需要 TRUE/FALSE 的地方缺少值

4

1 回答 1

0

您的问题的简短答案非常简单:只需替换as.Datec()函数:

get_prism_dailys(type = "tmean", dates = as.Date("2018-06-01", "2017-06-01", 
    "2016-06-01", "2015-06-01", "2014-06-01"), keepZip=FALSE)

在我看来get_prism_dailys(),您可能使用过的第三个示例有一个小问题。让我们看看源代码get_prism_dailys(),这是可能的

print(get_prism_dailys)

使用以下函数dates处理参数: get_prism_dailys()gen_dates()

dates <- gen_dates(minDate = minDate, maxDate = maxDate, dates = dates)

反过来,我们可以使用 getAnywhere()gen_dates()来转换日期参数:as.Dates()

getAnywhere(gen_dates)
if(!is.null(dates)){    
    # make sure it is cast as a date if it was provided as a character
    dates <- as.Date(dates)

因此,date输入的转换as.Date()不是必需的,但必须将所有提供的日期放入单个向量中。

希望,这会有所帮助:)

于 2019-12-24T13:39:00.547 回答