在设置了默认工作目录以及我在RStudio选项中的第一个(也是唯一一个)项目的路径后,我想知道为什么RStudio每次都会在我的“ / home”目录中不断创建一个名为“ R”的空文件夹开始。
有没有可以删除/编辑(最终创建)的文件来停止这种烦人的行为,如果可以,它在哪里?
系统:Linux Mint v。19.3 软体:RStudio v。1.3.959 / R版本3.4.4
预先感谢您的提示。
答案 0 :(得分:0)
是的,您可以通过一组环境变量来阻止创建export const Select = ({ options, defaultLabel, setOptionSelected }) => {
const [label, setLabel] = useState(defaultLabel);
const [showOptions, setShowOptions] = useState(false);
const handleClickOption = (option) => {
setShowOptions(false);
setLabel(option.label);
setOptionSelected(option);
};
return (
<>
<div className='selected-container'>
<div className='selected' onClick={() => setShowOptions(!showOptions)}>
<p>{label}</p>
<GoChevronDown />
</div>
<div className='select-box'>
<div className={`options-container ${showOptions ? 'active' : ''}`}>
{options.map((option) => (
<SelectOption option={option} onClick={handleClickOption} />
))}
</div>
</div>
</div>
</>
);
};
目录— R is configurable。
但是,正确设置这些设置并非易事。第一个问题是,许多R软件包对与其一起安装的R版本敏感。如果升级R并尝试加载现有软件包,则它可能会损坏。因此,R包库路径应特定于R版本。
在集群上,另一个问题是,运行在不同体系结构上的各种集群节点可能会读取相同的库路径。这很少见,但确实如此。在这种情况下,取决于体系结构,编译后的R软件包可能需要有所不同。
因此,通常,R库路径需要特定于R版本和系统体系结构。
接下来,即使您配置了替代路径, R也会默默地忽略它(如果该路径不存在)。因此,请确保手动创建您已配置的目录。
最后,该配置放在哪里?一种选择是将其放入user environment file中,其路径可以使用环境变量R
指定-默认为R_ENVIRON_USER
。不过,这并不是理想的选择,因为这意味着用户在调用R:此文件中的变量 override 调用环境时无法暂时覆盖此设置。
相反,我建议在用户个人资料(例如$HOME/.Renviron
)中进行设置。但是,当您使用桌面启动器启动RStudio时,将不会读取此文件,因此请确保edit your *.desktop
file accordingly。 1
总而言之,将以下内容添加到您的$HOME/.profile
中:
$HOME/.profile
并确保该目录存在:重新获得export R_LIBS_USER=${XDG_DATA_HOME:-$HOME/.local/share}/R/%p-library/%v
(在当前的内启动新的shell是不够的),然后执行
~/.profile
上面使用的是XDG base dir specification,这是Linux系统上的实际标准。 2 路径使用占位符mkdir -p "$(Rscript -e 'cat(Sys.getenv("R_LIBS_USER"))')"
和%p
。 R将分别用系统平台和R版本(格式为%v
)填充它们。
如果要使用自定义R配置文件(“用户配置文件”)和/或R环境文件,建议通过配置major.minor
和R_PROFILE_USER
以相同的方式设置它们的位置(因为它们的默认位置再次位于用户主目录中):
R_ENVIRON_USER
1 我没有Linux桌面系统,但我相信将export R_PROFILE_USER=${XDG_CONFIG_HOME:-$HOME/.config}/R/rprofile
export R_ENVIRON_USER=${XDG_CONFIG_HOME:-$HOME/.config}/R/renviron
条目编辑为以下内容应该可以做到这一点:
Env
2 其他系统需要不同的处理方式。在macOS上,库位置的规范设置为Exec=env R_LIBS_USER=${XDG_DATA_HOME:-$HOME/.local/share}/R/%p-library/%v /path/to/rstudio
。但是,在macOS上为GUI应用程序设置环境变量为frustratingly complicated。
在Windows上,规范位置为$HOME/Library/Application Support/R/library/%v
。要设置此变量,请在PowerShell中使用[Environment]::SetEnvironmentVariable
,或在使用%LOCALAPPDATA%/R/library/%v
时使用setx
。