从业务对象读取r中的xls文件

时间:2018-10-17 15:10:27

标签: r excel xls readxl

我已经从业务对象下载了xls文件,并想在R中读取它。 我尝试了几种选择,最简单的选择是:

library("readxl")
txt=read_excel("file.xls", sheet = 2)

问题在于它给了我空洞的小标题。但是,如果我打开xls文件,则绝对不执行任何操作,保存并再试一次,它确实起作用! 由于我需要建立数据管道,因此我希望它能立即运行,而无需这种怪异的解决方法。 知道是什么问题吗?我自己的想法涉及某种安全性,只读,管理员权限类型的属性,但无法弄清楚。

亲切的问候! 皮特

3 个答案:

答案 0 :(得分:0)

由于这些问题,我总是尽量避免导入.xls文件。在可能的情况下,我总是将其导入为.csv文件。但是,根据.xls文件的结构,这并不总是可能的,如果.xls文件中有许多选项卡,则这可能是额外的工作。

如果可能,请将您的.xls导出为.csv文件,然后使用read.table()导入,或通过许多可用软件包(例如data.tabletidyverse使用函数)。

答案 1 :(得分:0)

我不太了解,但这是程序包中的一个错误。您可以转到readxl 1.0.0,它会起作用。

GitHub问题中提到了下降的版本:https://github.com/tidyverse/readxl/issues/474

如何转到所需的版本:https://support.rstudio.com/hc/en-us/articles/219949047-Installing-older-versions-of-packages

答案 2 :(得分:-1)

您可以使用软件包data.table,该软件包提供了一种非常简单快捷的方法,可以使用.csv.xls/.xlsx函数读写fwritefread 。它的包装中已经有一个自动的独立检测器。

您可以找到有关此软件包here的更多信息。