R自动检测文件路径

时间:2015-01-20 00:56:08

标签: r

当在R studio中自动运行时,有没有办法让R检测R脚本中输入文件的路径?

我有以下代码

input.data <- read.xlsx("C:/Users/haha/Desktop/haha/input.xlsx", "input", header=F, rowIndex=NULL, startRow=1, endRow=21, colIndex=c(1:2))

如果我要共享包含此代码的脚本,则用户必须在运行代码之前更改输入文件的目录路径。

我想找到一种自动执行此操作的方法,以便用户无需更改目录的路径即可运行脚本。

2 个答案:

答案 0 :(得分:1)

您可以通过这种方式自动获取脚本目录(basedir),然后使用该目录访问输入文件:

args <- commandArgs(trailingOnly = FALSE)
basedir <- dirname(sub("--file=", "", args[grep("--file=", args)]))

input.data <- read.xlsx(paste0(basedir, "input.xlsx"), "input", header=F, rowIndex=NULL, startRow=1, endRow=21, colIndex=c(1:2)))

答案 1 :(得分:0)

您可以使用file.choose()提示用户导航文件。 它看起来像input.data <- read.xlsx(file.choose(), "input", header=F, rowIndex=NULL, startRow=1, endRow=21, colIndex=c(1:2))