如果文件存在于文件夹中,则跳过处理部分

时间:2014-01-05 13:29:11

标签: r statistics

我正在阅读几个* .csv,其中名称和路径是在运行时确定的。

但有时候有些文件不存在。对于这个文件,我需要一些异常处理。

目前我正在阅读我的文件:

    companyFileName <- paste("C://Users//Prices//",companiesIsin,".csv")
df <- read.csv(gsub(" ","", companyFileName, fixed=TRUE), header = TRUE, sep = ";",stringsAsFactors=FALSE)

当文件夹中不存在该文件时,我收到错误。 R中是否存在类似异常处理的内容?

感谢您的回复!

1 个答案:

答案 0 :(得分:24)

您可以使用函数file.exists检查文件是否存在。因此,您可以在尝试读取之前检查文件是否存在以避免错误,例如

if (file.exists(companyFileName))
   df <- read.csv(gsub(" ","", companyFileName, fixed=TRUE), header = TRUE, sep = ";",stringsAsFactors=FALSE)

修改: 您还可以简化路径的创建,并对;分隔符使用read.csv2。 这使它更具可读性。

f <- paste0("C://Users//Prices//",companiesIsin,".csv")
if (file.exists(f))
  df <- read.csv2(f, TRUE, stringsAsFactors=FALSE)