我的函数read.table有问题。我想从URL中读取一个表,并将其作为数据帧保存在R中。网址是: https://datanalytics.com/uploads/datos_treemap.txt
我写了这段代码:
library(RCurl)
a <- getURL('https://datanalytics.com/uploads/datos_treemap.txt')
b = read.table(a, sep="\t ", header = TRUE, nrows=3)
download.file("https://datanalytics.com/uploads/datos_treemap.txt","/mnt/M/Ana/R/datos_treemap.txt",method = c("wget"))
但是我无法将数据保存为数据帧,并导致以下错误:
Error in file(file, "rt") : cannot open the connection
In addition: Warning message:
In file(file, "rt") : cannot open file...
No such file or directory
我还尝试将文档下载为txt,并将其保存在mi PC中。但是生成txt导致向量而不是表(所有结果都在一个单行中)。我写的代码是:
download.file("https://datanalytics.com/uploads/datos_treemap.txt","/mnt/M/Ana/R/datos_treemap.txt",method = c("wget"))
有谁知道我做错了什么?提前谢谢。
答案 0 :(得分:1)
我们试试这个
library(RCurl)
a <- getURL('https://datanalytics.com/uploads/datos_treemap.txt')
b <- read.table(text=a, header = TRUE)
希望这有帮助!
答案 1 :(得分:1)
这是使用rvest
代替RCurl
的另一种解决方案。我不想判断哪个包是&#34;更好&#34;,只是想显示一个额外的选项,虽然,在你的简单情况下rvest
似乎更冗长,你需要SelectorGadget来识别所需的节点(如果我错了,请任何人纠正我,并且可以缩短代码。)
library(rvest)
table <- read_html("https://datanalytics.com/uploads/datos_treemap.txt") %>%
html_text("p") %>%
{ read.table(text = ., header = T) }