繁体   English   中英

将.XLS文件读入R

[英]Reading .XLS Files into R

我有一个文件扩展名为.xls 的特定文件,但无法将其读入 R。我尝试了多种不同的解决方案,但都失败了。

  1. read_xls()
var1 <- read_xls("dest.xls", sheet = "sheetname")

libxls 错误:无法打开文件

  1. read.xlsx()
var1 <- read.xlsx("dest.xls", sheetName = "sheetname", startRow = 5))

错误 in.jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl, : java.lang.IllegalArgumentException: 你的 InputStream 既不是 OLE2 stream,也不是 OOXML stream

  1. read_excel()
var1<-read_excel("dest.xls", sheet = 1, col_names = TRUE, col_types = NULL, na ="", skip = 0)

libxls 错误:无法打开文件

  1. loadWorkbook()
file <- list.files("dest", pattern = 'xls', full.names = T)

wb <- loadWorkbook(file)

错误:IllegalArgumentException (Java):您的 InputStream 既不是 OLE2 stream,也不是 OOXML stream

  1. odbcConnectExcel()
conn <- odbcConnectExcel("dest.xls")

odbcConnectExcel 仅适用于 32 位 Windows

不太确定是什么问题。 奇怪的是,当我将文件打开到 excel 时,我收到以下错误 - 这也可能是一个贡献者。

““file.xls”的文件格式和扩展名不匹配。该文件可能已损坏或不安全。除非您信任其来源,否则不要打开它。您是否仍要打开它?- 是

单击“是”后,我可以访问数据。

非常奇怪,任何帮助都会很棒 - 谢谢大家!

您可以使用以下 function 使用 RDCOMClient package 将 XLS 文件转换为 XLSX:

library(RDCOMClient)
convert_XLS_File_To_XLSX <- function(path_XLS_File, path_XLSX_File)
{
  xlApp <- COMCreate("Excel.Application")
  xlApp[['Visible']] <- FALSE
  xlWbk <- xlApp$Workbooks()$Open(path_XLS_File)
  xlWbk$SaveAs(path_XLSX_File, 51)
  xlWbk$Close()
  xlApp$Quit()
}

然后,您可以使用例如 R package openxlsx 读取 xlsx 文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM