我们有很多选择能完成写入Excel文件任务,本文推荐两个在实践中较常用的R包:xlsx包和XLConnect包。这两个包作者都是通过Java来写入Excel文件,所以性能相对比较稳定。
那我们来看下这两个包的具体示例:
xlsx包首先,创建数据集:
sample.dataframe
如果你Excel文件没有创建,则可以直接将数据写入到新Excel文件中:
library(xlsx) 
#load the package
write.xlsx(x = sample.dataframe, 
file = 
"test.excelfile.xlsx",
        sheetName = 
"TestSheet", row.names = 
FALSE)
如果Excel文件已经存在,则可以写入数据到新的sheet,或者直接写到现有的sheet中,如workbook.sheets workbook.test :
addDataFrame(x = sample.dataframe, sheet = workbook.
test,
   row.names = 
FALSE, startColumn = 
4) 
# 从第一行、第四列写入数据
saveWorkbook(workbook.sheets, 
"test.excelfile.xlsx") 
#保存文件
XLConnect包第一步:制作Excel模版文件
library(XLConnect) 
#load the package
ExcelFile <- 
"/home/linux/scoreCard-new/DailyScoreCard_20160307.xls"  ## 模版
template <- paste0(
"/home/linux/scoreCard-new/ResultOutput/DailyScoreCard_",Sys.Date()-
1,
".xls") 
## 文件名
file.copy(ExcelFile, template) 
## 拷贝模版文件
第二步:写入数据到Excel
writeWorksheetToFile(template, 
data=data_frame,
                     sheet=
"sheet1",header = 
F,startRow=
4, startCol = 
2)## 从第四行、第二列写入模版文件中sheet1表