Zac*_*ach 4 io xls r xlsx rjava
我尝试使用xlsx包将命名数据帧列表保存到xlsx文件中.列表中的数据框都已命名,但如果它也可以处理列表中未命名的元素,那将会很好.
这是我写的函数:
toXLS <- function(myList,myFile) {
#Initialize output workbook
require(xlsx)
wb <- createWorkbook()
for (name in names(myList)) {
createSheet(wb, sheetName=name)
}
#Write blank workbook to file
saveWorkbook(wb, myFile)
#Write output data to saved workbook
for (name in names(myList)) {
write.xlsx(myList[[name]], myFile, sheetName=name)
}
}
myList <- list(a=data.frame(1,2,3),b=data.frame('a','b','c'),d=data.frame('01-01-1900'))
toXLS(myList,paste(getwd(),'/output.xlsx',sep=''))
Run Code Online (Sandbox Code Playgroud)
它可以正常工作,但每次调用时都会覆盖输出工作簿write.xlsx.如何在工作簿中将data.frame作为工作表插入?
我没有与xlsx软件包结合,但它似乎为excel文件提供了一个很好的接口,只需要最少的设置.我也对其他好的选择持开放态度.
dar*_*zig 12
首先创建Excel文件:
wb <- createWorkbook()
saveWorkbook(wb, 'output.xlsx')
Run Code Online (Sandbox Code Playgroud)
然后附加每个工作簿:
lapply(names(myList), function(x) write.xlsx(myList[[x]], 'output.xlsx', sheetName=x, append=TRUE))
Run Code Online (Sandbox Code Playgroud)