相关疑难解决方法(0)

R命令用于在Rstudio中将工作目录设置为源文件位置

我正在研究R中的一些教程.每个R代码都包含在一个特定的文件夹中.那里有数据文件和其他文件.我想打开.r文件并获取它,这样我就不必更改Rstudio中的工作目录,如下所示:

在此输入图像描述

有没有办法在R中自动指定我的工作目录

automation r working-directory

118
推荐指数
10
解决办法
9万
查看次数

在命令行(终端)上使用R脚本的最佳方法是什么?

使用R脚本从命令行执行简单绘图非常方便.但是,从bash脚本运行R并不方便.理想可能是这样的

#!/path/to/R
...
Run Code Online (Sandbox Code Playgroud)

要么

#!/usr/bin/env R
...
Run Code Online (Sandbox Code Playgroud)

但我无法完成其中任何一项工作.

另一个选择是将脚本纯粹保存在R中,例如script.R,并使用R --file=script.R或类似地调用它.但是,有时脚本会依赖于模糊的命令行开关,此时代码的一部分存在于脚本之外.例如:通过本地.Rprofile将事物从bash偷偷带入R中,所需的开关就是一切--vanilla意味着除外--no-init-file.

另一种选择是用于存储R标志的bash脚本,并且可以无痛地执行,然后调用R脚本.问题是,这意味着单个程序被分成两个文件,现在必须保持同步,一起转移到新机器等.

我目前最鄙视的选项是将R嵌入到bash脚本中:

#!/bin/bash
... # usage message to catch bad input without invoking R
... # any bash pre-processing of input
... # etc
R --random-flags <<RSCRIPT
# R code goes here
RSCRIPT
Run Code Online (Sandbox Code Playgroud)

一切都在一个文件中.它是可执行的,可以轻松处理参数.问题是像这样结合bash和R几乎消除了任何IDE不会在一个或另一个上失败的可能性,并且让我的心脏受到伤害.

我错过了一些更好的方法吗?

bash r

112
推荐指数
5
解决办法
12万
查看次数

当前来源文件的完整文件名

在许多(解释型)编程语言中,在获取文件时会设置一个变量,以便某些代码可以确定加载文件的文件名。例如,在 ruby​​ 中,该变量__FILE__是在加载文件时设置的。

R中有这样的功能吗?R 代码有没有办法确定它从哪里加载?

例子:

主要.R:

source("foo.R")
Run Code Online (Sandbox Code Playgroud)

/home/bar/foo.R:

print(FULL_FILENAME)
Run Code Online (Sandbox Code Playgroud)

我必须用什么替换 FULL_FILENAME 才能打印:

[1] "/home/bar/foo.R"
Run Code Online (Sandbox Code Playgroud)

无需在源代码中硬编码任何文件名?

r

6
推荐指数
1
解决办法
3994
查看次数

标签 统计

r ×3

automation ×1

bash ×1

working-directory ×1