【发布时间】:2016-05-06 17:37:10
【问题描述】:
背景:
我可以使用read.csv() 函数从互联网上成功提取特定数据集(如下面的代码所示)。但是,当我尝试使用 sqldf 包来加速使用 read.csv.sql() 的过程时,它会产生错误。我尝试了各种解决方案,但似乎无法解决这个问题。
我可以使用以下代码通过read.csv()成功提取数据并创建我想要的数据框:
ce_data <- read.csv("http://download.bls.gov/pub/time.series/cx/cx.data.1.AllData",
fill=TRUE, header=TRUE, sep="")
为了在我的机器上测试sqldf 的功能,我成功地测试了read.csv.sql(),方法是使用以下代码将数据作为 1 个变量而不是所需的 5 个变量读入:
library(sqldf)
ce_data_sql1 <- read.csv.sql("http://download.bls.gov/pub/time.series/cx/cx.data.1.AllData",
sql = "select * from file")
为了产生我使用read.csv() 但利用read.csv.sql() 的速度得到的结果,我尝试了以下代码:
ce_data_sql2 <- read.csv.sql("http://download.bls.gov/pub/time.series/cx/cx.data.1.AllData",
fill=TRUE, header=TRUE, sep="", sql = "select * from file")
不幸的是,它产生了这个错误:
尝试网址 'http://download.bls.gov/pub/time.series/cx/cx.data.1.AllData' 内容 type 'text/plain' 长度 24846571 字节 (23.7 MB) 已下载 23.7 MB
sqldf 中的错误(sql,envir = p,file.format = file.format,dbname = dbname, : 未使用的参数 (fill = TRUE)
我使用sqldf 文档尝试了各种方法来解决错误,但均未成功。
问题:
有没有一种解决方案,我可以使用read.csv.sql() 在此表中读取所需的 5 个变量?
【问题讨论】: