波浪号“~”表达式在 "R" 中不起作用?

Tilde "~" expression not functioning in "R"?

波浪号表达式在我的 RStudio 上不起作用!我正在使用 windows 10 OS。

更新:仔细查看后(感谢 Dason)似乎“~”指向 "user/Documents/" 而不是 "user/"。有什么解决办法吗?

有什么帮助吗?

正如您自己发现的那样,R 的 ~ 指向您的文档文件夹。解决此问题的一种简单方法是使用 ~/../ 开始要引用的路径。因此,您的 setwd 调用将如下所示:

setwd('~/../{your actual path from home}')

我的 Windows PC 上也出现了同样的问题。我手头没有 Linux 机器来测试那里是否相同。 R 从 R_USER 环境变量中获取此变量。您可以在 R 环境启动文件中覆盖它。此问题并非特定于 RStudio,当您从命令行启动 R 会话时也会发生。

Windows R 中的主目录使用环境变量 R_USER 设置使用 Windows(从开始菜单搜索 "environment variable")。无论您将其设置为什么,都将成为 R 用于 ~ 的内容。我的设置为 C:\Users\trehman\R.

这是我的样子。

启动时,R 在 R_HOME 目录中查找 Renviron.site。打开并编辑它

file.edit(file.path(Sys.getenv('R_HOME'), 'etc', 'Renviron.site'))

在该文件中使用您希望 '~' 指向的路径定义 R_USER

R_USER = 'C:/Users/USERNAME'

参考资料: R for Enterprise: Understanding R’s Startup