Fil*_*ppo 7 java excel r overwrite r-xlsx
我使用的包xlsx版本:0.0.7日期:2014-08-01.在R版本3.0.1(2013-05-16) - "好运动"平台:i386-w64-mingw32/i386(32位).
我有一个xlsx文件,至少有2张(比如A和B).我需要从A读取数据,编辑它们并将它们保存在B中.这必须在期刊基础上完成.
我能够从A读取数据read.xlsx.编辑数据框后,我想将其保存在同一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)
Run Code Online (Sandbox Code Playgroud)
但它给了我这个错误:
错误
.jcall(wb, "Lorg/apache/poi/ss/usermodel/Sheet;", "createSheet",:java.lang.IllegalArgumentException:工作簿已包含此名称的工作表
我真的需要多次更换现有的纸张.我怎样才能做到这一点?
谢谢,菲利波
小智 17
如果要将新数据帧保存在现有excel文件中,首先必须加载xlsx文件:
wb <- loadWorkbook(file)
Run Code Online (Sandbox Code Playgroud)
你有哪些床单你会得到这样的:
sheets <- getSheets(wb)
Run Code Online (Sandbox Code Playgroud)
您可以轻松地删除和添加(并因此替换)工作表:
removeSheet(wb, sheetName="Sheet1")
yourSheet <- createSheet(wb, sheetName="Sheet1")
Run Code Online (Sandbox Code Playgroud)
你可以使用数据框填充工作表:
addDataFrame(yourDataFrame, yourSheet, <options>)
addDataFrame(anotherDataFrame, yourSheet, startRow=nrow(yourDataFrame)+2)
Run Code Online (Sandbox Code Playgroud)
最后一步是将整个工作簿保存为.xlsx:
saveWorkbook(wb, file)
Run Code Online (Sandbox Code Playgroud)
顺便说一下:xlsx-package的文档非常好,对这些问题很有帮助:) http://cran.r-project.org/web/packages/xlsx/xlsx.pdf