相关疑难解决方法(0)

获取R脚本的路径

有没有办法以编程方式在脚本本身内找到R脚本的路径?

我问这个是因为我有几个脚本使用RGtk2并从.glade文件加载GUI.

在这些脚本中,我不得不setwd("path/to/the/script")在开头放置一条指令,否则将找不到.glade文件(位于同一目录中).

这很好,但如果我将脚本移动到另一个目录或另一台计算机,我必须更改路径.我知道,这不是什么大问题,但有一些东西会很好:

setwd(getScriptPath())

那么,是否存在类似的功能?

r path

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

R中的包相对路径

我为使用相对路径的包编写了一些函数,例如:

"./data/foobar.rds"
Run Code Online (Sandbox Code Playgroud)

这是一个示例函数:

foo <- function(x) { 
x <- readRDS("./data/bar.rds")
return(x)
}
Run Code Online (Sandbox Code Playgroud)

现在,如果我要在包的开发路径中工作,这就像我期望的那样工作.但是当我加载包时,此路径使用当前工作目录而不是包的相对路径.

如何设置它以使包中的函数路径保持在包相对路径中?

r r-package

11
推荐指数
1
解决办法
2741
查看次数

使用带有 cronR 调度的 here 包的正确方法

我一直在使用这个here 来让我的项目更便携。除了我cronR用来安排我的一些脚本之外,它的效果很好。当我my_script.R从 Rstudio运行时,我收到一条消息library(here)

here() starts at /home/pd/projects/my_proj
Run Code Online (Sandbox Code Playgroud)

当我设置script.R运行 using 时,cronR我收到一条不同的消息:

here() starts at /home/pd
Run Code Online (Sandbox Code Playgroud)

my_schedule.cron是存储的地方。理想情况下,我想保持my_schedule.cron原样。my_script.R除了保存数据之外,我可以从日志中看到运行良好的日志,因为使用的路径here()不正确。无论如何,是否可以在从终端或终端运行here时获得检测项目目录的功能?my_script.RcronR

cron r

5
推荐指数
1
解决办法
995
查看次数

标签 统计

r ×3

cron ×1

path ×1

r-package ×1