gpt4 book ai didi

java - 使用 write.xlsx 将现有工作表替换为 R 包 xlsx

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:04:51 27 4
gpt4 key购买 nike

我正在使用包 xlsx 版本:0.5.7 日期:2014-08-01。在 R 版本 3.0.1 (2013-05-16) 中——“Good Sport”平台:i386-w64-mingw32/i386(32 位)。

我有一个至少包含 2 张纸(比如 A 和 B)的 xlsx 文件。我需要从 A 读取数据,编辑它们并将它们保存在 B 中。这必须定期完成。

我可以使用 read.xlsx 从 A 读取数据。编辑数据框后,我想将其保存在同一 xlsx 文件中的现有工作表 B 中。

我试试这条线

write.xlsx(down, paste0(root,'/registration reports/registration complete_WK.xlsx'), sheet="data_final", col.names=T, row.names=F, append=T, showNA=F)

但它给我这个错误:

Error in `.jcall(wb, "Lorg/apache/poi/ss/usermodel/Sheet;", "createSheet", ` : 
java.lang.IllegalArgumentException: The workbook already contains a sheet of this name

我需要多次替换现有的工作表。我该怎么做?

最佳答案

如果要将新数据框保存在现有的 excel 文件中,首先必须加载 x​​lsx 文件:

wb <- loadWorkbook(file)

你有哪些床单,你会得到这样的:

sheets <- getSheets(wb)

您可以轻松地删除和添加(并因此替换)工作表:

removeSheet(wb, sheetName="Sheet1")
yourSheet <- createSheet(wb, sheetName="Sheet1")

你可以用数据框填充工作表:

addDataFrame(yourDataFrame, yourSheet, <options>)
addDataFrame(anotherDataFrame, yourSheet, startRow=nrow(yourDataFrame)+2)

最后一步是将整个工作簿保存为 .xlsx:

saveWorkbook(wb, file)

顺便说一句:xlsx-package 的文档非常好,对此类问题很有帮助 :) http://cran.r-project.org/web/packages/xlsx/xlsx.pdf

关于java - 使用 write.xlsx 将现有工作表替换为 R 包 xlsx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28053185/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com