我有一个包含多张工作表的 Excel 文件。我想保存一个数据框并将其作为第一张工作表插入到文件中。如何使用 xlsx 包执行此操作?
最佳答案
@Navid 的回答对于包裹 xlsx
是正确的,但不幸的是它有一个 java 依赖项,这导致我在读取/写入大量数据(10,000 多行,所以甚至没有那么大!)时遇到很多问题。
我建议使用 openxlsx
包,避免了java依赖。如果您想将更多工作表添加到单个文件中,那么这就是我认为适合我的方法。 @eipi10 关于 worksheetOrder()
的评论是一个很好的提示,但您每次都需要使用 rev(1:3)
之类的内容更改该参数。 (假设您在文件中有三个工作表)。
为清楚起见,这里是 openxlsx
的工作流程版本 4.0
# Create a blank workbook
OUT <- createWorkbook()
# Add some sheets to the workbook
addWorksheet(OUT, "Sheet 1 Name")
addWorksheet(OUT, "Sheet 2 Name")
# Write the data to the sheets
writeData(OUT, sheet = "Sheet 1 Name", x = dataframe1)
writeData(OUT, sheet = "Sheet 2 Name", x = dataframe2)
# Reorder worksheets
worksheetOrder(OUT) <- c(2,1)
# Export the file
saveWorkbook(OUT, "My output file.xlsx")
关于r - 将工作表添加到 Excel 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34731382/