首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >获取R脚本的路径

获取R脚本的路径
EN

Stack Overflow用户
提问于 2010-08-11 02:17:32
回答 11查看 54.4K关注 0票数 72

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

我之所以这样问,是因为我有几个使用RGtk2并从.glade文件加载图形用户界面的脚本。

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

这很好,但如果我将脚本移动到不同的目录或另一台计算机上,我必须更改路径。我知道,这不是什么大事,但如果能有这样的东西就好了:

setwd(getScriptPath())

那么,是否存在类似的函数呢?

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2010-08-13 10:01:56

使用source("yourfile.R", chdir = T)

票数 26
EN

Stack Overflow用户

发布于 2015-05-18 23:00:27

这对我来说很有效:

代码语言:javascript
复制
getSrcDirectory(function(x) {x})

这将在脚本中定义一个匿名函数(不执行任何操作),然后确定该函数的源目录,即脚本所在的目录。

票数 42
EN

Stack Overflow用户

发布于 2010-08-11 02:32:56

如果您将代码包装在包中,则始终可以查询包目录的某些部分。

下面是RGtk2包中的一个示例:

代码语言:javascript
复制
> system.file("ui", "demo.ui", package="RGtk2")
[1] "C:/opt/R/library/RGtk2/ui/demo.ui"
> 

您可以对源代码中的目录inst/glade/执行相同的操作,该目录将成为已安装软件包中的glade/目录-- system.file()将在安装时为您计算路径,而与操作系统无关。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3452086

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档