【问题标题】:"long vectors not supported yet" error in Rmd but not in R ScriptRmd 中的“尚不支持长向量”错误,但 R 脚本中没有
【发布时间】:2017-01-17 22:12:03
【问题描述】:

我正在使用 R 3.1 和 RStudio 0.99 操作矩阵。

我有我的 R 脚本,使用 cmd+enter 可以正常工作。

我创建了一个 Rmd 用于报告,但出现此错误

Error in lazyLoadDBinsertVariable(vars[i], from, datafile, ascii, compress,  : 
  long vectors not supported yet: ../../../../R-3.3.1/src/main/connections.c:5600
Calls: <Anonymous> ... <Anonymous> -> <Anonymous> -> lazyLoadDBinsertVariable
Execution halted

有没有办法绕过这个错误?

这似乎是Large Matrices in R: long vectors not supported yet的复制品

但不同的是,这仅在尝试创建 Rmd 时发生,在任何其他情况下都不会发生

【问题讨论】:

标签: r rstudio knitr r-markdown


【解决方案1】:

我今天也遇到了这个问题,并通过在我的 .Rmd 的设置块中使用 cache.lazy = FALSE 来修复它。

所以我的 R Markdown 文件中第一个块的内容如下所示:

library(knitr)
knitr::opts_chunk$set(cache = TRUE, warning = FALSE, 
                      message = FALSE, cache.lazy = FALSE)

【讨论】:

  • 这是正确的答案。我只是想添加它,无论出于何种原因,我都必须从options 而不是opts_chunk$set 访问它。所以我有options(cache = TRUE, warning = FALSE, message = FALSE, cache.lazy = FALSE)。如果这有什么不同,我在 RStudio 3.2.2 上
  • 如果你正在缓存一个非常大的 R 对象,这可能是个问题。那是我的问题。
  • 使用 knitr::opts_chunk$set 的原始答案在 R 3.5.1 上为我工作。
【解决方案2】:

我在尝试将 .rmd 文件编织成 pdf 时遇到了同样的错误。 被指控的代码块被缓存。

有没有办法绕过这个错误?

删除 'cache = TRUE' 或将其设置为 FALSE 似乎可以解决问题。

【讨论】:

猜你喜欢
  • 2014-02-04
  • 2014-08-11
  • 2014-06-07
  • 2020-06-10
  • 1970-01-01
  • 2014-08-08
  • 2014-06-28
相关资源
最近更新 更多