knitr将不再编译:"错误在.First()"

时间:2015-11-30 13:46:24

标签: r knitr

当我今天打开R(通过RStudio)时,我在控制台中看到以下红色文字:

Loading required namespace: ffbase
Error in .First() : could not find function "load.ffdf"

这也出现在基础R中。我今天尝试通过knitr编译.rnw文件(使用RStudio)并看到以下内容:

Loading required namespace: ffbase
Error in .First() : could not find function "load.ffdf"
Execution halted

我之前从未见过这个问题,.rnw汇编在过去一直有效,没有任何搜索帮助我解决这个问题。

我没有使用.Rprofile文件的经验。当我输入.First时,我得到以下内容:

> .First
function () 
{
    if (!requireNamespace("ffbase")) {
        stop("Please install package ffbase, otherwise the files cannot be loaded.")
    }
    env <- load.ffdf(".", parent.frame())
}

我不知道这是来自哪里,默认是什么等等。

1 个答案:

答案 0 :(得分:3)

我通过执行以下操作解决了这个问题。

?.First开始。

它在文档中说明:

  

R搜索用户配置文件,R代码文件。此文件的路径   可以由R_PROFILE_USER环境变量指定(和   将执行波浪扩展)。如果未设置,则调用一个文件   在当前目录或中搜索‘.Rprofile’   用户的主目录(按此顺序)。用户配置文件是   来源于工作区。

     

...

     

接下来,如果在搜索路径上找到函数.First,则为   执行为.First()

     

...

     

有关Windows上“主页”目录的定义,请参阅“rw-FAQ”Q2.14。可以通过R运行Sys.getenv("R_USER")找到它。

我当前目录中没有.Rprofile文件,因此我使用Sys.getenv("R_USER")将我带到了主目录,该目录中有一个我删除的.Rprofile文件,现在错误消失了。