使用R写入Excel方法总结

浏览: 1991

 数据部门在和公司其他部门打交道过程中,将数据写入Excel文件经常会涉及到(从各种临时需求到日常数据报告Dashboard等等)。

通过Rdocumentation(http://www.rdocumentation.org)查询write to excel,会有15个R包、25个具体函数可能相关,如下图:

        我们有很多选择能完成写入Excel文件任务,本文推荐两个在实践中较常用的R包:xlsx包和XLConnect包。这两个包作者都是通过Java来写入Excel文件,所以性能相对比较稳定。

        那我们来看下这两个包的具体示例:

 xlsx包

首先,创建数据集:

sample.dataframe

如果你Excel文件没有创建,则可以直接将数据写入到新Excel文件中:

123library(xlsx) #load the packagewrite.xlsx(x = sample.dataframe, file = "test.excelfile.xlsx",        sheetName = "TestSheet", row.names = FALSE)

如果Excel文件已经存在,则可以写入数据到新的sheet,或者直接写到现有的sheet中,如workbook.sheets workbook.test :

123addDataFrame(x = sample.dataframe, sheet = workbook.test,   row.names = FALSE, startColumn = 4) # 从第一行、第四列写入数据saveWorkbook(workbook.sheets, "test.excelfile.xlsx") #保存文件

 XLConnect包

 第一步:制作Excel模版文件

123library(XLConnect) #load the packageExcelFile <- "/home/songning/scoreCard-new/DailyScoreCard_20160307.xls"  ## 模版template <- paste0("/home/songning/scoreCard-new/ResultOutput/DailyScoreCard_",Sys.Date()-1,".xls") ## 文件名file.copy(ExcelFile, template) ## 拷贝模版文件

 第二步:写入数据到Excel

123writeWorksheetToFile(template, data=data_frame, sheet="sheet1",header = F,startRow=4, startCol = 2)## 从第四行、第二列写入模版文件中sheet1表中。

具体函数的参数解释,大家可以参考帮助文件。

参考:

Rdocumentation:http://www.rdocumentation.org

XLConnect: Excel Connector for R:https://cran.r-project.org/web/packages/XLConnect/index.html

xlsx: Read, write, format Excel 2007 and Excel 97/2000/XP/2003 files:https://cran.r-project.org/web/packages/xlsx/index.html

推荐 3
本文由 天善智能 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册