0

我正在使用 R 包 gtrendsR 收集 Google 趋势数据。我正在提取两个日期之间美国每个州的“政治”搜索数据。这是代码。

politics1 <- gtrends(query = "politics", geo = c("AL", "AK", "AZ", "AR", "CA"), start_date = "2015-08-01", end_date = "2015-10-01")

问题是 gtrendsR 不允许一次在“地理”中超过 5 个位置(状态)。但是,当然,我需要为所有 50 个州执行上述操作。如何创建循环(或类似的东西),以便我可以轻松地在所有状态上运行此代码,一次 5 个片段,然后将所有这些单独的对象(politics1、politics2、political3 等)组合成一个数据框?任何想法表示赞赏,谢谢!

4

1 回答 1

0

尚未对此进行测试,因为我没有设置身份验证,但这将遍历states向量中的每个状态并将结果附加到一个名为的数据框,该数据框df以空开头:

states <- c("AL", "AK", "AZ", "AR", "CA")

df <- data.frame()
for (i in 1:length(states)){
      try(rbind(df, gtrends(query = "politics", geo = states[i], start_date = "2015-08-01", end_date = "2015-10-01")), silent = TRUE)
    }

可以更聪明,一次做 5 次,但对此我怀疑它是否重要。您需要做的就是将状态添加到states.

于 2016-12-09T17:14:02.440 回答