更改path.expand位置(Win 7)

时间:2012-06-12 20:40:09

标签: r

目前:

path.expand("~")

给出:

"C:\\Users\\trinker\\Documents"

我希望它能够产生:

"C:\\Users\\trinker"

Windows命令提示符的目录是C:\Users\trinker。这表明这是我的Windows主目录。

?path.expand告诉我查看rw-FAQ (LINK)。这使得信息高于我的认知能力。我决定尝试如下实验:

> Sys.getenv("R_USER")
[1] "C:\\Users\\trinker\\Documents"
> normalizePath("~")
[1] "C:\\Users\\trinker\\Documents"

> Sys.getenv("R_USER") <- "C:\\Users\\trinker"
Error in Sys.getenv("R_USER") <- "C:\\Users\\trinker" : 
  target of assignment expands to non-language object
> normalizePath("~") <- "C:\\Users\\trinker"
Error in normalizePath("~") <- "C:\\Users\\trinker" : 
  target of assignment expands to non-language object 

我看到了:

Sys.setenv(...)
Sys.unsetenv(x)

但是我害怕我弄乱了我不应该盲目搞砸的东西,并决定寻求指导。

所以我希望再次~表示C:\\Users\\trinker\\(这是我上一台PC的默认设置)而不是现在的C:\\Users\\trinker\\Documents

2 个答案:

答案 0 :(得分:10)

要永久重置"~"为所有用户解析的目录,请将以下内容放在位于Renviron.site的文件$RHOME/etc/Renviron.site中:

R_USER="C:/Users/trinker"

(如果该文件尚未存在,您可以自己创建。)


如果计算机支持多个R用户,并且每个用户都想设置自己的R_USER位置,则每个用户都可以将以下内容放在他们自己的".Rprofile"文件中:

Sys.setenv(R_USER = "C:/Users/trinker")
在用户的主目录中查找

".Rprofile",通过键入Sys.getenv("HOME")返回该目录。有关详细信息,请参阅?Startupthe R for Windows FAQ

(感谢@Dason指出.Rprofile选项。)

答案 1 :(得分:0)

另一种选择是更新目标&#39;用于启动新R会话的快捷方式中的字符串。为此,右键单击图标,然后选择&#34;属性&#34;从上下文菜单中。选择&#34;快捷方式&#34;对话框的选项卡,并将以下名称/值对中的一个添加到target字段。

R_USER="c:\my\favorite\folder"
R_USER="%USERPROFILE%"

现在path.expand("~")将扩展为c:\my\favorite\folderc:\users\my name\

一些笔记。

  • 这也会改变R查找用户文件的位置,例如.RprofileRconsole和用户包库。
  • 如果您已将R固定到任务栏,则需要右键单击任务栏图标以查找从任务栏启动R的快捷方式图标(如下图所示):

enter image description here