我在R中有一个数据帧,它想要写入excel (或csv)并以良好的格式输出(例如,带有边框,表格的标题,而不是从单元格A1开始)。
此时,我使用函数write.table将数据帧写入csv文件,然后将数据复制并粘贴到excel中的文档中,在该文档中,我已将表格格式化为模板。
当它只是一个数据帧时,这不是一个主要问题,但我现在想对多个数据帧执行此操作,并在excel中跨多个选项卡使用这些数据帧。
有没有一种方法可以将我的数据帧自动复制到现有excel电子表格中的特定单元格,并正确设置所有格式?
发布于 2012-06-27 23:24:54
正如Joran所说,您已经拥有了XLConnect包。仔细阅读该包的documentation或vignette,以确切地了解可能发生的情况。
使用XLConnect通常会覆盖单元格样式,除非使用
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)
在此之前
之后
编辑:正如Dirk Eddelbuettel所指出的,您可以使用xlsx
包执行相同的操作。我个人使用XLConnect
,因为它可以同时处理xls和xlsx,而且看起来比我用来操作EXCEL文件的任何旧包都要稳定得多。我还没有用过xlsx
包。您可以查看CRAN page on Data Import/Export以了解可用的内容。
发布于 2021-04-20 06:27:15
https://stackoverflow.com/questions/11228942
复制相似问题