我在R中有一个数据帧,它想要写入excel(或csv)并以漂亮的格式输出(例如,带有边框,表格的标题,而不是从单元格A1开始)。
目前我使用函数write.table将我的数据帧写入csv文件,然后将数据复制并粘贴到excel中的文档中,我将表格格式化为模板。
当它只是一个数据帧时,这不是一个主要问题,但我现在想要为多个数据帧执行此操作,并在excel中的多个选项卡中进行这些操作。
有没有一种方法可以将我的数据框自动复制到现有Excel电子表格中的特定单元格,并正确设置所有格式?
答案 0 :(得分:19)
正如Joran所说,你有XLConnect包裹。请仔细阅读该软件包的documentation或vignette,以确切知道可能的内容。
使用XLConnect通常会覆盖单元格样式,除非使用
将样式操作设置为“none”setStyleAction(wb,XLC$"STYLE_ACTION.NONE")
让你走上正确的道路,这是一个微不足道的例子:
require(XLConnect)
wb <- loadWorkbook("test.xlsx", create=TRUE)
setStyleAction(wb,XLC$"STYLE_ACTION.NONE")
Data <- data.frame(
a = 1:10,
b = letters[1:10]
)
writeWorksheet(wb,Data,"aSheet",startRow=1,startCol=1,header=TRUE)
saveWorkbook(wb)
在
在
xlsx
包来做同样的事情。我个人使用XLConnect
因为它可以处理xls和xlsx,并且看起来比我用来操作EXCEL文件的任何旧包更稳定。我还没有使用xlsx
包。您可以查看CRAN page on Data Import/Export以了解可用的内容。
答案 1 :(得分:0)