向superuser提问并and了,所以在这里尝试。这似乎跨越了SU / SO的边界。
在对某种R配置问题进行故障排除时,该问题在尝试在同事的Windows 10计算机上编织.Rmd时导致pandoc转换失败,我注意到.libPaths()
中的第一个路径指向网络目录,而不是c:/Users/[username]/R/win-library/...
目录。
在R中运行Sys.getenv()
表明HOMEDRIVE
和HOMEPATH
分别为c:
和\Users\[username]
,但仍然有HOME
列出的环境变量指向了我们在.libPaths()
在cmd shell中运行SET
根本没有列出此HOME
环境变量,因此R似乎在其他地方找到了它……
R在哪里获得此HOME
环境变量?
FWIW:我通过设置Windows用户环境变量HOME =%HOMEDRIVE %% HOMEPATH%来解决配置问题。然后R从那里适当地设置所有其他环境变量。
答案 0 :(得分:3)
R启动有些复杂,但是有据可查。通常的出发地是help("Startup")
。您的问题的答案未在此处记录,但您可以在另请参见部分找到该线索:
有关Windows上“主”目录的定义,请参见“ rw-FAQ” Q2.14。可以通过Sys.getenv(“ R_USER”)
从正在运行的R中找到它。
,实际上https://cran.r-project.org/bin/windows/base/rw-FAQ.html#What-are-HOME-and-working-directories_003f中引用的常见问题解答为我们提供了答案:
主目录设置如下:如果环境变量R_USER 设置,则使用其值。否则,如果环境变量HOME为 设置,则使用其值。在这两个用户可控制的设置之后,R 尝试查找系统定义的主目录。它首先尝试使用 Windows“个人”目录(通常为 C:\ Users \ username \ Documents)。如果失败,那么两种环境 变量HOMEDRIVE和HOMEPATH已设置(通常是), 值是$ {HOMEDRIVE} $ {HOMEPATH}。如果所有这些均失败,则当前 使用工作目录。
答案 1 :(得分:0)
您可能想看看the here package,关于编织的the ezknitr package.,在RStudio中,您可以在编织菜单中指定编织是否会在当前目录中进行,目录或项目目录as shown here。