问题标签 [r-xlsx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
5280 浏览

r - read.xlsx 需要很长时间和大量内存

我正在尝试将 .xlsx 文件加载到具有一张纸且大小约为 31 MB 的 R 中。

我运行以下

我什么也得不到。我的系统监视器程序显示分配的内存慢慢填满,然后一直保持满。我没有让它运行几个小时,但十分钟应该足够了,尤其是当我可以刚刚加载到 Numbers 中(我在 Mavericks 上)并在那段时间将其保存为 CSV 时。

是的,我有超过 6 GB 的内存。2 GB 似乎不够,并产生错误:

但是,我确实犯了一个错误,就是让rJava包安装它自己的 Java 版本。事后我下载了 JDK 8,但我不知道如何检查它是否正在使用。

那么为什么需要 6 GB 的 RAM 才能(无法)加载 31 MB 的文件呢?我能以某种方式解决这个问题吗?

0 投票
3 回答
27767 浏览

r - 如果列中的非日期,read.xlsx 读取日期错误

xlsx包裹正在错误地读取日期。我在这里阅读了所有最相似的 Q 并在互联网上进行了侦察,但如果列中存在非日期数据,我无法找到原点发生变化的这种特殊行为。

我有一个很小的 ​​Excel 电子表格,您可以从 Dropbox 获取:

https://www.dropbox.com/s/872q9mzb5uzukws/test.xlsx

它有三行,两列。第一个是日期,第二个是数字。第三行在日期列中有“总计”。

如果我在前两行中读取read.xlsx并告诉它第一列是日期,那么这是有效的:

这些确实是电子表格中的日期。如果我尝试阅读所有三行,则会出现问题:

如果我尝试以整数形式读入,我会得到不同的整数:

第一个整数使用as.Date(s1$X1,origin="1970-01-01")(Unix epoch) 正确转换,第二个整数使用as.Date(s2$X1, origin="1899-12-30")(Excel epoch) 正确转换。如果我使用 1970 年转换第二批,我会得到 2084 年的日期。

所以:我做错了吗?以整数形式读取是最好的选择,如果有任何 NA,则使用 E​​xcel 纪元进行转换,否则使用 Unix 纪元?或者它是xlsx包中的一个错误?

xlsx 版本是版本:0.5.1

0 投票
2 回答
4153 浏览

r - 无法从 R 读取 .xls

  • 文件:它是一个大约 100 行 7 列的文件。XLS 扩展 (MS Excel 97-2003)。
  • 问题:无法通过 Rread.xlsx或读取文件read.xlsx2
  • 用于尝试读取文件的代码:

    /li>
  • 错误提示:

错误.jcall ("RJavaTools","Ljava/lang/object;","invokeMethod",cl,:java.lang.IllegalArgumentException:您的 InputStream 既不是 OLE2 流,也不是 OOXML 流。

PD:为了记录,我确实尝试过读取它read.csv并且它确实读取了它,但是由于它是一个 Excel 文件并且它没有用逗号或点分隔,R 读取它就好像所有内容都在 1 列中一样。也许任何人都可以建议一种方法来阅读它read.csv

0 投票
2 回答
23868 浏览

java - 使用 write.xlsx 将现有工作表替换为 R 包 xlsx

我正在使用包xlsx版本:0.5.7 日期:2014-08-01。在 R 版本 3.0.1 (2013-05-16) 中——“Good Sport”平台:i386-w64-mingw32/i386(32 位)。

我有一个至少有 2 张纸的 xlsx 文件(比如 A 和 B)。我需要从 A 读取数据,编辑它们并将它们保存在 B 中。这必须定期完成。

我能够从 A 读取数据read.xlsx。编辑数据框后,我想将其保存在同一个 xlsx 文件中的现有工作表 B 中。

我试试这条线

但它给了我这个错误:

我需要多次更换现有的工作表。我怎样才能做到这一点?

0 投票
1 回答
390 浏览

r - read.xlsx 函数正在将我的变量之一读取为“因子”而不是“POSIXct”

我有一个xlsx包含许多变量(列)的文件。在 .xlsx 文件中以日期格式 (MM/DD YYYY HH:MM A/P) 列出了很多。当我使用 将此文件加载到 R 中read.xlsx时,所有具有日期格式的变量都加载为POSIXct除了 ONE,它始终作为factor变量加载。关于为什么会这样的任何想法?

作为参考,我正在使用类似于以下代码的代码加载数据:

0 投票
1 回答
4984 浏览

java - 使用 xlsx 在 R 中打开 Excel 文件时出错

我最近安装了带有 packages 的 R 3.2.0(Windows 64 位)xlsx,这取决于rJavaxlsxjars. 机器上安装了 Java 1.8.0_11 64 位。

当我尝试使用该read.xlsx()功能时,我收到以下有关 zipfile 的错误:

错误.jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl, :java.util.zip.ZipException:无效距离太远

我当然不知道为什么它会尝试解压缩任何东西,除非它是 R 软件包附带的 jar 之一。(当我手动解压时,R 包的 zip 文件解压缩得很好。)我已经重新安装了两次,但如果那里发生损坏,我还是无济于事。

我觉得某处存在配置错误,但我真的很难过。有没有其他人经历过这个?这是软件包安装消息

0 投票
2 回答
3858 浏览

java - read.xlsx() 在 R 中引发错误

我已经安装xlsx和依赖包。我还下载了安装依赖 rjava 包所需的 64 位 java。现在,当我尝试使用时read.xlsx,出现以下错误。安装64位java后,可以成功加载包但是运行时报错read.xlsx

0 投票
4 回答
2926 浏览

r - 在 Rstudio 中读取 xlsx 文件

我正在学习 Cousera 的 R 编程课程,在练习如何使用 read.xlsx 读取 xlsx 文件时,遇到以下错误消息:

错误.jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl, :java.util.zip.ZipException:超额订阅文字/长度树

R 版本 3.2.1,R studio 版本 3.2.1,平台 windows7 64bit。任何人都可以提示此消息的含义以及如何解决它吗?

谢谢,格子猫

0 投票
1 回答
13894 浏览

r - read.xlsx'loadWorkbook(文件)中的错误:找不到文件'R

我正在尝试read.xlsx使用该xlsx包将许多 Excel 文件读入 R,但是当我这样做时,我收到以下错误:

错误loadWorkbook(file):找不到 id100.xlsx

首先我列出目录中的文件:

然后我用read.xlsx它们全部阅读:

我检查了该文件是否甚至在列表中,它是:

在今天之前,我已经多次使用过这段代码,但由于某种原因它无法正常工作。我不断收到这个错误。有没有人有什么建议?

谢谢!

0 投票
1 回答
278 浏览

java - R 32 位中的 Java 堆空间错误

尝试使用read.xlsxpackage 中的函数时,我在 R 中遇到错误xlsx。错误说“

错误.jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl,:java.lang.OutOfMemoryError:Java 堆空间

我试过使用openxlsx包,它工作正常,但我只想使用xlsx包。从 R 会话中卸载所有包后,我还尝试设置 java 参数以增加堆空间,但它不起作用。我在 64 位系统上使用 32 位 R、32 位 Java,并在我的环境变量中声明了所有可能的路径。

非常感谢您的帮助!