确定当前文件在R中的位置以包含来自同一目录的文件?

时间:2011-08-28 16:16:16

标签: r filesystems system

我希望source()能够在同一目录中包含不同文件的文件,但我不想在运行此文件之前从R-prompt设置工作目录:< / p>

> getwd()
[1] "/Users/myser"
> source("/Users/myuser/workspace/myproject/myfile.r")

在/ users / myuser / workspace / myproject里面,会有myfile.r和my-utils.r。 myfile.r从其中调用source('my-utils.r')

其他编程语言可以确定当前文件的路径。 R有类似的东西吗?例如:

cur_dir <- sys.get_current_file_path()
source(file.path(cur_dir, "my-utils.r"))

1 个答案:

答案 0 :(得分:11)

source("/Users/myuser/workspace/myproject/my-utils.r", chdir=TRUE)

chdir选项设置为true且源文件参数是完整路径时,文件目录将在获取文件时用作工作目录。

注意:cur_dir <- sys.get_current_file_path()没有多大意义,因为路径名不是唯一的。