之前R语言xlsx包的一些问题:
1)安装问题;2)poi版本过低;3)读取速度
按顺序安装解决xlsx包的安装
install.packages("rJava")
install.packages("xlsxjars")
install.packages("xlsx")
library(xlsx)
library(readxl)
(1)xlsx包的作者很久没有更新了,最后更新日期在2014-08-22,所依赖的poi版本是3.1(Java11),而目前电脑的版本(java15),现在的poi版本都升级为5.0.0了,造成数据读取过程中
路径不明确,读取数据也会出现一下报警信息,或者读取速度也因此受到限制。
(2)此外xlsx包的读取函数是read.xlsx(data,sheetIndex=NULL,sheetName=NULL),虽然可以指定第几个sheet或者根据sheet名字来识别表格,但是由于poi版本的限制,我们的电脑或出现
警告信息或者报错,只能通过安装低版本的java包解决,所以我建议使用readxl包中的read_xlsx(data,sheet=NULL),也比较方便。
#获取xls文件中sheet名字:
sheets=excel_sheets("C:/Users/Desktop/辽宁城市污染物2019.xlsx")
#获取xls文件中sheet数量:
length(excel_sheets("C:/Users/Desktop/辽宁城市污染物2019.xlsx"))
#R循环实现合并xls文件中的分表
mydata<-data.frame()
for(i in 1:length(sheets){
datai=read_xlsx("dataname",sheet=i)
mydata<-rbind(datai,mydata)
i=i+1
}
write.csv(mydata,"mydata.csv",col.names=F)