如何将R语言生成的子文件保存至刚创建的指定文件夹?
解决方案
其实很简单,核心是先把你创建的带时间戳的目录路径保存为一个变量,这样后续所有保存操作都能复用这个路径,确保文件存入正确的目录。修改后的代码如下:
# 1. 定义并保存目标目录路径(把时间戳目录的路径存成变量,方便后续调用) target_directory <- file.path("~/coefficient_rho", format(Sys.time(), "%F, %H:%M:%S")) # 2. 创建目录(添加recursive=TRUE确保父目录不存在时也能创建,showWarnings=FALSE避免重复创建报错) dir.create(target_directory, recursive = TRUE, showWarnings = FALSE) # 3. 构建要保存的文件路径,把变量和文件名拼接起来 save_file_path <- file.path(target_directory, sprintf("submatrix_%s.RData", opt$subset)) # 4. 执行保存操作 save(res, file = save_file_path)
关键说明:
- 之前的问题是你创建了目录,但没有保存它的路径,
save时直接写了固定的父目录~/coefficient_rho,自然不会存入动态生成的子目录里。 - 用
file.path拼接路径是跨平台的最佳实践,比直接用paste更稳妥,能自动处理不同系统的路径分隔符(Windows是\,Linux/macOS是/)。 - 如果后续还要保存其他文件(比如
submatrix_2.RData),只需要重复步骤3和4,替换文件名即可,都能自动存入同一个带时间戳的目录。
内容的提问来源于stack exchange,提问作者pedro
相关产品推荐
相关产品推荐

