来自串联的R项目文件路径

来自串联的R项目文件路径,r,function,R,Function,我正在学习R教程。我一直在研究一个函数,函数的一个部分是获取一个参数并使用它定义一个目录,在其中查找数据。然后它必须加载该数据 目前的工作如下: getmonitor <- function(id, directory){ csvfile <- function(id) { if (id < 10) { paste0(0,0,id,".csv") } else if (id < 100) { paste0(0,id,".

我正在学习R教程。我一直在研究一个函数,函数的一个部分是获取一个参数并使用它定义一个目录,在其中查找数据。然后它必须加载该数据

目前的工作如下:

getmonitor <- function(id, directory){

csvfile <- function(id) {
    if (id < 10) { 
        paste0(0,0,id,".csv")
    } else if (id < 100) {
        paste0(0,id,".csv")
    } else paste0(id,".csv")
}

foo <- read.csv(csvfile(id))

}

getmonitor
getmonitor您想要粘贴(目录,csvfile(id),sep=“/”)
而不是执行完全不同的操作的
append
。您似乎在使用
append
而没有阅读
?append
或测试文档底部的示例以了解它的功能。此外,您可以使用
sprintf('%03d',id)
,而不是整个
csvfile
函数。
getmonitor <- function(id, directory){

  csvfile <- function(id) {
      if (id < 10) { 
          paste0(0,0,id,".csv")
      } else if (id < 100) {
          paste0(0,id,".csv")
      } else paste0(id,".csv")
  }

  filepath <- append(directory,"/",csvfile(id))

  foo <- read.csv(filepath)

 }
getmonitor <- function(id, directory=getwd(), ...){

  csvfile <- sprintf("%03d.csv", id)

  filepath <- file.path(directory, csvfile)

  foo <- read.csv(filepath, ...)

  foo

 }