从Google获取谷歌趋势利息的州名

时间:2018-06-06 13:48:58

标签: r google-trends gtrendsr

假设您查询以下内容:

$interval(function () {
       let startDate = new Date();
       $scope.test = Math.ceil(Math.abs(((startDate.getTime()) - (endDate.getTime())))/oneMinute)+" Minutes "+Math.ceil(Math.abs(((startDate.getTime()) - (endDate.getTime())))/oneSecond)+" s";
        console.log($scope.test);
      },1000);

这将返回美国各城市中“google”一词的搜索次数。但是,它不提供有关每个城市所属州的任何信息。

我尝试将此数据集与其他几个数据集合并,包括城市和州名称。鉴于许多州都存在相同的城市名称,我不清楚如何识别哪个城市是Google趋势提供的数据。

我在下面提供了更详细的MWE。

gtrends("google", geo="US")$interest_by_city

这会产生以下问题:

library(gtrendsR)
library(USAboundariesData) 

data1 <- gtrends("google", geo= "US")$interest_by_city
data1$city <- data1$location
data2 <- us_cities(map_date = NULL)
data3 <- merge(data1, data2, by="city")

让人很难知道哪些“亚历山大”谷歌趋势提供了数据。

如何识别每个城市的状态的任何提示都将非常感激。

1 个答案:

答案 0 :(得分:1)

解决此问题的一种方法是收集每个州的城市,然后只收集rbind相应的数据框。你可以先制作一个像这样的州代码矢量

states <- paste0("US-",state.abb)

然后我只使用purrr作为其地图并减少了创建单个框架的功能

    data <- purrr::reduce(purrr::map(states, function(x){
      cities = gtrends("google", geo = x)$interest_by_city
    }),
    rbind)