如何在R中下载.xlsx文件并将数据加载到数据帧中?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在R中下载.xlsx文件并将数据加载到数据帧中?相关的知识,希望对你有一定的参考价值。
我正在尝试从.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)
我已尝试过其他建议:Read Excel file into R with XLConnect package from URL
答案
您应该在下载文件时使用wb
- 二进制模式,这不是纯文本:
download.file(url = "http://www.eia.gov/petroleum/drilling/xls/dpr-data.xlsx", destfile = tmp, mode="wb")
这将解决问题。
另一答案
我参加派对的时间已经很晚了,但是我花了很多时间坚持这个同样的错误,这对我来说不起作用。如果您只是尝试下载文件以便使用read_xlsx
从磁盘加载它,那么更好的解决方案是完全跳过磁盘步骤:
# install.packages(rio)
library(rio)
data = rio::import(url)
干杯
以上是关于如何在R中下载.xlsx文件并将数据加载到数据帧中?的主要内容,如果未能解决你的问题,请参考以下文章