7

这是我在我的 linux 机器上启动R的方法。

.Rprofile位于我的$HOME目录的根目录中,并且只有这一行:

source ("~/.config/r/Renviron.r")

然后我在我的Renviron.r文件中附加所有类型的选项、用户环境变量路径、函数或别名。除其他外,这一行设置了通往 Rhistory 的道路:

Sys.setenv(R_HISTFILE="/developement/language/r/.Rhistory")

路径正确,由命令返回

R > Sys.getenv("R_HISTFILE")

按照这个文档,似乎没有必要明确告诉 R 加载历史记录 (loadhistory("path/to/HISTFILE")。当我在终端上运行R时,没有历史记录。

我究竟做错了什么 ?谢谢你的帮助

4

2 回答 2

2

由于某种原因,有关如何加载历史记录的 R 文档未更新或更正。显然,让它工作的唯一方法是使用utils::包含该loadhistory()函数的库的钩子。在您的.Rprofile中,添加如下行:

if(interactive()) try(utils::loadhistory(file="C:/pathto/home/xxxx/.Rhistory"))

尝试在没有钩子的情况下加载它,会导致“未找到函数”错误。

于 2018-09-09T18:21:38.653 回答
1

我找到了无法加载 HISTFILE 的原因。该文件必须在.Rhistory之前至少使用一个字母重命名。

> loadhistory("path/to/.Rhistory") # loads no commands
> loadhistory("path/to/R.Rhistory") # loads indeed command history
于 2013-10-25T17:18:40.530 回答