我想通过for循环获取google趋势数据。但是,一个错误阻止了我。在搜索其他堆栈问题后,我仍然无法使其工作。有问题的循环:For loop跳过错误
a2p = for (i in dfurlnames$names1)
{
x<- paste(i)
gtrends_function3(x)
}
在我的for循环中,我得到以下错误:
Error : res$status_code == 200 is not TRUE
我用下面的包和功能:
获取新gtrendsR; devtools :: install_github( 'PMassicotte/gtrendsR')
library(gtrendsR)
gtrends_function3 <- function(x)
{
trend1 = gtrends(c(x), geo = c(""), time = "2014-01-05 2014-10-04")
trend_df1 = ldply(trend1)
return(as.numeric(trend_df1$hits))
}
列表:
dfurlnames$names1 = Ang babaeng humayo, The Bad Batch, Une vie, La La Land,
The Light Between Oceans, El ciudadano ilustre, Spira Mirabilis, La región
salvaje, Nocturnal Animals
这里没有足够的信息来真正知道某些事情。你可以通过手动设置'i < - dfurlnames $ names1 [1]'(迭代'dfurlnames'中的每一个),运行'gtrends(i,...)'(使用你的opts)来查看哪些是代码造成问题。顺便说一句:你在这里使用'paste'和'c'是不必要的,什么也不做。 – r2evans
错误表明HTTP请求由于某种原因失败。可能是你的名字存在一些问题。 – neilfws
当R' for'-loop出现错误时,迭代器计数器的值保留在全局环境中,所以你应该在控制台提示符处输入'i',它应该告诉你哪个'dfurlnames $ names1 '导致了这个问题。 (该“列表”看起来不像人们期望从R得到的任何输出。) –