r - 无法使用 tidyverse 和 readxl 从 Web 下载 excel 文件
问题描述
我正在学习 coursera 获取和清理数据 R,作业。
我必须从网上下载excel文件。只读特定的行和列并将其存储在数据框中。然后运行一些计算。
我无法下载excel文件。它显示已下载,但它没有任何内容。我关注了这个网站:
https://github.com/tidyverse/readxl
https://readxl.tidyverse.org/articles/sheet-geometry.html
> library(tidyverse)
> library(readxl)
>download.file(url="https://d396qusza40orc.cloudfront.net/getdata%2Fdata%2FDATA.gov_NGAP.xlsx",
destfile="./tidydata/week1q3.xlsx")
>list.files("./tidydata")
#I see the file created as week1q3.xlsx 16kb
#have to read rows 18:23 and columns 7:15.
#In a rectangle on a spreadsheet G18:O23
>dat<-read_excel("./tidydata/week1q3.xlsx", range="G18:O23")
收到错误:错误:评估错误:unzGetCurrentFileInfo 中的 zipfile 错误 -103
上面的逻辑我无法到达任何地方。下载的包 tidyverse 和 readxl 无助于从 url 下载 excel 文件:“https://d396qusza40orc.cloudfront.net/getdata%2Fdata%2FDATA.gov_NGAP.xlsx”
此外,如何将电子表格的特定行和列读入 Dataframe 将 Range="G18:O23" 工作?
需要注意的是:公共网站是“https”,而在没有 R 的情况下下载的 excel 是“受保护”工作表。我有一个以“3”结尾的excel文件名。不确定这些是否导致问题。
TIA
我也尝试过下面的代码,但它需要 rjava 包。
row <- 18:23
col <- 7:15
dat <- read.xl("./tidydata/week1q3.xlsx", sheetIndex = 1, colIndex = col, rowIndex = row, header = TRUE)
解决方案
推荐阅读
- python - Python:向字典中的现有值添加重要值
- android - Logcat 不只显示错误
- laravel - Laravel Envoy 设置任务未成功完成
- mysql - 将 Sql 数据导出到 .csv 并根据查询为每个表生成单独的 .csv 文件
- java - 未处理的异常,而我清楚地处理 Java 中的异常
- javascript - jQuery这个选择器在函数中不起作用
- vb.net - 如何在不使用 sleep 命令的情况下在 VB 中发出等待命令?
- hive - Hive 如何选择除一列之外的所有列?
- javascript - ES6 中的方法原型
- c# - 在 C# 中使用 SMIME 对文件进行签名