【问题标题】:knitr throws error when seq has as.Date arguments当 seq 有 as.Date 参数时,knitr 抛出错误
【发布时间】:2018-01-17 05:16:25
【问题描述】:

这在 Rmd 块中工作正常:

from.date <- as.Date(as.character(date.min), '%Y-%m-%d')
to.date <- as.Date(as.character(date.max), '%Y-%m-%d')
all_dates <- data.frame(created_date = seq(from = from.date, to = to.date, by = "1 day"))

但是当我尝试编织文档时,我得到了这个:

Error in seq.int(0, to0 - from, by) : 'to' must be a finite number Calls: <Anonymous> ... withVisible -> eval -> eval -> data.frame -> seq -> seq.Date.

我上周刚刚将 R 更新到 3.4,将 RStudio 更新到 1.1.383。奇怪的是,它今天早些时候工作了,在我得到 Rmd 文档打印出 seq 后工作了几次。

如果我将cat("Date range:", as.character(from.date), '-', as.character(to.date), '\n') 添加到块并执行该块,它会给出Date range: 2016-09-01 - 2017-12-21,所以'to' 参数肯定是有限的。

【问题讨论】:

标签: r knitr


【解决方案1】:

找到了。较早的代码块通过获取日期时间向量的最小值和最大值来重置 date.min 和 date.max 值,这会产生 NA。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-05
    相关资源
    最近更新 更多