在许多(解释的)编程语言中,在获取文件时设置变量,以便某些代码可以确定加载文件的文件名.例如.在
ruby中,加载文件时设置变量__FILE__.
R中有这样的功能吗?有没有办法让R代码确定从哪里加载?
例:
main.R:
source("foo.R")
/home/bar/foo.R:
print(FULL_FILENAME)
我有什么替换FULL_FILENAME使其打印:
[1] "/home/bar/foo.R"
没有硬编码源中的任何文件名?
最佳答案 你可以在你的文件顶部放置一个hack
provided by Gabor:
this.file <- parent.frame(2)$ofile
如果要提取目录的名称,可以执行以下操作:
this.dir <- dirname(this.file)
根据我对事物的理解,采购文件会创建两个父环境.外部(向上两步)包含有关源代码所在文件的信息.