R导出excel自动命名sheet --ava.lang.OutOfMemoryError: GC overhead limit exceeded

来源:互联网 发布:手机端图片点击放大js 编辑:程序博客网 时间:2024/06/02 00:01

在R里面导出excel表格时,出现如题所示的错误提示。

解决方案:

在调包之前加语句:

options(java.parameters = "- Xmx1024m")

在导出数据之后加语句:

 gc()

完整示例:

# 打开excel需要的包library(openxlsx)# 导出excel需要的包options(java.parameters = "- Xmx1024m")  # *****记得加这句library(xlsx)library(rJava)library(xlsxjars)## 读取待处理数据#rawdata <- openxlsx::read.xlsx(xlsxFile="D:/Program Files (x86)/data/江苏省13719_1128.xlsx") # # 打开excel需要的包library(openxlsx)# 导出excel需要的包options(java.parameters = "- Xmx1024m")  # *****记得加这句library(xlsx)library(rJava)library(xlsxjars)## 读取待处理数据#rawdata <- openxlsx::read.xlsx(xlsxFile="D:/Program Files (x86)/data/江苏省13719_1128.xlsx")   # 按照地级市将江苏省的数据导出到同一个excel表格的不同sheet上,  # 并将sheet自动命名为地级市名称  #unique(rawdata[,6])             #  地级市名称  #length( unique(rawdata[,6]) )   #  地级市数量for(n in 1:length( unique(rawdata[,6]) ) ){  write.xlsx2(rawdata[rawdata[,6]==unique(rawdata[,6])[n],c(1:8,15,19,21,22,25,29,30:38)],                                                                           "D:/Program Files (x86)/data/bj_err/北京700.xlsx",sheetName = unique(rawdata[,6])[n],                 row.names = FALSE,append = TRUE)    #  gc()  # *** 记得加这句 }

江苏省的地级市:

[1] "扬州市"   "无锡市"   "盐城市"   "泰州市"   "徐州市"   "南京市"   "镇江市"   "宿迁市"   "淮安市"   "连云港市"
[11] "苏州市"   "常州市"   "南通市"  


效果如图所示:



更多信息可以参考:

In R: How do i solve “Out of memory” error in POS tagger?

How to fix OutOfMemoryError (Java): GC overhead limit exceeded in r? [duplicate]

阅读全文
0 0