我不明白警告信息:
警告讯息: 在download.file(url,temp,quiet = TRUE,mode =“wb”)中: 下载长度2533!=报告长度2533
如果数字不同,我可以理解。重现的代码:
url <- "http://www.waterqualitydata.us/Result/search?siteid=USGS-01594440&pCode=01075&countrycode=US&mimeType=tsv&zip=yes"
temp <- tempfile()
download.file(url,temp, quiet=TRUE, mode='wb')
doc <- unzip(temp)
unlink(temp)
retval <- read.delim(doc , header = TRUE, quote="\"",
dec=".", sep='\t',
fill = TRUE)
我可以抑制警告,但我想确保我也没有做错任何事。谢谢!
编辑:添加read.delim部分以获取数据帧。我的平台是x86_64-w64-mingw32 / x64(64位),R版本3.1.2(2014-10-31)。
答案 0 :(得分:1)
我也在平台:x86_64-w64-mingw32 / x64(64位),在R 3.1.3下没有这个问题。我得到retval返回65个62个变量。
user3915170,重申其他人上面所说的话。
首先尝试从南瓜头盔升级R version ,如@Stedy建议的那样。
如果仍然存在问题,请告诉我们。
检查sep
上的引号。我注意到你把它们作为单身而非双重。 (它对你有用,就像你拥有它们一样,但可能是R3.1.2上的一个问题)
retval <- read.delim(doc, header = TRUE, quote="\"",
dec = ".", sep = "\t",
fill = TRUE)
read.delim
只是read.table
的特殊情况,设置默认值 - 从help&#34; default(s)到分隔符的TAB字符。&#34;因此,此sep
设置是不必要的,可能是美中不足的。所以在没有sep操作符的情况下也尝试它,看看你是否收到警告。
在Stack Overflow之前出现了类似的东西,但是更宽的不匹配 - 只返回200字节。
您正在使用已修复https://stackoverflow.com/a/13803331/4606130的mode='wb'
。不理解类型是Konrad所建议的,其评论在评论列表中较低。
但issue 16761056还有其他人建议检查网络连接,或者download.file函数中存在问题。您是否尝试过从其他位置运行代码?所有的长镜头,但至少你并不孤单这些警告信息!
祝你好运,希望升级解决这个问题!
中号