我希望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"))
答案 0 :(得分:11)
source("/Users/myuser/workspace/myproject/my-utils.r", chdir=TRUE)
当chdir
选项设置为true且源文件参数是完整路径时,文件目录将在获取文件时用作工作目录。
注意:cur_dir <- sys.get_current_file_path()
没有多大意义,因为路径名不是唯一的。