use*_*746 5 r import-from-excel xlconnect
我正在尝试从中下载.xlsx文件eia并收到以下错误.
错误是: "Error: ZipException (Java): invalid entry size (expected 2385 but got 2390 bytes)"
我试过以下代码:
library(XLConnect)
tmp = tempfile(fileext = ".xlsx")
download.file(url = "http://www.eia.gov/petroleum/drilling/xls/dpr-data.xlsx", destfile = tmp)
readWorksheetFromFile(file = tmp, sheet = "Eagle Ford Region", header = FALSE, startRow = 9, endRow = 151)
Run Code Online (Sandbox Code Playgroud)
我已经尝试了其他建议: 使用URL中的XLConnect包将Excel文件读入R中
m0n*_*awk 11
您应该wb在下载文件时使用- 二进制模式,这不是纯文本:
download.file(url = "http://www.eia.gov/petroleum/drilling/xls/dpr-data.xlsx", destfile = tmp, mode="wb")
Run Code Online (Sandbox Code Playgroud)
这将解决问题.
小智 8
我真的迟到了,但我花了很多时间陷入同样的错误,但这对我不起作用。如果您只是尝试下载文件以使用从磁盘加载文件的目的read_xlsx,则更好的解决方案是完全跳过磁盘步骤:
# install.packages(rio)
library(rio)
data = rio::import(url)
Run Code Online (Sandbox Code Playgroud)
干杯