2017-02-03 63 views
0

我无法读取这个XLSX文件,并与片= 2( “数据”) “http://www3.weforum.org/docs/gcr/2015-2016/GCI_Dataset_2006-2015.xlsx阅读网上的xlsx - 表R中

我所做的工作:

library(readxl) 
library(XLConnect) 
library("openxlsx") 

temp = tempfile(fileext = ".xlsx") 
dataURL <- "http://www3.weforum.org/docs/gcr/2015-2016/GCI_Dataset_2006-2015.xlsx" 
download.file(dataURL, destfile=temp, mode='wb') 
file<- read.xlsx(temp, sheet= 2) 

我得到以下内容:

Error in .jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl, : java.lang.OutOfMemoryError: GC overhead limit exceeded 

有人可以帮忙吗? thnx :)

+0

我从来没有运气过任何R Excel软件包。根据您的要求和情况,您最好找到另一种解决方案。一种选择是,如果您在装有Excel的Windows计算机上,则将该任务委派给打开Excel文件并将其另存为CSV的JScript脚本。然后将CSV读入R. – xarxziux

+0

Okey。我如何委派一个jscript并将第二张表保存到csv? – eszter

+0

这取决于您的具体设置和要求。在我的情况下,我编写了一个独立的JScript脚本,将所有Excel文件保存到指定的目录中,然后用R打开,但这可能不适合您的情况。我记得在GitHub上看到一个创建JScript文件的R脚本,运行该脚本并加载该脚本创建的CSV文件,但我无法再找到它。 :( – xarxziux

回答

0

我似乎没有问题,使用readxl这个特定的文件。 使用相同的软件包时,我遇到了由我无法控制的其他系统创建的特定电子表格的问题(开发人员知道这一点)。

如果我运行此:

temp = tempfile(fileext = ".xlsx") 
dataURL <- "http://www3.weforum.org/docs/gcr/2015-2016/GCI_Dataset_2006-2015.xlsx" 
download.file(dataURL, destfile=temp, mode='wb') 

test <- readxl::read_excel(temp, sheet =2) 
head(test) 

我得到以下输出:

# A tibble: 6 × 159 
             `The Global Competitiveness Index Historical Dataset © 2005-2015 World Economic Forum ` 
                                 <chr> 
1 IMPORTANT The storage on any data retrieval system and the commercial use of the present data set, or portions of it, is st 
2                             Placement 
3                             Placement 
4                               1 
5                               1 
6                               1 
# ... with 158 more variables: X__1 <chr>, X__2 <chr>, X__3 <chr>, X__4 <chr>, X__5 <chr>, X__6 <chr>, X__7 <chr>, 
# X__8 <chr>, X__9 <chr>, X__10 <chr>, X__11 <chr>, X__12 <chr>, X__13 <chr>, X__14 <chr>, X__15 <chr>, X__16 <chr>, 
# X__17 <chr>, X__18 <chr>, X__19 <chr>, X__20 <chr>, X__21 <chr>, X__22 <chr>, X__23 <chr>, X__24 <chr>, X__25 <chr>, 
# X__26 <chr>, X__27 <chr>, X__28 <chr>, X__29 <chr>, X__30 <chr>, X__31 <chr>, X__32 <chr>, X__33 <chr>, X__34 <chr>, 
# X__35 <chr>, X__36 <chr>, X__37 <chr>, X__38 <chr>, X__39 <chr>, X__40 <chr>, X__41 <chr>, X__42 <chr>, X__43 <chr>, 
# X__44 <chr>, X__45 <chr>, X__46 <chr>, X__47 <chr>, X__48 <chr>, X__49 <chr>, X__50 <chr>, X__51 <chr>, X__52 <chr>, 
# X__53 <chr>, X__54 <chr>, X__55 <chr>, X__56 <chr>, X__57 <chr>, X__58 <chr>, X__59 <chr>, X__60 <chr>, X__61 <chr>, 
# X__62 <chr>, X__63 <chr>, X__64 <chr>, X__65 <chr>, X__66 <chr>, X__67 <chr>, X__68 <chr>, X__69 <chr>, X__70 <chr>, 
# X__71 <chr>, X__72 <chr>, X__73 <chr>, X__74 <chr>, X__75 <chr>, X__76 <chr>, X__77 <chr>, X__78 <chr>, X__79 <chr>, 
# X__80 <chr>, X__81 <chr>, X__82 <chr>, X__83 <chr>, X__84 <chr>, X__85 <chr>, X__86 <chr>, X__87 <chr>, X__88 <chr>, 
# X__89 <chr>, X__90 <chr>, X__91 <chr>, X__92 <chr>, X__93 <chr>, X__94 <chr>, X__95 <chr>, X__96 <chr>, X__97 <chr>, 
# X__98 <chr>, X__99 <chr>, X__100 <chr>, ... 

注:我使用的是最新版本从GitHub 0.1.1.9000,而不是CRAN 0.1.1。

+0

确实!感谢您的时间! – eszter