R语言中如何写入xlsx的不同sheet表格

2019-06-13 20:31:31 浏览数 (1)

背景:

想要实现一个功能, 将不同的数据写入一个Excel中, 不同的数据对应不同的sheet表, 看了一下R语言, 找到的解决方法如下.

测试思路

  • 模拟两个数据框
  • 新建一个list表
  • 写入excel中

代码

aa<-data.frame(1:5,2:6)ab<-data.frame(2:60,13:71)library(openxlsx)sheets = list("sheet1"=aa,"sheet2"=ab)write.xlsx(sheets,"d:/ex.xlsx")

结果

感想:

最近发现, R语言中的list更好用, 我的R语言水平感觉要进步一个台阶了...

运用R语言的list示例:

需求描述: 现在有3个Excel, 想把这些Excel合并到一个Excel中的不同sheet表中, 如何实现?

根据糙快猛的解决方案, 新建一个Excel, 将这三个Excel的内容复制进去, 保存, 退出完成.

如果有90个Excel呢? 这就突出编程的效果了.

解决问题思路:

1, 使用dir函数, 返回文件名的集合

2, 新建一个list, 赋值为空NULL

3, 写一个for循环, 循环读入, 并保存到list中

4, 对list重命名

代码如下:

代码语言:javascript复制
a = dir()nlist=NULLfor(i in 1:length(a)){  nlist[[i]] = read.xlsx(a[i])}names(nlist) =awrite.xlsx(nlist,"hebing.xlsx")

打开结果:

搞定!

0 人点赞