【问题标题】:Save R output to a different directory将 R 输出保存到不同的目录
【发布时间】:2018-02-02 02:28:04
【问题描述】:

我正在使用 RStudio 在 Windows 计算机上运行一些 R 代码,并且我的代码会定期生成 Excel 文件和 netCDF 文件(最终会生成数十个)。我不希望他们弄乱我的工作目录。有没有办法将文件保存到父目录中名为“输出”的目录(例如:C:/.../原始文件路径/输出)?我想要一种将当前工作目录更改为不同目录的方法。我知道有 getwd() 和 setwd() 但是如何在不输入整个 windows 路径的情况下设置输出目录的路径(例如:setwd(windows 或 Mac/输出的当前源文件路径)。我的合作者使用一台 Mac,他的输出也会存储在那里。

【问题讨论】:

  • 你为什么不用write.xlsx(x=df, file = "C:/.../original file path/Output/file.xlsx", row.names = FALSE)
  • 谢谢。但是如何将非 Excel 输出文件(图像、pdf、netCDF 等)保存到父目录以外的其他位置?

标签: r save output


【解决方案1】:

您可以在 write.csv 函数和其他指定路径的类似写入函数中指定参数。

#Output path
OutPath<- "C:/blah/blahblah/op/"

#Table to dump as output
OutTbl <- iris 

write.csv(OutTbl, file = OutPath)

来源:https://stat.ethz.ch/R-manual/R-devel/library/utils/html/write.table.html

【讨论】:

  • 大多数输出​​函数都会有一个文件目标参数。以下帖子提供了有关该主题的一些想法,r-bloggers.com/automatically-save-your-plots-to-a-folder。另一个提示是使用帮助函数 (?function_name) 来查找允许的参数。如果有任何存在,像 ?write.csv() 这样的东西会显示函数的文档,在大多数情况下,它会告诉您可以传递哪些参数。
【解决方案2】:

您的write* 函数中有一个file 参数。如果您的 Output 目录在您的工作目录中,它的工作方式如下:

write.xlsx(df, file = "Output/table.xlsx")
write.csv(df, file = "Output/table.csv")

【讨论】:

  • 您拥有适用于每种文件类型的函数:ggsave、jpeg、...并且每个函数都有一个 file 参数。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-20
  • 1970-01-01
  • 2013-03-10
  • 2021-01-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多