R动态设置目录

时间:2014-12-04 05:06:16

标签: r if-statement

基本R问题。我似乎无法在以下代码中动态设置路径(假变量)。这是更大的代码段的一部分,但我已将其跟踪到此。我正在寻找一个文件夹,如果它存在,我想在该目录中创建一个只有时间的子文件夹,然后将RDS保存在该目录中。下面的代码片段不起作用。

目前,如果顶级目录存在,此代码将创建子目录,但随后将RDS保存在顶级目录而不是该子目录中。基本上每当我运行它时,my_dir总是出现,无论my_dir< - file.path(out,subbie)设置为什么。

out <- './output'
subbie <- 'Hello, World'

my_dir <- file.path(out, subbie)

my_time <- format(Sys.time(), "%Y-%b-%d")

if (file.exists(my_dir)){
  my_dir <- dir.create(my_dir, my_time)
} else {
  my_dir <- dir.create(my_dir)
}

saveRDS(my_df, file=file.path(my_dir, paste0('_', my_time, '.RDS')))

1 个答案:

答案 0 :(得分:3)

my_dir <- dir.create(my_dir)

您可以在此处为变量TRUE提供值FALSEmy_dir。 如果file.exists(my_dir)FALSE,您可能需要:     dir.create(paste(my_dir,my_time,sep =“/”),recursive = TRUE)。 这不仅会创建路径的最后一个元素。